作者bor1228 (NAMI NAMI)
看板Programming
标题[问题] 有人可以帮我检查程式(mcs8051)哪里出错了?
时间Fri Jun 16 10:03:54 2006
我写的是用七段显示器00上数到60的计数器数到59时会归00不在上数然後LED会开始闪烁
。
我是用INT0做外部中断做为启动上数用 当我还没按INT0时七段显示器会显示00
按以後会开始上数。
程式没错误可是输出到应用板上却没效果只会一值显示00按INT0没反应请高手帮我检查
~谢谢
=============以下是程式
ORG 00H
JMP BEGIN
ORG 03H
JMP INTT0
ORG 30H
BEGIN:
MOV SP,#60H
MOV IE,#81H
MOV R3,#00H
BLOOP:
MOV A,R3
XRL A,#00H
JNZ BL1
CALL START0
JMP BL0
BL1:
CALL START1
BL0:
JMP BLOOP
INTT0:
CLR EX0
PUSH ACC
INC R3
MOV A,R3
XRL A,#02H
JNZ IN1
MOV R3,#00H
IN1:
JNB p3.2,in1
SETB ex0
POP ACC
RETI
START0:
MOV R2,#00H
MOV A,R2
ANL A,#0F0H
ORL A,#80H
MOV P0,A
MOV A,R2
ANL A,#0F0H
SWAP A
ORL A,#90H
MOV P0,A
RET
START1:
MOV R2,#00H
MOV R5,#39
L1:
MOV A,R2
ANL A,#0F0H
ORL A,#80H
MOV P0,A
CALL DELAY
MOV A,R2
ANL A,#0F0H
SWAP A
ORL A,#90H
MOV P0,A
CALL DELAY
DJNZ R5,L1
MOV A,R2
ADD A,#01H
DA A
CJNE A,#60,L2
MOV R2,#00H
CALL L3
JMP START0
L2:
mov R2,A
JMP L1
L3:
MOV P1,#00H
CALL DELAY_264mS
CALL DELAY_264mS
CALL DELAY_264mS
MOV P1,#0FFH
CALL DELAY_264mS
CALL DELAY_264mS
CALL DELAY_264mS
RET
DELAY:
MOV R7,#25
D1:
MOV R6,#00H
DJNZ R6,$
DJNZ R7,D1
RET
DELAY_264mS:
MOV R4,#02H
D2: CALL DELAY
DJNZ R4,D2
RET
END
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.81.235.86
1F:推 march20:这篇还不到砍的程度, 但是, 有谁会答吗 @@ 06/16 13:17
2F:推 bor1228:ORZ... 06/17 00:41
3F:推 ahbi0302:组合语言实在让人不想DEBUG... 06/18 14:47