CCS PCM C Compiler, Version 4.058s, 42064 21-III-08 20:45
Filename: C:\RS\Prog\abcda\abcda.lst
ROM used: 239 words (3%)
Largest free fragment is 2048
RAM used: 9 (2%) at main() level
9 (2%) worst case
Stack: 1 locations
*
0000: MOVLW 00
0001: MOVWF 0A
0002: GOTO 048
0003: NOP
.................... #include "C:\RS\Prog\abcda\abcda.h"
.................... #include <16F877A.h>
.................... //////// Standard Header file for the PIC16F877A device ////////////////
.................... #device PIC16F877A
.................... #list
....................
.................... #device adc=8
....................
.................... #FUSES NOWDT //No Watch Dog Timer
.................... #FUSES XT //Crystal osc <= 4mhz
.................... #FUSES NOPUT //No Power Up Timer
.................... #FUSES NOPROTECT //Code not protected from reading
.................... #FUSES NODEBUG //No Debug mode for ICD
.................... #FUSES NOBROWNOUT //No brownout reset
.................... #FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
.................... #FUSES NOCPD //No EE protection
.................... #FUSES NOWRT //Program memory not write protected
....................
.................... #use delay(clock=4000000,RESTART_WDT)
0030: MOVLW 22
0031: MOVWF 04
0032: BCF 03.7
0033: MOVF 00,W
0034: BTFSC 03.2
0035: GOTO 047
0036: MOVLW 01
0037: MOVWF 78
0038: MOVLW BF
0039: MOVWF 77
003A: CLRWDT
003B: DECFSZ 77,F
003C: GOTO 03A
003D: DECFSZ 78,F
003E: GOTO 038
003F: MOVLW 4A
0040: MOVWF 77
0041: DECFSZ 77,F
0042: GOTO 041
0043: NOP
0044: CLRWDT
0045: DECFSZ 00,F
0046: GOTO 036
0047: RETLW 00
....................
....................
....................
....................
.................... void main()
.................... {
0048: CLRF 04
0049: BCF 03.7
004A: MOVLW 1F
004B: ANDWF 03,F
004C: BSF 03.5
004D: BSF 1F.0
004E: BSF 1F.1
004F: BSF 1F.2
0050: BCF 1F.3
0051: MOVLW 07
0052: MOVWF 1C
....................
.................... int cas;
....................
.................... const int8 A[7]={0b00000001,0b11110110,0b11110110,0b11110110,0b00000001,0b11111111,0b11111111};
.................... const int8 B[7]={0b00000000,0b01110110,0b01110110,0b01110110,0b10001001,0b11111111,0b11111111};
.................... const int8 C[7]={0b10000001,0b01111110,0b01111110,0b01111110,0b10111101,0b11111111,0b11111111};
.................... const int8 D[7]={0b00000000,0b01111110,0b01111110,0b01111110,0b10000001,0b11111111,0b11111111};
.................... const int8 E[7]={0b00000000,0b01110110,0b01110110,0b01111110,0b01111110,0b11111111,0b11111111};
.................... const int8 F[7]={0b00000000,0b11110110,0b11110110,0b11111110,0b11111110,0b11111111,0b11111111};
.................... const int8 G[7]={0b10000001,0b01111110,0b01110110,0b01110110,0b10000101,0b11111111,0b11111111};
.................... const int8 H[7]={0b00000000,0b11110111,0b11110111,0b11110111,0b00000000,0b11111111,0b11111111};
.................... const int8 I[7]={0b01111110,0b01111110,0b00000000,0b01111110,0b01111110,0b11111111,0b11111111};
.................... const int8 J[7]={0b10111110,0b01111110,0b01111110,0b01111110,0b10000000,0b11111111,0b11111111};
.................... const int8 K[7]={0b00000000,0b11110111,0b11110111,0b11101011,0b00011100,0b11111111,0b11111111};
.................... const int8 L[7]={0b00000000,0b01111111,0b01111111,0b01111111,0b01111111,0b11111111,0b11111111};
.................... const int8 M[7]={0b00000000,0b11111110,0b11110000,0b11111110,0b00000000,0b11111111,0b11111111};
.................... const int8 N[7]={0b00000000,0b11101111,0b11011111,0b10111111,0b00000000,0b11111111,0b11111111};
.................... const int8 O[7]={0b10000001,0b01111110,0b01111110,0b01111110,0b10000001,0b11111111,0b11111111};
.................... const int8 P[7]={0b00000000,0b11110110,0b11110110,0b11110110,0b11111001,0b11111111,0b11111111};
.................... const int8 Q[7]={0b10000001,0b01111110,0b01111110,0b01111110,0b00000001,0b01111111,0b11111111};
.................... const int8 R[7]={0b00000000,0b11110110,0b11110110,0b11110110,0b00001001,0b11111111,0b11111111};
.................... const int8 S[7]={0b10111001,0b01110110,0b01110110,0b01110110,0b10001101,0b11111111,0b11111111};
.................... const int8 T[7]={0b11111110,0b11111110,0b00000000,0b11111110,0b11111110,0b11111111,0b11111111};
.................... const int8 U[7]={0b10000000,0b01111111,0b01111111,0b01111111,0b10000000,0b11111111,0b11111111};
.................... const int8 V[7]={0b11000000,0b10111111,0b01111111,0b10111111,0b11000000,0b11111111,0b11111111};
.................... const int8 W[7]={0b10000000,0b01111111,0b10000000,0b01111111,0b10000000,0b11111111,0b11111111};
.................... const int8 X[7]={0b00011100,0b11101011,0b11110111,0b11101011,0b00011100,0b11111111,0b11111111};
.................... const int8 Y[7]={0b11111000,0b11110111,0b00000111,0b11110111,0b11111000,0b11111111,0b11111111};
.................... const int8 Z[7]={0b00011110,0b01101110,0b01110110,0b01111010,0b01111100,0b11111111,0b11111111};
.................... const int8 null [7]={0b00000000,0b01111110,0b01111110,0b01111110,0b00000000,0b11111111,0b11111111};
.................... const int8 one [7]={0b01111011,0b01111101,0b00000000,0b01111111,0b01111111,0b11111111,0b11111111};
.................... const int8 two [7]={0b00111101,0b01011110,0b01101110,0b01110110,0b01111001,0b11111111,0b11111111};
.................... const int8 three[7]={0b10111101,0b01111110,0b01110110,0b01110110,0b10001001,0b11111111,0b11111111};
.................... const int8 four [7]={0b11110000,0b11110111,0b11110111,0b00000001,0b11110111,0b11111111,0b11111111};
.................... const int8 five [7]={0b10111000,0b01110110,0b01110110,0b01110110,0b10001110,0b11111111,0b11111111};
.................... const int8 six [7]={0b10000001,0b01110110,0b01110110,0b01110110,0b10001101,0b11111111,0b11111111};
.................... const int8 seven[7]={0b11111110,0b11111110,0b00001110,0b11110110,0b11111000,0b11111111,0b11111111};
.................... const int8 eight[7]={0b10001001,0b01110110,0b01110110,0b01110110,0b10001001,0b11111111,0b11111111};
.................... const int8 nine [7]={0b10111001,0b01110110,0b01110110,0b01110110,0b10000001,0b11111111,0b11111111};
....................
.................... setup_adc_ports(NO_ANALOGS);
*
0056: BSF 03.5
0057: BSF 1F.0
0058: BSF 1F.1
0059: BSF 1F.2
005A: BCF 1F.3
.................... setup_adc(ADC_OFF);
005B: BCF 03.5
005C: BCF 1F.0
.................... setup_psp(PSP_DISABLED);
005D: BSF 03.5
005E: BCF 09.4
.................... setup_spi(SPI_SS_DISABLED);
*
0053: MOVLW FF
0054: BCF 03.5
0055: MOVWF 20
*
005F: BCF 03.5
0060: BCF 14.5
0061: BCF 20.5
0062: MOVF 20,W
0063: BSF 03.5
0064: MOVWF 07
0065: BCF 03.5
0066: BSF 20.4
0067: MOVF 20,W
0068: BSF 03.5
0069: MOVWF 07
006A: BCF 03.5
006B: BCF 20.3
006C: MOVF 20,W
006D: BSF 03.5
006E: MOVWF 07
006F: MOVLW 01
0070: BCF 03.5
0071: MOVWF 14
0072: MOVLW 00
0073: BSF 03.5
0074: MOVWF 14
.................... setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
0075: MOVF 01,W
0076: ANDLW C7
0077: IORLW 08
0078: MOVWF 01
.................... setup_timer_1(T1_DISABLED);
0079: BCF 03.5
007A: CLRF 10
.................... setup_timer_2(T2_DISABLED,0,1);
007B: MOVLW 00
007C: MOVWF 78
007D: MOVWF 12
007E: MOVLW 00
007F: BSF 03.5
0080: MOVWF 12
.................... setup_comparator(NC_NC_NC_NC);
0081: MOVLW 07
0082: MOVWF 1C
0083: MOVF 05,W
0084: CLRWDT
0085: MOVLW 02
0086: MOVWF 77
0087: DECFSZ 77,F
0088: GOTO 087
0089: GOTO 08A
008A: MOVF 1C,W
008B: BCF 03.5
008C: BCF 0D.6
.................... setup_vref(FALSE);
008D: BSF 03.5
008E: CLRF 1D
....................
.................... while(TRUE)
.................... {
.................... for(cas=0;cas<7;cas++)
008F: BCF 03.5
0090: CLRF 21
0091: MOVF 21,W
0092: SUBLW 06
0093: BTFSS 03.0
0094: GOTO 0A2
.................... {
.................... output_B(A[cas]);
0095: MOVF 21,W
0096: CALL 004
0097: MOVWF 22
0098: BSF 03.5
0099: CLRF 06
009A: BCF 03.5
009B: MOVF 22,W
009C: MOVWF 06
.................... delay_ms(1);
009D: MOVLW 01
009E: MOVWF 22
009F: CALL 030
.................... }
00A0: INCF 21,F
00A1: GOTO 091
.................... for(cas=0;cas<7;cas++)
00A2: CLRF 21
00A3: MOVF 21,W
00A4: SUBLW 06
00A5: BTFSS 03.0
00A6: GOTO 0B4
.................... {
.................... output_B(B[cas]);
00A7: MOVF 21,W
00A8: CALL 00F
00A9: MOVWF 22
00AA: BSF 03.5
00AB: CLRF 06
00AC: BCF 03.5
00AD: MOVF 22,W
00AE: MOVWF 06
.................... delay_ms(1);
00AF: MOVLW 01
00B0: MOVWF 22
00B1: CALL 030
.................... }
00B2: INCF 21,F
00B3: GOTO 0A3
.................... for(cas=0;cas<7;cas++)
00B4: CLRF 21
00B5: MOVF 21,W
00B6: SUBLW 06
00B7: BTFSS 03.0
00B8: GOTO 0C6
.................... {
.................... output_B(C[cas]);
00B9: MOVF 21,W
00BA: CALL 01A
00BB: MOVWF 22
00BC: BSF 03.5
00BD: CLRF 06
00BE: BCF 03.5
00BF: MOVF 22,W
00C0: MOVWF 06
.................... delay_ms(1);
00C1: MOVLW 01
00C2: MOVWF 22
00C3: CALL 030
.................... }
00C4: INCF 21,F
00C5: GOTO 0B5
.................... for(cas=0;cas<7;cas++)
00C6: CLRF 21
00C7: MOVF 21,W
00C8: SUBLW 06
00C9: BTFSS 03.0
00CA: GOTO 0D8
.................... {
.................... output_B(D[cas]);
00CB: MOVF 21,W
00CC: CALL 025
00CD: MOVWF 22
00CE: BSF 03.5
00CF: CLRF 06
00D0: BCF 03.5
00D1: MOVF 22,W
00D2: MOVWF 06
.................... delay_ms(1);
00D3: MOVLW 01
00D4: MOVWF 22
00D5: CALL 030
.................... }
00D6: INCF 21,F
00D7: GOTO 0C7
.................... for(cas=0;cas<7;cas++)
00D8: CLRF 21
00D9: MOVF 21,W
00DA: SUBLW 06
00DB: BTFSS 03.0
00DC: GOTO 0EA
.................... {
.................... output_B(A[cas]);
00DD: MOVF 21,W
00DE: CALL 004
00DF: MOVWF 22
00E0: BSF 03.5
00E1: CLRF 06
00E2: BCF 03.5
00E3: MOVF 22,W
00E4: MOVWF 06
.................... delay_ms(1);
00E5: MOVLW 01
00E6: MOVWF 22
00E7: CALL 030
.................... }
00E8: INCF 21,F
00E9: GOTO 0D9
.................... delay_ms(142);
00EA: MOVLW 8E
00EB: MOVWF 22
00EC: CALL 030
.................... }
00ED: GOTO 090
.................... }
00EE: SLEEP
Configuration Fuses:
Word 1: 3F39 XT NOWDT NOPUT NODEBUG NOPROTECT NOBROWNOUT NOLVP NOCPD NOWRT