miyago icon

lightshowAC

miyago | PRO | 03/14/18 10:47:18 AM UTC | 0 ⭐ | 12532 👁️ | Never ⏰ | []
ASM (NASM) |

0 B

|

None

|

0 👍

/

0 👎

#include "p18F4520.inc"
    
    CONFIG OSC = HS
    CONFIG PWRT = OFF
    CONFIG WDT = OFF
    CONFIG PBADEN = OFF
    CONFIG LVP = OFF
    
    org 000000H
PORST   GOTO MAIN
    
    org 000020H
    ;*******COL toolbox 1.1 AC******
    
IC8COL      equ     0x070
      
EC8INIT     BCF     TRISA,1     ; A1 Out for Col 1
            BCF     TRISA,2     ; A2 Out for Col 2
            BCF     TRISA,3     ; A3 Out for Col 3
            BCF     TRISA,5     ; A5 Out for Col 4
            BCF     TRISE,0     ; E0 Out for Col 5
            BCF     TRISE,1     ; E1 Out for Col 6
            BCF     TRISE,2     ; E2 Out for Col 7
            BCF     TRISC,0     ; C0 Out for Col 8
            CLRF    IC8COL      ; Börja på Col1
            CALL    EC8FREE     ; Turn off Col 1-8
            RETURN
            
EC8COLQ     MOVF    IC8COL,W    ; Returns current Col
            RETURN
            
EC8NXTQ     INCF    IC8COL,W    ; Return next Col
            BTFSC   WREG,3      ; Kolla om vi nått Col8
            CLRF    WREG        ; Börja om om vi var på Col8
            RETURN
            
EC8FREE     BCF     LATA,1     ; Stänger av alla portar
            BCF     LATA,2
            BCF     LATA,3
            BCF     LATA,5
            BCF     LATE,0
            BCF     LATE,1
            BCF     LATE,2
            BCF     LATC,0
            RETURN
            
EC8NEXT     CALL    EC8NXTQ     ; Gå till nästa column
            MOVWF   IC8COL
            
            RLNCF   WREG
            RLNCF   WREG
            ADDWF   PCL
            BSF     LATA,1
            RETURN
            BSF     LATA,2
            RETURN
            BSF     LATA,3
            RETURN
            BSF     LATA,5
            RETURN            
            BSF     LATE,0
            RETURN
            BSF     LATE,1
            RETURN
            BSF     LATE,2
            RETURN
            BSF     LATC,0
            RETURN                       
;*******NO MORE TOOLBOX********
 
;----Quick DELAY------------------
IDONCE  equ 0x072
 
QDELAY  MOVLW   0xFF
        MOVWF   IDONCE
QLOOP   DECFSZ  IDONCE
    GOTO    QLOOP
        RETURN
;----END OF QUICK DELAY------------------        
 
S88DISP equ     0x020
 
;__EXTERNAL E88INIT
E88INIT     CLRF    TRISD
            LFSR    0,S88DISP
            CLRF    S88DISP+0
            CLRF    S88DISP+1
            CLRF    S88DISP+2
            CLRF    S88DISP+3
            CLRF    S88DISP+4
            CLRF    S88DISP+5
            CLRF    S88DISP+6
            CLRF    S88DISP+7
            RETURN
;__EXTERNAL E88VIEW
E88VIEW     MOVFF   PLUSW0,LATD
        RETURN
 
;__LIGHT SHOW TOOLBOX___________________________________________________________
I60CNTL equ     0x074
I60CNTH equ     0x075
 
E60INIT     MOVLW   0x81
            SETF    S88DISP+0
            MOVWF   S88DISP+1
            MOVWF   S88DISP+2
            MOVWF   S88DISP+3
            MOVWF   S88DISP+4
            MOVWF   S88DISP+5
            MOVWF   S88DISP+6
            SETF    S88DISP+7
            CLRF    I60CNTL
            MOVLW   0x08
            MOVWF   I60CNTH
            RETURN
            
E60NEXT     DECFSZ  I60CNTL
            RETURN
            DECFSZ  I60CNTH
            RETURN
            
            MOVLW   0x08
            MOVWF   I60CNTH
            COMF    S88DISP+0
            COMF    S88DISP+1
            COMF    S88DISP+2
            COMF    S88DISP+3
            COMF    S88DISP+4
            COMF    S88DISP+5
            COMF    S88DISP+6
            COMF    S88DISP+7
            RETURN
;__END LSTB_____________________________________________________________________
 
;___
    MAIN    CALL    EC8INIT
            CALL    E88INIT
            CALL    E60INIT
            
 
    MLOOP   CALL    EC8NXTQ         ; 7 segment display som står på tur
            CALL    E88VIEW         ; Laddas med sitt innehåll från FSR
            CALL    EC8NEXT         ; Tänd den
            CALL    QDELAY          ; Lys
            CALL    EC8FREE         ; Släck
            CALL    E60NEXT         ; Rotera mönster
            GOTO    MLOOP
    
    END

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎

    
        
  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎