⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 section5.c

📁 msp430单片机的应用实例程序
💻 C
字号:
#include <MSP430X14X.h>
#include "I2C.h"
#include "Display.h"
char Time_Flag;
char pTime[7];
void main(void)
{
    int i;
    char chrTemp[7];
    char chrHi;
    char chrLow;
    char pBuf[7];
    
    WDTCTL = WDTPW + WDTHOLD;   // 关闭看门狗
    
    _DINT();			// 关闭中断
    //初始化
    Init_CLK();
    Init_TimerB();
    Init_DispPort();
    I2C_Initial();
    
    //初始化变量
    Time_Flag = 0;
    _EINT(); 	                // 打开中断
    ////////////////////////////////
    // 设置为24小时制
    Set24TimeMode();	   
    pTime[0] = 4; 
    pTime[1] = 1; 
    pTime[2] = 1; 
    pTime[3] = 1; 
    pTime[4] = 1; 
    pTime[5] = 1; 
    pTime[6] = 1; 
    // 设置时间
    I2C_Write(pTime);   
    // 循环处理
    for(;;)
    {
    	if(Time_Flag == 1)
    	{
    	    Time_Flag = 0;//清楚标志
    	    
    	    for(i = 0;i < 7;i++)
    	        chrTemp[i] = pTime[i];
    	    
    	    // 星期
    	    pBuf[0] = chrTemp[3];
    	    
    	    // 小时
    	    chrHi = (char)((chrTemp[4] / 16) & 0x0f);
    	    chrLow = (char)(chrTemp[4] & 0x0f);
    	    pBuf[1] = chrHi;
    	    pBuf[2] = chrLow;
    	    
    	    // 分
    	    chrHi = (char)((chrTemp[5] / 16) & 0x0f);
    	    chrLow = (char)(chrTemp[5] & 0x0f);
    	    pBuf[3] = chrHi;
    	    pBuf[4] = chrLow;
    	    
    	    // 秒
    	    chrHi = (char)((chrTemp[6] / 16) & 0x0f);
    	    chrLow = (char)(chrTemp[6] & 0x0f);
    	    pBuf[5] = chrHi;
    	    pBuf[6] = chrLow;
    	    // 显示
    	    Display(pBuf);
    	}
    }
    return;
}
interrupt [TIMERB0_VECTOR] void TimerB_ISR(void)
{
    I2C_Read(pTime);
    Time_Flag = 1;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -