数码管显示时间

数码管显示时间

ID:47518322

大小:15.97 KB

页数:10页

时间:2020-01-12

数码管显示时间_第1页
数码管显示时间_第2页
数码管显示时间_第3页
数码管显示时间_第4页
数码管显示时间_第5页
资源描述:

《数码管显示时间》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、/********************************************************计时器***用到138译码器P2^2P2^3P2^4***数码管接到P0端口***通过按K4可以切换闹铃与时间显示***按K1可以调秒数(调设置时间的秒数,后同),按K2可以调分数,K3可以调小时数*****************************************************/#include#defineuintunsignedint#defineucharunsignedcharsbitLSA=P2^

2、2;sbitLSB=P2^3;sbitLSC=P2^4;sbitBeep=P1^5;sbitK1=P3^1;sbitK2=P3^0;sbitK3=P3^2;sbitK4=P3^3;#defineFirstLSA=0;LSB=0;LSC=0//138译码器位数设置#defineSecondLSA=1;LSB=0;LSC=0#defineThirdLSA=0;LSB=1;LSC=0#defineFourthLSA=1;LSB=1;LSC=0#defineFifthLSA=0;LSB=0;LSC=1#defineSixthLSA=1;LSB=0;LSC=1#defin

3、eSeventhLSA=0;LSB=1;LSC=1#defineEighthLSA=1;LSB=1;LSC=1ucharcodeDIG_CODE[16]={0x03f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的显示码ucharTime=0;ucharmiao1=0,miao2=0,fen1=0,fen2=0,shi1=0,shi2=0;charSetmiao1=-1,Setmiao2=0

4、,Setfen1=0,Setfen2=0,Setshi1=0,Setshi2=0;voidTimerConfiguration();voiddelayms(ucharx);voidTimer();//时间显示voidSetingTime();//时间设置voidClock();//闹铃voidSetingClock();//闹铃时间设置voidSetingClockDisplay();//闹钟设置显示voidDelay(unsignedinti);//蜂鸣器所用延时main(){ucharNum=1;Beep=0;TimerConfiguration();whi

5、le(1){if(K4==0)//通过K4来选择是计时还是设置闹铃{delayms(1);if(K4==0){Num++;while(!K4);}}if(Num==2){Num=0;}if(Num){SetingClock();}else{SetingTime();Timer();Clock();}}}voidSetingTime()//时间设置{if(K1==0){delayms(1);if(K1==0){miao1++;while(!K1);}else{}}if(K2==0){delayms(1);if(K2==0){fen1++;while(!K2);}e

6、lse{}}if(K3==0){delayms(1);if(K3==0){shi1++;while(!K3);}else{}}}voidTimer()//时间显示{if(Time==20

7、

8、Time>20)//每秒miao1++{Time=0;miao1++;}else//显示:在第一位显示秒的个位{P0=0x00;First;P0=0x00;P0=DIG_CODE[miao1];}if(miao1==10){miao1=0;miao2++;}else//显示秒的十位{P0=0x00;Second;P0=0x00;P0=DIG_CODE[miao2];}if(m

9、iao2==6){miao2=0;fen1++;}P0=0x00;//显示第三位的“-”Third;P0=0x00;P0=0x40;if(fen1==10){fen1=0;fen2++;}else//显示分的个位{P0=0x00;Fourth;P0=0x00;P0=DIG_CODE[fen1];}if(fen2==6){fen2=0;shi1++;}else//分的十位{P0=0x00;Fifth;P0=0x00;P0=DIG_CODE[fen2];}P0=0x00;//显示第六位的“-”Sixth;P0=0x00;P0=0x40;if(shi1==10){sh

10、i1=0;shi2++;

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

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

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