足球比分直播

定时器85531.doc

返回
定时器85531.doc_第1页
第1页 / 共3页
定时器85531.doc_第2页
第2页 / 共3页
定时器85531.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述:
2009-10-02 by yingang2009********************************************************/include//*******************************************************define Byte unsigned chardefine Word unsigned intdefine DWord unsigned long//*******************************************************define Speed 12 //12 MHz注意更高就不能一次得到 50ms 定时了define TTTT 50000 //50msdefine TH1_Init_Val 65536-Speed * TTTT / 12/256define TL1_Init_Val 65536-Speed * TTTT / 12256sbit L1 P10 ;sbit L2 P11 ;sbit L3 P12 ;sbit L4 P13 ;sbit L5 P14 ;sbit L6 P15 ;sbit L7 P16 ;sbit L8 P17 ;//*******************************************************模块变量bit flag1s ;//*******************************************************T1 初始化void T1_Init{TMOD 0 x11;TH1TH1_Init_Val ;TL1TL1_Init_Val ;ET1 1;EA 1;TR1 1;}/*******************************************************LED 主进程第一秒钟 L1,L3 亮,第二秒钟 L2,L4 亮,第三秒钟 L5,L7 亮,第四秒钟 L6,L8 亮,第六秒钟 L2,L4,L6,L8 亮,第七秒钟八个二极管全亮,第八秒钟全灭[可以将 P0 口各时刻的状态做个表格,这里就不做了]********************************************************/void Led_Run{static Byte step;if flag1sreturn; //接收定时器“flag1s”消息,没到 1s 返回flag1s 0; //1s 到则开始工作step; switchstep //以 1s 为间隔进行顺序控制{case 1P1 0 xff; //先熄灭 L1 0;L3 0;break;case 2P1 0 xff; //先熄灭L2 0;L4 0;break;case 3P1 0 xff; //先熄灭L5 0;L7 0;break; case 4P1 0 xff; //先熄灭L6 0;L8 0;break;case 5//do nothing 维持第 4 秒内容break; case 6P1 0 xff; //先熄灭L2 0;L4 0; L6 0;L8 0; break; case 7P1 0 x00; //全亮break;case 8P1 0 xff; //全灭step 0; //步骤复位break; defaultstep 0; //具有一定的抗干扰意义break; }}//*******************************************************主程序void main{T1_Init;while1{Led_Run;}}void ISR_T1 interrupt 3 using 2 //定时器 1 中断服务程序 50ms{static Byte cnt1s;TH1TH1_Init_Val ;TL1TL1_Init_Val ; //reload valif cnt1s 20{cnt1s 0;flag1s 1; }}
展开阅读全文
收藏
下载资源

加入会员免费下载





足球比分直播