用keil无法编译啊,其中AL,BL,CMP的语句显示变量未设定,变量错误,这些寄存器不是固定的么。求高手解惑
发布网友
发布时间:2022-05-09 15:45
我来回答
共3个回答
热心网友
时间:2023-10-08 18:15
AL,BL这里不能用,这个是微机原理学习的,和51机不同。
你可以借用R1,R2等,或者A,B。
我看你这里目的是判定P3.0状态,之后跳转。
这里可以用
mov a,p3;
add a,#00h
jnz main,这样a若是00h就继续执行,不为0则跳转
热心网友
时间:2023-10-08 18:15
AL,BL未声明。
这两个不是默认的寄存器名。
热心网友
时间:2023-10-08 18:16
ORG 0000H
AJMPMAIN
ORG 0030H
MAIN:MOV P1,#00H
mov AL,p3; P3.0我连了一个开关,其他接地
mov BL,#00h
CMP AL,BL
JE LOOP
MOV P1,AL;把P3口的状态送到P1口,P1口我接LED灯
LOOP:CALL DELAY
AJMP MAIN
DELAY:MOV R5,#10
DELAY1:MOV R6,#50
DELAY2:MOV R7,#250
DJNZ R7,$
DJNZ R6,DELAY2
DJNZR5,DELAY1
RET
END追问把我原码复制一遍?这也算回答?