收藏 分享(赏)

单片机红绿灯数秒程序.doc

上传人:gnk289057 文档编号:7106966 上传时间:2019-05-06 格式:DOC 页数:3 大小:32.56KB
下载 相关 举报
单片机红绿灯数秒程序.doc_第1页
第1页 / 共3页
单片机红绿灯数秒程序.doc_第2页
第2页 / 共3页
单片机红绿灯数秒程序.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、2010-06-08 17:18#include#define uchar unsigned charuchar seg=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/显示 0-9段码uchar count,time,state,tf;bit f=0;sbit reset=P34;/*延时函数*/void delay(uchar k) uchar i,j; for(i=0;ik;i+) for(j=0;j200;j+);/*主函数*/void main()TMOD=0x01; /设置为定时器模式 1TH0=0x3c; /晶振 6MHz,定

2、时时间 100msTL0=0xb0;IE=0x82; /开全局中断和定时中断time=16; /计时初值为 16scount=0; /秒计数值清 0tf=0; /0.5s计数值清 0state=0; /初始状态为 0while(1)if(reset=0) /复位,状态 0,关闭定时器,计时值为 16 state=0;TR0=0; time=16;else TR0=1; /启动定时器switch(state)case 0:P1=0xee;break; /状态 0:东西南北全红灯case 1:P1=0xeb;break; /状态 1:南北绿,东西红case 2:if(f=1) P1=0xeb;el

3、se P1=0xef; break; /状态 2:南北绿闪烁,东西红case 3:P1=0xed;break; /状态 3:南北黄,东西红case 4:P1=0xee;break; /状态 4:东西南北全红case 5:P1=0xbe;break; /状态 5:南北红,东西绿case 6:if(f=1) P1=0xbe;else P1=0xfe; break; /状态 6:南北红,东西绿闪烁case 7:P1=0xde;break; /状态 7:南北红,东西黄P2=0xfe; /显示个位P0=segtime%10; /取计时值个位送 P0口 delay(10); /延时P2=0xfd; /显示

4、十位P0=segtime/10; /取计时值十位送 P0口 delay(10); /延时/*定时中断函数*/void timer0() interrupt 1 TH0=0x3c; /定时重新赋初值TL0=0xb0;count+; /秒计数值加 1tf+; /0.5s计数值加 1if(tf=5) tf=0; f=f;if(count=10) /中断 10次即 1s=10100mscount=0; /秒计数次数清 0time-; /计时值减 1if(time=15) state+; /状态 1或 5if(time=5) state+; /状态 2或 6if(time=2) state+; /状态 3或 7if(time=0) time=16; /计时值减到 0则回初值 state+; /状态 0或 4if(state=8) state=0;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报