基于普中开发板多功能数码显示电子钟

基于普中开发板多功能数码显示电子钟

ID:23895301

大小:52.01 KB

页数:15页

时间:2018-11-11

基于普中开发板多功能数码显示电子钟_第1页
基于普中开发板多功能数码显示电子钟_第2页
基于普中开发板多功能数码显示电子钟_第3页
基于普中开发板多功能数码显示电子钟_第4页
基于普中开发板多功能数码显示电子钟_第5页
资源描述:

《基于普中开发板多功能数码显示电子钟》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、/*此程序是按照普中开发板的电路连接,能显示时间,日期,闹钟,带有设置和闰年补偿*/ #include#defineucharunsignedchar#defineuintunsignedint#defineplayP0sbitLSA=P1^0;sbitLSB=P1^1;sbitLSC=P1^2;sbitled=P2^2;//闹钟检测sbitk1=P2^7;//功能切换 sbitk2=P2^6;//设置加sbitk3=P2^5;// 设置减 sbitk4=P2^4;//设置位选sbitbeet=P1^5;//蜂鸣器输出口uchary;//按键松开ucharkai;//闹

2、钟开启标志ucharshe;//设置标志uchart;//时间计数ucharnum;//功能切换ucharfen;ucharshi;ucharmiao;ucharyue;ucharnian;ucharri;ucharshijian[8];uchar shi1;//闹铃时ucharfen1; //闹铃分unsignedcharcodeshuma[12]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,  //数码管显示数组0到90x7f,0x6f,0x40,0x00};ucharbrunyue[12]={31,28,31,30,31,30,31,31,30

3、,31,30,31};ucharrunyue[12]={31,29,31,30,31,30,31,31,30,31,30,31};voidzhongshe();voidqishe();voidnaoshe();voidshezhi();voiddelay10ms(void) //误差0us{  unsignedchara,b,c;  for(c=1;c>0;c--)    for(b=38;b>0;b--)      for(a=130;a>0;a--);}voidnaozhong(){ uinta,m; if((shi1==shi)&&(fen1==fen)&&(kai%2))  { 

4、for(m=20;m>0;m--)    for(a=10;a>0;a--)  if((k1==0)

5、

6、(k2==0)

7、

8、(k3==0)

9、

10、(k4==0))  {kai=0;break; }   else   beet=~beet;    }}voidplays()  //输出显示{unsignedchari;unsignedintj;for(i=0;i<8;i++){switch(i) //位选,选择点亮的数码管,{case(0):LSA=0;LSB=0;LSC=0;break;//显示第0位case(1):LSA=1;LSB=0;LSC=0;break;//显示第1位case(2):

11、LSA=0;LSB=1;LSC=0;break;//显示第2位case(3):LSA=1;LSB=1;LSC=0;break;//显示第3位case(4):LSA=0;LSB=0;LSC=1;break;//显示第4位case(5):LSA=1;LSB=0;LSC=1;break;//显示第5位case(6):LSA=0;LSB=1;LSC=1;break;//显示第6位case(7):LSA=1;LSB=1;LSC=1;break;//显示第7位} play=shuma[shijian[i]]; if(t>50){ switch(she){   case(3): if((i==0)

12、

13、

14、(i==1))  play=0x00;break;  case(2):  if((i==3)

15、

16、(i==4))  play=0x00;break;  case(1):  if((i==6)

17、

18、(i==7))  play=0x00;break;}   } j=10; //扫描间隔时间设定while(j--);play=0x00;//消隐}} voidnao()//闹钟赋值{ shijian[7]=kai;  shijian[6]=11;  shijian[5]=11;  shijian[4]=fen1%10;  shijian[3]=fen1/10;  shijian[2]=10;  sh

19、ijian[1]=shi1%10;  shijian[0]=shi1/10;}voidrili() //日期赋值{ shijian[7]=ri%10;  shijian[6]=ri/10;  shijian[5]=10;  shijian[4]=yue%10;  shijian[3]=yue/10;  shijian[2]=10;  shijian[1]=nian%10;  shijian[0]=nian/10;}voidzhong

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。