<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > MSP430F449單片機(jī)RTC時(shí)鐘C語(yǔ)言程序(帶鬧鐘)

          MSP430F449單片機(jī)RTC時(shí)鐘C語(yǔ)言程序(帶鬧鐘)

          作者: 時(shí)間:2016-11-27 來(lái)源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/201611/322546.htm

          if((key_code==0x04)&&(function_flag==1))//減法

          {

          clock_flag=2;//清除鬧鐘標(biāo)志位

          if(function_ping2==1)

          {

          sec--;//秒減減

          if(sec==0xff)//秒是否等于0

          sec=59;//秒等于60

          }

          if(function_ping2==2)

          {

          min--;//分減減

          if(min==0xff)//分是否等于0

          min=59;//分等于60

          }

          if(function_ping2==3)

          {

          hour--;//小時(shí)減減

          if(hour==0xff)//小時(shí)是否等于0

          hour=23;//小時(shí)等于24

          }

          if(function_ping1==1)

          {

          day--;//天減減

          if(day==0)//天是否等于0

          day=tian;//天等于30/31/28/29

          }

          if(function_ping1==2)

          {

          month--;//月減減

          if(month==0)//月是否等于0

          month=12;//月等于13

          tian=tianshu[month];

          if(day>tian)

          tian_flag=1;

          else

          tian_flag=0;

          }

          if(function_ping1==3)

          {

          year--;//年減減

          if(year==1999)//年是否等于1999

          year=2100;//年等于2100

          if((year%4!=0)||(year0!=0)||(year@0==0))

          {

          tian=tianshu[month];

          if(day>tian)

          {

          tian_flag=1;

          }

          else

          tian_flag=0;

          }

          }

          if(function_ping3==1)

          {

          nao_sec--;//鬧鐘秒減減

          if(nao_sec==0xff)//鬧鐘秒是否等于0

          nao_sec=59;//鬧鐘秒等于60

          }

          if(function_ping3==2)

          {

          nao_min--;//鬧鐘分減減

          if(nao_min==0xff)//鬧鐘分是否等于0

          nao_min=59;//鬧鐘分等于60

          }

          if(function_ping3==3)

          {

          nao_hour--;//鬧鐘小時(shí)減減

          if(nao_hour==0xff)//鬧鐘小時(shí)是否等于0

          nao_hour=23;//鬧鐘小時(shí)等于24

          }

          }

          if((key_code==0x02)&&(function_flag==0))//沒(méi)有功能鍵按下時(shí)

          {

          clock_flag=2;//清除鬧鐘標(biāo)志位

          flag=1;//換屏標(biāo)志位被按下

          if(num_flag==1)//換屏位1

          ping_flag=1;

          if(num_flag==2)//換屏位2

          ping_flag=2;

          if(num_flag==3)//換屏位3

          ping_flag=3;

          }

          if((key_code==0x04)&&(function_flag==0))

          {

          clock_flag=2;//清除鬧鐘標(biāo)志位

          }

          key_code=0;//鍵值清零

          }

          voidleap_year(void)

          {

          tian=tianshu[month];//讀出每月天數(shù)表

          if(daytian)

          tian_flag=0;

          if(month==2)

          {

          if((year%4==0)&&(year0!=0)||(year@0==0))//判斷是否是閏年

          {

          tian=29;//閏年2月天數(shù)修正

          }

          else

          {

          tian=28;//閏年2月天數(shù)修正

          }

          }

          }

          voidrtc()

          {

          if(++sec60)//秒加一

          return;

          sec=0;

          if(++min60)//分加一

          return;

          min=0;

          if(++hour24)//小時(shí)加一

          return;

          hour=0;

          if(++day=tian)//天數(shù)加一

          return;

          day=1;//月加一

          if(++month=12)

          return;

          month=1;

          if(++year2100)//年加一

          return;

          year=2000;

          }

          voidrtc_show(void)

          {

          if((function_ping1!=0)&&(function_ping2==0)&&(function_ping3==0))

          {

          change_ping=0;//第一屏

          }

          elseif((function_ping1==0)&&(function_ping2!=0)&&(function_ping3==0))

          {

          change_ping=1;//第二屏

          }

          elseif((function_ping1==0)&&(function_ping2==0)&&(function_ping3!=0))

          {

          change_ping=2;//第三屏

          }

          if(change_ping==1)

          {

          if(function_ping2==0)//正常顯示

          {

          LCDMEM[0]=digit[sec];

          LCDMEM[1]=digit[sec/10];

          LCDMEM[2]=digit[min];

          LCDMEM[3]=digit[min/10];

          LCDMEM[4]=digit[hour];

          LCDMEM[5]=digit[hour/10];

          }

          if(function_ping2==1)//秒閃爍

          {

          if(twinkle_num==0)//閃爍標(biāo)志位

          {

          LCDMEM[0]=digit[sec];

          LCDMEM[1]=digit[sec/10];

          }

          else

          {

          LCDMEM[0]=0;

          LCDMEM[1]=0;

          }

          LCDMEM[2]=digit[min];

          LCDMEM[3]=digit[min/10];

          LCDMEM[4]=digit[hour];

          LCDMEM[5]=digit[hour/10];

          }

          if(function_ping2==2)//分閃爍

          {

          if(twinkle_num==0)

          {

          LCDMEM[2]=digit[min];

          LCDMEM[3]=digit[min/10];

          }

          else

          {

          LCDMEM[2]=0;

          LCDMEM[3]=0;

          }

          LCDMEM[0]=digit[sec];

          LCDMEM[1]=digit[sec/10];

          LCDMEM[4]=digit[hour];

          LCDMEM[5]=digit[hour/10];

          }

          if(function_ping2==3)//小時(shí)閃爍

          {

          if(twinkle_num==0)

          {

          LCDMEM[4]=digit[hour];

          LCDMEM[5]=digit[hour/10];

          }

          else

          {

          LCDMEM[4]=0;

          LCDMEM[5]=0;

          }

          LCDMEM[0]=digit[sec];

          LCDMEM[1]=digit[sec/10];

          LCDMEM[2]=digit[min];

          LCDMEM[3]=digit[min/10];

          }

          }

          if(change_ping==0)

          {

          if(function_ping1==0)//正常顯示

          {

          LCDMEM[0]=digit[(day)];

          LCDMEM[1]=digit[(day)/10];

          LCDMEM[2]=digit[(month)];

          LCDMEM[3]=digit[(month)/10];

          LCDMEM[4]=digit[year];

          LCDMEM[5]=digit[(year/10)];

          }

          if(function_ping1==1)//天閃爍

          {

          if(twinkle_num==0)

          {

          LCDMEM[0]=digit[day];

          LCDMEM[1]=digit[day/10];

          }

          else

          {

          LCDMEM[0]=0;

          LCDMEM[1]=0;

          }

          LCDMEM[2]=digit[(month)];

          LCDMEM[3]=digit[(month)/10];

          LCDMEM[4]=digit[year];

          LCDMEM[5]=digit[(year/10)];

          }

          if(function_ping1==2)//月閃爍

          {

          if(twinkle_num==0)

          {

          LCDMEM[2]=digit[(month)];

          LCDMEM[3]=digit[(month)/10];

          }

          else

          {

          LCDMEM[2]=0;

          LCDMEM[3]=0;

          }

          LCDMEM[0]=digit[day];

          LCDMEM[1]=digit[day/10];

          LCDMEM[4]=digit[year];

          LCDMEM[5]=digit[(year/10)];

          }

          if(function_ping1==3)//年閃爍

          {

          if(twinkle_num==0)

          {

          LCDMEM[4]=digit[year];

          LCDMEM[5]=digit[(year/10)];

          }

          else

          {

          LCDMEM[4]=0;

          LCDMEM[5]=0;

          }

          LCDMEM[0]=digit[(day)];

          LCDMEM[1]=digit[(day)/10];

          LCDMEM[2]=digit[(month)];

          LCDMEM[3]=digit[(month)/10];

          }

          }



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();