欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
[緊急求助]大家幫忙看一段程序
[打印本頁]
作者:
ppu428
時間:
2009-8-29 09:06
標題:
[緊急求助]大家幫忙看一段程序
大家看一下這個程序,我想讓單片機顯示RIGHT,但是一直顯示ERROR:
顯示子程序DISPLAY是正確的,大家不用看了,就是比較密碼子程序TEST的問題?
我測試時把最后三行改為 :R: SETB MMRE
RET
END
顯示RIGHT,這時程序的執行流程與原先相同(不關程序邏輯正誤問題)。
程序:
MMRE EQU 00H ;密碼正確與否標志,用位尋址區第一位為標志
ORG 0050H
TABLE0: DB 79H,77H,77H,3FH,77H ;顯示:ERROR
TABLE1: DB 77H,30H,7DH,76H,02H ;顯示:RIGHT
TABLE2: DB 07H,0BH,0FH,13H,17H,1BH,1FH,23H ;密碼:1 2 3 4 5 6 7 8
;-------------------------------主程序入口-------------------------------------
ORG 0000H
LJMP MAIN
ORG 0100H
MAIN:
MOV 30H,#07H ;用八字節存儲正確的密碼
MOV 31H,#0BH
MOV 32H,#0FH
MOV 33H,#13H
MOV 34H,#17H
MOV 35H,#1BH
MOV 36H,#1FH
MOV 37H,#23H
LCALL TEST ;就這個比較密碼子程序的問題?
MOV C,MMRE ;根據標志位選擇不同的顯示內容
JC M2
MOV DPTR,#TABLE0 ;顯示:ERROR
SJMP M3
M2: MOV DPTR,#TABLE1 ;顯示:RIGHT
M3: MOV R3,#5
LCALL DISPLAY ;調用顯示子程序,循環
LJMP MAIN
;--------------------------------顯示子程序------------------------------------
DISPLAY: MOV P2,#0 ;清0復位
ANL P1,#0F8H ;用與保護P1口高5位不受影響,將低三位清0,
;選擇第一個數碼管
MOV R4,#0
L2: MOV A,R4
MOVC A,@A+DPTR ;用查表法得到A對應在表中的段值
MOV P2,A ;輸出顯示
LCALL DELAY0 ;加入延時,使每位顯示保持一段時間
MOV P2,#0 ;延時過后,清0,為下一位顯示做準備
INC R4 ;移到下一個數據
DJNZ R3,L3 ;顯示完指定個數返回,否則進入下一個顯示
RET
L3: INC P1 ;選擇下一位數碼管
SJMP L2
;---------------------------------延時子程序-----------------------------------
DELAY0: MOV R5,#20
DJNZ R5,$
RET
;----------------------------測試密碼正確與否子程序----------------------------
TEST: MOV R0,#30H
MOV DPTR,#TABLE2
MOV R2,#0
COMP: MOV A,R2
MOVC A,@A+DPTR
MOV 0FFH,A
MOV A,@R0
CJNE A,0FFH,R
INC R0
INC R2
CJNE R0,#38H,COMP
SETB MMRE
R: RET
END
/********************************** END OF FILE ******************************/
作者:
ppu428
時間:
2009-8-29 09:11
就是最后這一段程序:
TEST: MOV R0,#30H
MOV DPTR,#TABLE2
MOV R2,#0
COMP: MOV A,R2
MOVC A,@A+DPTR
MOV 0FFH,A
MOV A,@R0
CJNE A,0FFH,R
INC R0
INC R2
CJNE R0,#38H,COMP
SETB MMRE
R: RET
我調試時也走到 SETB MMRE ,如果在這個子程序的其它地方 寫上 SETB MMRE 顯示:REIGHT,但是源程序執行了 SETB MMRE 但是現實:ERROR?
作者:
紫日
時間:
2009-8-29 17:04
CJNE R0,#38H,COMP
你去把書看下,然后把CJNE這個指令的含義好好的理解下。希望你能夠深刻的理解掉它。
作者:
紫日
時間:
2009-8-29 17:04
ret是結束,你還要檢查SETB MMRE這個指令是為了什么服務的。
作者:
幽夢與共
時間:
2009-8-29 21:01
MOV R2,#0
COMP: MOV A,R2
MOVC A,@A+DPTR
A中為顯示內容,根據你的語句,A中的內容始終為0;
作者:
nishibeitina
時間:
2009-10-26 20:14
好好看書
作者:
nishibeitina
時間:
2009-10-26 20:14
我也不會
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1