;Title "scrolling sign" ;list P=16F84A ; ; ------------------ ; CONFIGURATION FUSE ; ------------------ ; ; Program will display "JOSE HERNANDEZ TCI 86508" __CONFIG 0x3FFB Start ORG 0x00 ;This sets up the ports BSF 03,5 MOVLW 00h MOVWF 05h MOVWF 06h BCF 03,5 GOTO Run1 ;Table1 holds the hex values for each column of LEDs Table1 ADDWF 02h,1 ;Add W to Program Counter RETLW 00h RETLW 00h RETLW 00h RETLW 02h RETLW 01h RETLW 01h RETLW 7Eh;J RETLW 00h RETLW 00h RETLW 3Eh RETLW 41h RETLW 41h RETLW 41h RETLW 3Eh;O RETLW 00h RETLW 00h RETLW 32h RETLW 49h RETLW 49h RETLW 49h RETLW 26h;S RETLW 00h RETLW 00h RETLW 7Fh RETLW 49h RETLW 49h RETLW 49h RETLW 41h;E RETLW 00h RETLW 00h RETLW 00h RETLW 00h RETLW 00h RETLW 00h RETLW 7Fh RETLW 08h RETLW 08h RETLW 08h RETLW 7Fh;H RETLW 00h RETLW 00h RETLW 7Fh RETLW 49h RETLW 49h RETLW 49h RETLW 41h;E RETLW 00h RETLW 00h RETLW 7Fh RETLW 48h RETLW 4Ch RETLW 4Ah RETLW 31h;R RETLW 00h RETLW 00h RETLW 7Fh RETLW 20h RETLW 1Ch RETLW 02h RETLW 7Fh;N RETLW 00h RETLW 00h RETLW 3Fh RETLW 48h RETLW 48h RETLW 48h RETLW 3Fh;A RETLW 00h RETLW 00h RETLW 7Fh RETLW 20h RETLW 1Ch RETLW 02h RETLW 7Fh;N RETLW 00h RETLW 00h RETLW 7Fh RETLW 41h RETLW 41h RETLW 41h RETLW 3Eh;D RETLW 00h RETLW 00h RETLW 7Fh RETLW 49h RETLW 49h RETLW 49h RETLW 41h;E RETLW 00h RETLW 00h RETLW 43h RETLW 45h RETLW 49h RETLW 51h RETLW 61h;Z RETLW 00h RETLW 00h RETLW 00h RETLW 00h RETLW 00h RETLW 00h RETLW 40h RETLW 40h RETLW 7Fh RETLW 40h RETLW 40h;T RETLW 00h RETLW 00h RETLW 3Eh RETLW 41h RETLW 41h RETLW 41h RETLW 22h;C RETLW 00h RETLW 00h RETLW 41h RETLW 41h RETLW 7Fh RETLW 41h RETLW 41h;I RETLW 00h RETLW 00h RETLW 00h RETLW 00h RETLW 36h RETLW 49h RETLW 49h RETLW 49h RETLW 36h;8 RETLW 00h RETLW 00h RETLW 3Eh RETLW 49h RETLW 49h RETLW 49h RETLW 26h;6 RETLW 00h RETLW 00h RETLW 7Ah RETLW 49h RETLW 49h RETLW 49h RETLW 46h;5 RETLW 00h RETLW 00h RETLW 3Eh RETLW 41h RETLW 41h RETLW 41h RETLW 3Eh;0 RETLW 00h RETLW 00h RETLW 36h RETLW 49h RETLW 49h RETLW 49h RETLW 36h;8 RETLW 00h RETLW 00h RETLW 00h RETLW 00h RETLW 00h RETLW 0FFh Run1 CLRF 11h CLRF 12h CLRF 13h CLRF 14h CLRF 15h MOVLW 00 MOVWF 19h ;File 19h is the jump value for table Run2 MOVLW 40h MOVWF 18h ;File 18h counts the number of scans CALL Shift ; and controls the "run speed" INCF 19h,1 MOVF 19h,0 ;Put jump value into W CALL Table1 MOVWF 15h ;W contains table data - put it in 15h XORLW 0FFh ;If table value is FF, BTFSC 03,2 ; bit 2 of file 3 will be SET (=1) GOTO Run1 ;Start Table1 again Run3 DECFSZ 18h,1 ;Scan the display 40h times GOTO Run4 GOTO Run2 Run4 CALL Scan GOTO Run3 Scan BSF 05,1 ;Reset 4017 NOP BCF 05,1 MOVF 11h,0 ;Output the data at the 5 Ghost MOVWF 06h ; locations to the display CALL DelD MOVF 12h,0 MOVWF 06h CALL DelD MOVF 13h,0 MOVWF 06h CALL DelD MOVF 14h,0 MOVWF 06h CALL DelD MOVF 15h,0 MOVWF 06h CALL DelD RETURN ;SHIFT moves the data one place to the left to give the "movement" ;effect on the screen Shift MOVF 12h,0 ;Move file 12h to W MOVWF 11h ;Move W to file 11h MOVF 13h,0 ;Move file 13h to W MOVWF 12h ;Move W to file 12h MOVF 14h,0 ;Move file 14h to W MOVWF 13h ;Move W to file 13h MOVF 15h,0 ;Move file 15h to W MOVWF 14h ;Move W to file 14h RETURN DelD DECFSZ 1Bh,1 ;Delay for viewing the GOTO DelD ; column of LEDs MOVLW 00h MOVWF 06 Clk BSF 05,0 ;Clock the 4017 to NOP ; the next output BCF 05,0 RETURN END