首页 单片机LED闪烁程序

单片机LED闪烁程序

举报
开通vip

单片机LED闪烁程序单片机LED闪烁程序 #include"reg51.h" unsigned char LedSeg[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x67}; sbit K4=P1^3; sbit K3=P1^2; sbit K2=P1^1; sbit K1=P1^0; Delay(long DelayTime) { long cnt; for(cnt = 0;cnt < DelayTime*50;cnt++); } void main...

单片机LED闪烁程序
单片机LED闪烁程序 #include"reg51.h" unsigned char LedSeg[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x67}; sbit K4=P1^3; sbit K3=P1^2; sbit K2=P1^1; sbit K1=P1^0; Delay(long DelayTime) { long cnt; for(cnt = 0;cnt < DelayTime*50;cnt++); } void main() { unsigned char LED0,LED1,LED2,LED3,FlashFlash,FlashBit; bit Flash=0; unsigned int Cnt; unsigned char ChgFlag,Sec=5,Min=2,Hour=17,Day=0,Year=0,Mouth=0; /* while(1) {//ÏÔÊ???×? switch(++Cnt%4) { case 0: P0=0x02; P2=LedSeg[LED0]; break; case 1: P0=0x04; P2=LedSeg[LED1]; break; case 2: P0=0x08; P2=LedSeg[LED2]; break; case 3: P0=0x10; P2=LedSeg[LED3]; break; }*/ while(1) { switch(Cnt%4) { case 0: P0=0x02; if(Flash==0&&FlashFlash==0)//?ªÊ?ÉÁË? { if(Cnt<250) P2=LedSeg[LED0]; else P2=0x00; } else //??ÉÁË? P2=LedSeg[LED0]; break; case 1: P0=0x04; if( Flash==0&&FlashFlash==1)//?ªÊ?ÉÁË? { if(Cnt<250) P2=LedSeg[LED1]; else P2=0x02; } else //??ÉÁË? P2=LedSeg[LED1]; break; case 2:P0=0x08; if(Flash==0&&FlashFlash==2)//?ªÊ?ÉÁË? { if(Cnt<250) P2=LedSeg[LED2]; else P2=0x02; } else //??ÉÁ P2=LedSeg[LED2]; break; case 3: P0=0x10; if(Flash==0&&FlashFlash==3)//?ªÊ?ÉÁË? { if(Cnt<250) P2=LedSeg[LED3]; else P2=0x02; } else //??ÉÁ P2=LedSeg[LED3]; break; case 4: P0=0x01; P2=LedSeg[ChgFlag]; break; } Delay(1); if(Cnt>500) Cnt=0; //?ÆÊ???×? if(Cnt>500) { Cnt=0; Sec++; if(Sec>59) { Sec=0; Min++; } if(Min>59) { Min=0; Hour++; } if(Hour>23) { Hour=0; Day++; } switch(Mouth) { case 1: if(Day>30) { Day=0; Mouth++; } break; case 3: if(Day>30) { Day=0; Mouth++; } break; case 5: if(Day>30) { Day=0; Mouth++; } break; case 7: if(Day>30) { Day=0; Mouth++; } break; case 8: if(Day>30) { Day=0; Mouth++; } break; case 10: if(Day>30) { Day=0; Mouth++; } break; case 12: if(Day>30) { Day=0; Mouth++; } break; case 4: if(Day>29) { Day=0; Mouth++; } break; case 6: if(Day>29) { Day=0; Mouth++; } break; case 9: if(Day>29) { Day=0; Mouth++; } break; case 11: if(Day>29) { Day=0; Mouth++; } break; case 2: if(Year%4) { if(Day>28) { Day=0; Mouth++; } } else { if(Day>27) { Day=0; Mouth++; } } break; } if(Mouth>23) { Mouth=0; Year++; } } //Êý?Ýת?? if(Flash==0) { switch(ChgFlag) { case 0: LED0=Sec%10; LED1=Sec/10; LED2=Min%10; LED3=Min/10; break; case 1: LED0=Hour%10; LED1=Hour/10; LED2=Day%10; LED3=Day/10; break; case 2: LED0=Mouth%10; LED1=Mouth/10; LED2=Year%10; LED3=Year/10; break; } } // ?ØÖÆ?óÊýÂë?Ü if(K4==0) { Flash=0; Delay(50); while(K4==0); ChgFlag++; if(ChgFlag>2) ChgFlag=0; } if(K3==0)//ÉÁË?Î?µ?Õû flashbit ÉÁË?Î? { Flash=1; Delay(50); while(K3==0); // LED[FlashBit]++;//0~3 // MaxFlashBit // if(LED[FlashBit]>MaxFlashBit) LED[FlashBit]=0; while(Flash==0) { switch(FlashBit%4) { case 0: if(ChgFlag==0) { if(LED0>9) LED0=0; LED0++; } if(ChgFlag==1) { if(LED0>4) LED0=0; LED0++; } if(ChgFlag==2) { if(LED0>2) LED0=0; LED0++; } break; case 1: if(ChgFlag==0) { if(LED1>6) LED1=0; LED1++; } if(ChgFlag==1) { if(LED1>2) LED1=0; LED1++; } if(ChgFlag==2) { if(LED1>1) LED1=0; LED1++; } break; case 2: if(ChgFlag==0) { if(LED2>9) LED2=0; LED2++; } if(ChgFlag==1) { if(LED2>9) LED2=0; LED2++; } if(ChgFlag==2) { if(LED2>9) LED2=0; LED2++; } break; case 3: if(ChgFlag==0) { if(LED3>6) LED3=0; LED3++; } if(ChgFlag==1) { if(LED3>3) LED3=0;//ÓÐÕùÒé LED3++; } if(ChgFlag==2) { if(LED3>9) LED3=0; LED3++; } break; } while(K4==0); Flash=0; } } if(K1==0)//flashµÈÓÚ0?ªÊ?ÉÁË? ÉÁË?µÄÌøÈëºÍÌø?ö { Flash=0,FlashFlash=0; Delay(50); if(K2==0) //ÉÁË?ÒÆ?? flashflash ÉÁË?Î?ÒÆ???ØÖÆ { Delay(50); while(K2==0); if(FlashFlash>3) FlashFlash=0; FlashFlash++; } while(K1==0); Flash =~Flash; } } }
本文档为【单片机LED闪烁程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_496339
暂无简介~
格式:doc
大小:28KB
软件:Word
页数:0
分类:互联网
上传时间:2017-10-08
浏览量:26