標(biāo)題: [求助] [打印本頁(yè)]

作者: vmbjn888    時(shí)間: 2011-6-12 20:26
標(biāo)題: [求助]

小弟剛開始自學(xué)單片機(jī),今天做一個(gè)例程時(shí)怎么也達(dá)不到設(shè)計(jì)的效果,我花了4個(gè)小時(shí)還是沒找到問(wèn)題在哪,希望各位大大幫忙看看問(wèn)題在哪,謝謝!

效果描述:通過(guò)按鈕的按鍵次數(shù)來(lái)確定流水燈的工作模式,并在數(shù)碼管上顯示當(dāng)前的按鍵次數(shù)。

    K1 EQU  P2.0
    LED EQU  P0
    ORG  0000H
MAIN:   SETB K1
    MOV  LED, #00H
    MOV  P1,  #00H
START:   MOV  R0,  #00H
    JB  K1,  $
    JNB  K1,  $
    INC  R0
    AJMP LOOP
    CJNE R0,  #06H, START
    AJMP MAIN
LOOP:   MOV  A,  R0
    CJNE A,  #01H, WW1
    LCALL YY1
WW1:   CJNE A,  #02H, WW2
    LCALL YY2
WW2:   CJNE A,  #03H, WW3
    LCALL YY3
WW3:   CJNE A,  #04H, WW4
    LCALL YY4
WW4:   CJNE A,  #05H, WW5
    LCALL YY5
WW5:   RET
YY1:   MOV  DPTR, #TAB1
    MOV  P1,  #30H
    LCALL SHOW
YY2:   MOV  DPTR, #TAB2
    MOV  P1,  #5BH
    LCALL SHOW
YY3:   MOV  DPTR, #TAB3
    MOV  P1,  #4FH
    LCALL SHOW
YY4:   MOV  DPTR, #TAB4
    MOV  P1,  #66H
    LCALL SHOW
YY5:   MOV  DPTR, #TAB5
    MOV  P1,  #6DH
    LCALL SHOW
SHOW:   MOV  R1,  #08H
    MOV  R2,  #00H
SH:    MOV  A,  R2
    MOVC A,  @A+DPTR
    MOV  LED, A
    INC  R2
    LCALL DELAY
    LCALL DELAY
    LCALL DELAY
    JNB  K1,  LOOP
    DJNZ R1,  SH
    AJMP SHOW
DELAY:   MOV  R6,  #00H
    MOV  R7,  #00H
    NOP
    NOP
    DJNZ R7,  $
    DJNZ R6,  $
    RET
TAB1:   DB  01111110B, 00111100B, 00011000B, 00000000B, 00011000B, 00111100B, 01111110B, 11111111B
TAB2:   DB  10000001B, 11000011B, 11100111B, 11111111B, 11100111B, 11000011B, 10000001B, 00000000B
TAB3:   DB  11111110B, 11111100B, 11111000B, 11110000B, 11100000B, 11000000B, 10000000B, 00000000B
TAB4:   DB  00000001B, 00000011B, 00000111B, 00001111B, 00011111B, 00111111B, 01111111B, 11111111B
TAB5:   DB  10000001B, 11000011B, 11100111B, 11111111B, 11100111B, 11000011B, 10000001B, 00000000B
    END

 

單鍵多模式流水燈(圖).doc (39.5 KB, 下載次數(shù): 8)





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1