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

📄 main.c

📁 实现电子钟及温度测量
💻 C
字号:
/***********************************************************
程序功能:在12864液晶上显示一屏汉字
-----------------------------------------------------------
测试说明:观察液晶显示
***********************************************************/
#include  "msp430.h"
#include  "BoardConfig.h"
#include  "cry12864.h"
#include  "DS1302.h"
#include  "varyexpense.h"
#include  "DS18B20.h"
#include  "stdio.h"
#include  "qq.h"

//#define  keyin  P1IN&0x0f

uchar keyval= 0x00;
uchar cflag = 0 ;
uchar dN[8];
uchar QQFlag = 0 ;

const uchar hang1[] = {"北京时间:"};

void Show_Temperature(void);
void Disp_Numb(uint temper);
void ShowTime(void);
void Set_Time(void);
/***************************主函数*************************/
void main( void )
{

    WDTCTL = WDTPW + WDTHOLD;    //关狗
    BoardConfig(0xbe);
    
    BCSCTL1 &=~XT2OFF;
    do
    {
        uchar i;
        IFG1 &=~OFIFG;
        for(i=0xff;i>0;i--);
    }
    while((IFG1&OFIFG));
    BCSCTL2 = SELM_2 + SELS;
     //计数时钟选择SMLK=8MHz,1/8分频后为1MHz
    TACTL |= TASSEL_2 + ID_3 ; 
       
    P1IES = 0x0f;
    P1IE = 0x0f;
    P1DIR = BIT4;
    P1OUT =0; 
    
    Ini_Lcd(); //初始化液晶
    Reset_DS1302();
    Clear_GDRAM();  
    _EINT();
   // BurstWrite1302(rdata);
    while(1)
    {   
       if(cflag==0)
       {  
          Disp_HZ(0x82,hang1,5);
          Get_DS1302(rdata);
          ShowTime();
          Show_Temperature(); 
       }
        if(keyval!=0)
        {
          Set_Time();    
        }
     
    } 
}

/*******************************************
函数名称:PORT1_ISR 
功    能:P1端口的中断服务函数
参    数:无
返回值  :无
********************************************/
#pragma vector=PORT1_VECTOR
__interrupt void PORT1_ISR(void)
{
    if(P1IFG&0x0f)
    {
        switch(P1IFG)
        {
             case 0x01:
                  keyval=0x01;
                  P1IFG=0;
              return;
              
             case 0x02:
                  keyval=0x02;
                  P1IFG=0;
              return;

              case 0x04:
                   keyval=0x03;
                   P1IFG=0;
               return;
          
              case 0x08:
                   keyval=0x04;
                   P1IFG=0;
               return;

             default:    
                    P1IFG = 0;
               return;
        }
    }
       
}

⌨️ 快捷键说明

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