Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #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
Advertisement