当前位置:编程学习 > 汇编语言 >>

单片机汇编语言求教。。。八个灯依次亮,然后熄灭。但是程序到第七个灯就灭了,第八个灯不亮,求修改。

答案:ORG 0000H LJMP MAIN ORG 000BH LJMP T0ISR ORG 0030H MAIN: MOV TMOD,#01H MOV TH1,#3CH MOV TL1,#0B0H SETB ET0 SETB TR0 MOV B,#0 SETB EA MOV R0,#8 ;改动部分 就是把循环次数由7改为8 MOV P3,#0FEH LOOP: CLR 00H JNB 00H,$ MOV A,P3 RL A MOV P3,A DJNZ R0,LOOP MOV P3,#0FFH SJMP $ T0ISR: CLR TR0 MOV TH1,#3CH MOV TL1,#0B0H SETB TR0 INC B MOV A,B CJNE A,#20,T0ISRE MOV B,#0 SETB 00H T0ISRE: RETI END 我来帮他解答 错误的地址就一处 去试一试吧 成功后 别忘了给俺加分
其他:不知 MOV R0,#7      ; 把这个改成MOV R0,#8, 就可以的了,
 
 DJNZ R0,LOOP  ; 你这句,减到0就不跑LOOP 那的了,所以如果R0是7的话,只循环了7次, , 

上一个:K1 EQU P1.0 ;在程序开始前定义变量 K2 EQU P1.1 K3 EQU P1.2 K4 EQU P1.3 ORG 0000H LJMP MAIN ORG 000BH
下一个:设DS=8225H,DI=3942H,指令INC BYTE PTR[DI]操作数的物理地址是( ) A.86192H B.85B92H C.41645H D.41B45H

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,