Rev 6 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download
CCS PCM C Compiler, Version 3.245, 27853 10-VI-06 10:23
Filename: D:\KAKLIK\programy\PIC_C\mereni\geiger\geiger.lst
ROM used: 346 words (8%)
Largest free fragment is 2048
RAM used: 10 (6%) at main() level
19 (11%) worst case
Stack: 2 locations
*
0000: MOVLW 00
0001: MOVWF 0A
0002: GOTO 0E1
0003: NOP
.................... #include "D:\KAKLIK\programy\PIC_C\mereni\geiger\geiger.h"
.................... #include <16F88.h>
.................... //////// Standard Header file for the PIC16F88 device ////////////////
.................... #device PIC16F88
.................... #list
....................
.................... #device adc=8
....................
.................... #FUSES NOWDT //No Watch Dog Timer
.................... #FUSES HS //High speed Osc (> 4mhz)
.................... #FUSES NOPUT //No Power Up Timer
.................... #FUSES MCLR //Master Clear pin enabled
.................... #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
.................... #FUSES NODEBUG //No Debug mode for ICD
.................... #FUSES NOPROTECT //Code not protected from reading
.................... #FUSES NOFCMEN //Fail-safe clock monitor disabled
.................... #FUSES NOIESO //Internal External Switch Over mode disabled
....................
.................... #use delay(clock=20000000)
00CD: MOVLW 24
00CE: MOVWF 04
00CF: MOVF 00,W
00D0: BTFSC 03.2
00D1: GOTO 0DF
00D2: MOVLW 06
00D3: MOVWF 78
00D4: CLRF 77
00D5: DECFSZ 77,F
00D6: GOTO 0D5
00D7: DECFSZ 78,F
00D8: GOTO 0D4
00D9: MOVLW 7B
00DA: MOVWF 77
00DB: DECFSZ 77,F
00DC: GOTO 0DB
00DD: DECFSZ 00,F
00DE: GOTO 0D2
00DF: BCF 0A.3
00E0: GOTO 156 (RETURN)
.................... #use rs232(baud=9600,parity=N,xmit=PIN_B3,rcv=PIN_B5,bits=8)
*
0004: BSF 03.5
0005: BCF 06.3
0006: BCF 03.5
0007: BCF 06.3
0008: MOVLW 08
0009: MOVWF 78
000A: NOP
000B: NOP
000C: NOP
000D: BSF 78.7
000E: GOTO 01E
000F: BCF 78.7
0010: RRF 2E,F
0011: BTFSC 03.0
0012: BSF 06.3
0013: BTFSS 03.0
0014: BCF 06.3
0015: BSF 78.6
0016: GOTO 01E
0017: BCF 78.6
0018: DECFSZ 78,F
0019: GOTO 010
001A: NOP
001B: NOP
001C: NOP
001D: BSF 06.3
001E: MOVLW A7
001F: MOVWF 04
0020: DECFSZ 04,F
0021: GOTO 020
0022: NOP
0023: NOP
0024: BTFSC 78.7
0025: GOTO 00F
0026: BTFSC 78.6
0027: GOTO 017
0028: RETLW 00
....................
....................
....................
....................
.................... void main()
.................... {
*
00E1: CLRF 04
00E2: MOVLW 1F
00E3: ANDWF 03,F
00E4: BSF 03.5
00E5: BCF 06.3
00E6: BCF 03.5
00E7: BSF 06.3
00E8: BSF 03.5
00E9: BCF 1F.4
00EA: BCF 1F.5
00EB: MOVF 1B,W
00EC: ANDLW 80
00ED: MOVWF 1B
00EE: MOVLW 07
00EF: MOVWF 1C
.................... unsigned int16 n;
....................
.................... setup_adc_ports(NO_ANALOGS|VSS_VDD);
00F0: BCF 1F.4
00F1: BCF 1F.5
00F2: MOVF 1B,W
00F3: ANDLW 80
00F4: MOVWF 1B
.................... setup_adc(ADC_OFF);
00F5: BCF 03.5
00F6: BCF 1F.0
.................... setup_spi(FALSE);
00F7: BCF 14.5
00F8: BSF 03.5
00F9: BCF 06.2
00FA: BSF 06.1
00FB: BCF 06.4
00FC: MOVLW 00
00FD: BCF 03.5
00FE: MOVWF 14
00FF: BSF 03.5
0100: MOVWF 14
.................... setup_timer_0(RTCC_EXT_H_TO_L|RTCC_DIV_1);
0101: MOVF 01,W
0102: ANDLW C7
0103: IORLW 38
0104: MOVWF 01
.................... setup_timer_1(T1_DISABLED|T1_DIV_BY_1);
0105: BCF 03.5
0106: CLRF 10
.................... setup_timer_2(T2_DISABLED,0,1);
0107: MOVLW 00
0108: MOVWF 78
0109: MOVWF 12
010A: MOVLW 00
010B: BSF 03.5
010C: MOVWF 12
.................... setup_ccp1(CCP_OFF);
010D: BSF 06.0
010E: BCF 03.5
010F: CLRF 17
0110: CLRF 17
.................... setup_comparator(A0_A2_A1_A2_OUT_ON_A3_A4);
0111: MOVLW 06
0112: BSF 03.5
0113: MOVWF 1C
0114: MOVF 05,W
0115: IORLW 07
0116: ANDLW E7
0117: MOVWF 05
0118: MOVLW 10
0119: MOVWF 77
011A: DECFSZ 77,F
011B: GOTO 11A
011C: NOP
011D: MOVF 1C,W
011E: BCF 03.5
011F: BCF 0D.6
.................... setup_vref(VREF_LOW|1|VREF_A2);
0120: MOVLW E1
0121: BSF 03.5
0122: MOVWF 1D
0123: BSF 05.2
.................... setup_oscillator(False);
0124: CLRF 0F
0125: MOVF 0F,W
....................
.................... n=0;
0126: BCF 03.5
0127: CLRF 22
0128: CLRF 21
.................... set_timer0(0);
0129: CLRF 01
.................... While(true)
.................... {
.................... printf("%Lu0, %u\n\r", n++, get_timer0());
012A: MOVF 22,W
012B: MOVWF 7A
012C: MOVF 21,W
012D: INCF 21,F
012E: BTFSC 03.2
012F: INCF 22,F
0130: MOVWF 23
0131: MOVF 7A,W
0132: MOVWF 24
0133: MOVF 01,W
0134: MOVWF 25
0135: MOVLW 10
0136: MOVWF 04
0137: MOVF 24,W
0138: MOVWF 27
0139: MOVF 23,W
013A: MOVWF 26
013B: GOTO 029
013C: MOVLW 30
013D: MOVWF 2E
013E: CALL 004
013F: MOVLW 2C
0140: MOVWF 2E
0141: CALL 004
0142: MOVLW 20
0143: MOVWF 2E
0144: CALL 004
0145: MOVF 25,W
0146: MOVWF 26
0147: MOVLW 1B
0148: MOVWF 27
0149: GOTO 097
014A: MOVLW 0A
014B: MOVWF 2E
014C: CALL 004
014D: MOVLW 0D
014E: MOVWF 2E
014F: CALL 004
.................... set_timer0(0);
0150: CLRF 01
.................... Delay_ms(10000);
0151: MOVLW 28
0152: MOVWF 23
0153: MOVLW FA
0154: MOVWF 24
0155: GOTO 0CD
0156: DECFSZ 23,F
0157: GOTO 153
.................... }
0158: GOTO 12A
.................... }
0159: SLEEP
Configuration Fuses:
Word 1: 3F2A HS NOWDT NOPUT MCLR NOBROWNOUT NOLVP NOCPD NOWRT NODEBUG CCPB0 NOPROTECT
Word 2: 3FFC NOFCMEN NOIESO