欢迎来到天天文库
浏览记录
ID:56050064
大小:70.00 KB
页数:2页
时间:2020-06-19
《定时器计数器控制交通灯.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、ORG0000HRESET:LJMPMAIN;上电复位入口ORG000BH;定时器计数器零入口地址LJMPIT0PORG001BH;定时器计数器1入口地址LJMPIT1PORG0100HMAIN:MOVSP,#60H;修改堆栈指针MOVB,#0AH;循环次数10次SETBEA;开中断SETBPT1;定时器计数器1为高优先级SETBET1;允许定时器计数器1中断SETBET0;允许定时器计数器0中断MOVTMOD,#51H;设T1工作在计数模式方式1,设T0工作在定时模式方式101010001MOVTL0,#0B0H;
2、赋初值15535,定时100MSMOVTH0,#3CHMOVTL1,#0FFH;赋初值FFFFHMOVTH1,#0FFHSETBTR0;启动T0,T1SETBTR1MOVA,#3CH;东西红,南北绿MOVP1,ASJMP$;等待中断IT0P:MOVTL0,#0B0H;T0中断服务子程序,给T0重装初值MOVTH0,#3CHDJNZB,LOOP;B减1,不为零跳转CPLA;1S定时时间到,灯的状态取反,东西绿,南北红MOVP1,AMOVB,#0AH;重新装入值,循环10次,程序不断循环执行LOOP:RETI;IT1P:
3、PUSHPSW;保护现场PUSHAccMOVA,#0FH;红灯全亮MOVP1,ALCALLDELPOPAccPOPPSWMOVTL1,#0FFH;赋初值FFFFHMOVTH1,#0FFHRETI;退出中断服务子程序DEL:MOVR7,#0FFH;延时程序DL:MOVR6,#0FFHDL1:DJNZR6,DL1DJNZR7,DLRETEND
此文档下载收益归作者所有