您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 统计图表 > 单片机定时器实验程序
ORG0000HLJMPSTARTORG001BH;定时器/计数器1中断程序入口地址LJMPINTORG0100HSTART:MOVTMOD,#10H;计数器置为方式1MOVTL1,#0B0H;装入时间常数MOVTH1,#03CHSETBET1;允许定时器T1中断SETBEA;允许总中断SETBTR1;开始计数MOVR0,#05H;05是进入中断的次数LOOP:MOVR1,#00HMOVR2,#26H;灯的状态循环次数LOOP1:MOVA,R1ACALLTABLEMOVP1,AINCR1LOOP2:CJNER0,#00H,LOOP2MOVR0,#05HDJNZR2,LOOP1LJMPLOOPTABLE:INCA;从表中取显示码入累加器MOVCA,@A+PCRETDB0FFH,0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,80H,0HDB01H,03H,07H,0FH,1FH,3FH,7FH,0FFH,00H,0FFH,0FEHDB0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH,0BFH,0DFHDB0EFH,0F7H,0FBH,0FDH,0FEH,0FFH,00H,0FFH,00HINT:CLRTR1;停止计数DECR0;计数值减一MOVTL1,#0B0H;重置时间常数初值MOVTH1,#03CHSETBTR1;开始计数RETI;中断返回END将T1改为T0,并且溢出间隔为0.05sORG0000HLJMPSTARTORG001BH;定时器/计数器1中断程序入口地址LJMPINTORG0100HSTART:MOVTMOD,#01H;计数器置为方式1MOVTL1,#78H;装入时间常数MOVTH1,#0CHSETBET0;允许定时器T1中断SETBEA;允许总中断SETBTR0;开始计数MOVR0,#05H;05是进入中断的次数LOOP:MOVR1,#00HMOVR2,#25H;灯的状态循环次数LOOP1:MOVA,R1ACALLTABLEMOVP1,AINCR1LOOP2:CJNER0,#00H,LOOP2MOVR0,#05HDJNZR2,LOOP1LJMPLOOPTABLE:INCA;从表中取显示码入累加器MOVCA,@A+PCRETDB0FFH,07FH,3FH,1FH,0FH,07H,03H,01H,00HDB80H,81H,0C1H,0C3H,0E3H,0E7H,0F7H,0FFHDB00H,0FFH,00H,0FFH,0EFH,0E7H,0C7H,0C3H,83H,81H,01H,00HDB01H,03H,07H,0FH,1FH,3FH,7FH,0FFHINT:CLRTR1;停止计数DECR0;计数值减一MOVTL1,#78H;重置时间常数初值MOVTH1,#0CHSETBTR1;开始计数RETI;中断返回END
本文标题:单片机定时器实验程序
链接地址:https://www.777doc.com/doc-2592048 .html