📄 9.sdi
字号:
,,, ORG 0000H
0000,01 30,, AJMP START
,,, ORG 000BH ;定时器0的中断向量地址
000B,01 46,, AJMP TIME0 ;跳转到定时器0中断处理程序处
,,, ORG 30H
0030,75 A0 FE,START,START: MOV P2,#0FEH ;点亮P2.0灯
0033,75 89 01,, MOV TMOD,#00000001B ;定时0工作于方式1(16位)
0036,75 8C B1,, MOV TH0,#0B1H
0039,75 8A E0,, MOV TL0,#0E0H ;设定定时时间20ms
003C,D2 8C,, SETB TR0 ;定时器0开关打开
003E,D2 A9,, SETB ET0 ;打开开定时/计数器0允许
0040,D2 AF,, SETB EA ;打开总中断允许
0042,7E 32,, MOV R6,#50 ;计溢出次数50×20ms=1S
0044,01 44,LOOP,LOOP: AJMP LOOP ;无限等待
0046,C0 D0,TIME0,TIME0: PUSH PSW
0048,75 8C B1,, MOV TH0,#0B1H
004B,75 8A E0,, MOV TL0,#0E0H ;重置定时时间20ms
004E,DE 07,, DJNZ R6,TRUESC;不到1S退出中断程序
0050,7E 32,, MOV R6,#50 ;重新赋溢出计数值
0052,E5 A0,, MOV A,P2 ;P2口左移
0054,23,, RL A
0055,F5 A0,, MOV P2,A
0057,D0 D0,TRUESC,TRUESC: POP PSW
0059,32,, RETI
000E,,, END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -