我想在51hei-5單片機(jī)開發(fā)板上實(shí)現(xiàn)如下的功能: 上電后讓8個(gè)數(shù)碼管顯示右下角的點(diǎn)。按INTO按鍵時(shí)八個(gè)數(shù)碼管全顯示1,按TO按鍵時(shí),第二位顯示二,按S4按鍵時(shí)第三位顯示三,按S5按鍵時(shí)第四位顯示五。問題如下圖
12512ddj.jpg (32.34 KB, 下載次數(shù): 130)
下載附件
2010-7-26 23:47 上傳
我搞了好久百思不得其解啊.現(xiàn)在連編譯都通不過
ORG 000H
LJMP MAIN
ORG 030H
main: setb p2.6 ;上電全顯示點(diǎn)
mov p0,#080H
clr p2.6
SETB P2.7
mov p0,#00H
clr p2.7
lcall ys
JNB P3.2,F1 ;等于O轉(zhuǎn)到F1 (八位數(shù)碼管全顯示1)
JNB P3.4,F2 ;等于O轉(zhuǎn)到F2 (第二位顯示2)
JNB P3.6,F3 ;等于0轉(zhuǎn)到F3 (第三位顯示3)
JNB P3.7,F4 ;等于O轉(zhuǎn)到F4 (第四位顯示4)
LJMP MAIN
F1: SETB P2.6 ;1
MOV P0,#06H
CLR P2.6
SETB P2.7
MOV P0,#0FEH
CLR P2.7
LCALL YS1S
SETB P2.6 ;1
MOV P0,#06H
CLR P2.6
SETB P2.7
MOV P0,#0FDH
CLR P2.7
LCALL YS1S
SETB P2.6 ;1
MOV P0,#06H
CLR P2.6
SETB P2.7
MOV P0,#0FBH
CLR P2.7
LCALL YS1S
SETB P2.6 ;1
MOV P0,#06H
CLR P2.6
SETB P2.7
MOV P0,#0F7H
CLR P2.7
LCALL YS1S
SETB P2.6 ;1
MOV P0,#06H
CLR P2.6
SETB P2.7
MOV P0,#0F7H
CLR P2.7
LCALL YS1S
SETB P2.6 ;1
MOV P0,#06H
CLR P2.6
SETB P2.7
MOV P0,#0F7H
CLR P2.7
LCALL YS1S
SETB P2.6 ;1
MOV P0,#06H
CLR P2.6
SETB P2.7
MOV P0,#0F7H
CLR P2.7
LCALL YS1S
SETB P2.6 ;1
MOV P0,#06H
CLR P2.6
SETB P2.7
MOV P0,#0F7H
CLR P2.7
LCALL YS1S
LJMP MAIN
F2: SETB P2.6 ;顯示2
MOV P0,#05BH
CLR P2.6
SETB P2.7
MOV P0,#0FDH
CLR P2.7
LCALL YS1S
LJMP MAIN
F3: SETB P2.6 ;顯示3
MOV P0,#04FH
CLR P2.6
SETB P2.7
MOV P0,#0FBH
CLR P2.7
LCALL YS1S
LJMP MAIN
F4: SETB P2.6 ;顯示4
MOV P0,#066H
CLR P2.6
SETB P2.7
MOV P0,#0F7H
CLR P2.7
LCALL YS1S
LJMP MAIN
YS: MOV R7,#0AH ;延時(shí)
YS1: MOV R6,#0FFH
YS2: DJNZ R6,YS2
DJNZ R7,YS1
RET
YS1S:MOV R5,#0FFH
YS1S1:LCALL YS
DJNZ R5, YS1S1
RET
END
[此貼子已經(jīng)被作者于2010-7-27 0:05:58編輯過]
|