專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計實(shí)例 >> 瀏覽文章

花樣流水燈的設(shè)計2(單片機(jī)-匯編)

作者:佚名   來源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時間:2012年12月20日   【字體:
;This program will show you cycle glitter between 8 led lamps
;     maker:Chen Weiwu
;     date:2012-11-08
;     version:1.0.0
;-------------------------------------------------------------
;Define
Ledprt     equ          p0
SegDisplay   equ          p2
L1       equ          30h
l3       equ          32h
button1     equ          p1.0
button2     equ          p1.2
button3     equ          p1.4
button4     equ          p1.6
;----------------------
;Set the initiation address which the program runing
;----------------------
        org        0
        ajmp       main
;----------------------
Pattern1:
        mov        dptr,#Table1
        acall       Cycle
        jnb        button1,Pattern1     ;Button is enable
        mov        Ledprt,#11111111B     ;Button is unable
        ret
        
;-----------------------        
Pattern2:
        mov        dptr,#Table2
        acall       Cycle
        jnb        button2,Pattern2     ;Button is enable
        mov        Ledprt,#11111111B     ;Button is unable
        ret
;-----------------------
Pattern3:
        mov        dptr,#Table3      
        acall       Cycle
        jnb        button3,Pattern3     ;Button is enable
        mov        Ledprt,#11111111B     ;Button is unable
        ret
;-----------------------
Pattern4:
        mov        dptr,#Table4      
        acall       Cycle
        jnb        button4,Pattern4     ;Button is enable
        mov        Ledprt,#11111111B     ;Button is unable
        ret
;-----------------------      
Cycle:
        ;----------------------
        clr        a
        movc       a,@a+dptr
        mov        r0,a
        inc        dptr
        ;----------------------
Loop:     
        clr        a
        movc       a,@a+dptr
        mov         Ledprt,a
        acall       delay
        inc        dptr
        djnz       r0,Loop
        ret
;-----------------------

;-----------------------
;delay section
delay:     mov        r5,#50
delay1:     mov        r6,#100
DELAY2:     mov        r7,#10
        djnz       r7,$
        djnz       r6,delay2
        djnz       r5,delay1
        ret
;-----------------------
Table1:     db        Table2-$-1
        db        11111110b
        db        11111101b
        db        11111011b
        db        11110111b
        db        11101111b
        db        11011111b
        db        10111111b
        db        01111111b
        
Table2:     db        Table3-$-1
        db        01111110b
        db        10111101b
        db        11011011b
        db        11100111b
        db        11011011b
        db        10111101b
                
Table3:     db        Table4-$-1   
        db        01010101b
        db        00000000b
        db        10101010b
        db        00000000b 
                
Table4:     db        TableEnd-$-1
        db        11111110b
        db        11111100b
        db        11111000b
        db        11110000b
        db        11100000b
        db        11000000b
        db        10000000b
        db        00000000b         
        db        00000001b
        db        00000011b
        db        00001111b
        db        00011111b
        db        00111111b
        db        01111111b
        db        11111111b                      
        
TableEnd:
;-----------------------
main:      mov        SegDisplay,#00H
        jb        button1,To2
        mov        SegDisplay,#01H
        Acall       Pattern1
To2:        
        jb        button2,To3
        mov        SegDisplay,#02H
        Acall       Pattern2
To3:        
        jb        button3,To4
        mov        SegDisplay,#03H
        Acall       Pattern3
To4:
        jb        button4,main
        mov        SegDisplay,#04H
        Acall       Pattern4
        
        ajmp       Main

;-----------------------
        end
;-------------------------------------------------------------
關(guān)閉窗口

相關(guān)文章