这是我的程序
这是我的程序,请看一下对不对?谢谢!
我用LCA51调试了一下,没有错误,但是没有接仿真机
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP T0INT
;-------------------------------------主程序----------------------------------------
ORG 0100H
MAIN: MOV SP,#35H ;设置堆栈
MOV TMOD,#51H ;T0计数状态、方式1,T1定时状态、方式1
MOV TL0,#00H ;T0计数初值设定
MOV TH0,#00H
MOV TL1,#0B0H ;T1定时50ms初值设定
MOV TH1,#3CH ;fosc=12MHZ(最小定时时间为1μs)
MOV R3,#200 ;设置软件计数器
ORL TCON,#01010000B ;同时启动定时器T0和T1
SETB EA
SETB ET1
LOOP: LCALL MAIN
AJMP LOOP
;---------------------------T0中断服务子程序---------------------------
T0INT: DJNZ R3,EXIT ;1s时间未到则中断返回,继续定时
ANL TCON,#10001111B ;1s定时到,则同时关闭定时器1和定时器0
MOV TL1,#0B0H ;T1定时50ms初值设定
MOV TH1,#3CH ;fosc=12MHZ(最小定时时间为1μs)
MOV R3,#200 ;设置软件计数器
ORL TCON,#01010000B ;同时启动定时器T0和T1
RETI
EXIT: MOV TH1,#0B0H ;1s未到,重设T1的50ms定时初值
MOV TL1,#3CH
RETI
END
发表时间:2007年4月16日11:23:34