【发布时间】:2013-02-28 12:22:42
【问题描述】:
我在汇编中为英特尔 8051 编写了一个程序。该程序编译良好,在模拟器中执行良好,但在端口上没有显示任何输出。输出端口只是空的。
代码如下:
ORG 00H
MOV P1, #00H
MOV P2, #00H
MOV P3, #00H
mov R4, #00h
TakeInput:
MOV R3,#0H
JB P3.4, TakeOperation
DJNZ R3,TakeInput
MOV R0, P1
MOV R1, P2
MOV P2, #00H
采取行动:
mov p2,#00h
jb p3.5,CheckFunction
sjmp TakeOperation
CheckFunction:
mov P3,#00h
Mov R5,P2
CJNE R5,#02H,ADDT
ajmp end
ADDT:
MOV A,R0
ADD A, R1
MOV P3, A
SJMP CheckFunction
我做错了什么,输出没有显示在端口上? 问候
【问题讨论】:
-
您在端口 P2 和 P3 上输入什么?另外,用
MOV R3,#0/DJNZ R3,TakeInput而不是SJMP TakeInput实现无限循环的复杂方式是什么?