CCS PCM C Compiler, Version 4.058s, 42064               02-III-08 00:13

               Filename: main.lst

               ROM used: 285 words (3%)
                         Largest free fragment is 2048
               RAM used: 11 (3%) at main() level
                         19 (5%) worst case
               Stack:    1 locations

*
0000:  MOVLW  00
0001:  MOVWF  0A
0002:  GOTO   076
0003:  NOP
.................... #include "C:\RS\Schmitt\main.h" 
.................... #include <16F876A.h> 
.................... //////// Standard Header file for the PIC16F876A device //////////////// 
.................... #device PIC16F876A 
.................... #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 BROWNOUT                    //Reset when brownout detected 
.................... #FUSES LVP                         //Low Voltage Programming on B3(PIC16) or B5(PIC18) 
.................... #FUSES NOCPD                       //No EE protection 
.................... #FUSES NOWRT                       //Program memory not write protected 
....................  
.................... #use delay(clock=4000000) 
.................... #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8) 
....................  
....................  
.................... #define mic input(PIN_A4) 
.................... #define LED_ON output_low(PIN_A0) 
.................... #define LED_OFF output_high(PIN_A0) 
....................  
.................... void main() 
.................... { 
0076:  CLRF   04
0077:  BCF    03.7
0078:  MOVLW  1F
0079:  ANDWF  03,F
007A:  MOVLW  19
007B:  BSF    03.5
007C:  MOVWF  19
007D:  MOVLW  A6
007E:  MOVWF  18
007F:  MOVLW  90
0080:  BCF    03.5
0081:  MOVWF  18
0082:  BSF    03.5
0083:  BSF    1F.0
0084:  BSF    1F.1
0085:  BSF    1F.2
0086:  BCF    1F.3
0087:  MOVLW  07
0088:  MOVWF  1C
....................    setup_adc_ports(NO_ANALOGS); 
*
008C:  BSF    03.5
008D:  BSF    1F.0
008E:  BSF    1F.1
008F:  BSF    1F.2
0090:  BCF    1F.3
....................    setup_adc(ADC_OFF); 
0091:  BCF    03.5
0092:  BCF    1F.0
....................    setup_spi(SPI_SS_DISABLED); 
*
0089:  MOVLW  FF
008A:  BCF    03.5
008B:  MOVWF  20
*
0093:  BCF    14.5
0094:  BCF    20.5
0095:  MOVF   20,W
0096:  BSF    03.5
0097:  MOVWF  07
0098:  BCF    03.5
0099:  BSF    20.4
009A:  MOVF   20,W
009B:  BSF    03.5
009C:  MOVWF  07
009D:  BCF    03.5
009E:  BCF    20.3
009F:  MOVF   20,W
00A0:  BSF    03.5
00A1:  MOVWF  07
00A2:  MOVLW  01
00A3:  BCF    03.5
00A4:  MOVWF  14
00A5:  MOVLW  00
00A6:  BSF    03.5
00A7:  MOVWF  14
....................    setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1); 
00A8:  MOVF   01,W
00A9:  ANDLW  C7
00AA:  IORLW  08
00AB:  MOVWF  01
....................    setup_timer_1(T1_INTERNAL|T1_DIV_BY_1); 
00AC:  MOVLW  85
00AD:  BCF    03.5
00AE:  MOVWF  10
....................    setup_timer_2(T2_DISABLED,0,1); 
00AF:  MOVLW  00
00B0:  MOVWF  78
00B1:  MOVWF  12
00B2:  MOVLW  00
00B3:  BSF    03.5
00B4:  MOVWF  12
....................    setup_comparator(NC_NC_NC_NC); 
00B5:  MOVLW  07
00B6:  MOVWF  1C
00B7:  MOVF   05,W
00B8:  MOVLW  03
00B9:  MOVWF  77
00BA:  DECFSZ 77,F
00BB:  GOTO   0BA
00BC:  MOVF   1C,W
00BD:  BCF    03.5
00BE:  BCF    0D.6
....................    setup_vref(FALSE); 
00BF:  BSF    03.5
00C0:  CLRF   1D
....................  
....................    while(TRUE) 
....................    { 
....................       while(mic); 
00C1:  BSF    05.4
00C2:  BCF    03.5
00C3:  BTFSS  05.4
00C4:  GOTO   0C7
00C5:  BSF    03.5
00C6:  GOTO   0C1
....................       while(!mic); 
00C7:  BSF    03.5
00C8:  BSF    05.4
00C9:  BCF    03.5
00CA:  BTFSS  05.4
00CB:  GOTO   0C7
....................       while(mic) 
....................       { 
00CC:  BSF    03.5
00CD:  BSF    05.4
00CE:  BCF    03.5
00CF:  BTFSS  05.4
00D0:  GOTO   0DD
....................          set_timer1(0); 
00D1:  CLRF   0F
00D2:  CLRF   0E
....................          LED_ON; 
00D3:  BSF    03.5
00D4:  BCF    05.0
00D5:  BCF    03.5
00D6:  BCF    05.0
....................          while(mic); 
00D7:  BSF    03.5
00D8:  BSF    05.4
00D9:  BCF    03.5
00DA:  BTFSC  05.4
00DB:  GOTO   0D7
....................       } 
00DC:  GOTO   0CC
....................       while(!mic) 
....................       { 
00DD:  BSF    03.5
00DE:  BSF    05.4
00DF:  BCF    03.5
00E0:  BTFSC  05.4
00E1:  GOTO   0EC
....................          LED_OFF; 
00E2:  BSF    03.5
00E3:  BCF    05.0
00E4:  BCF    03.5
00E5:  BSF    05.0
....................          while(!mic); 
00E6:  BSF    03.5
00E7:  BSF    05.4
00E8:  BCF    03.5
00E9:  BTFSS  05.4
00EA:  GOTO   0E6
....................       } 
00EB:  GOTO   0DD
....................       printf("Perioda %5Lu us.\n\r",get_timer1()); 
00EC:  MOVF   0F,W
00ED:  MOVWF  7A
00EE:  MOVF   0E,W
00EF:  MOVWF  77
00F0:  MOVF   0F,W
00F1:  SUBWF  7A,W
00F2:  BTFSS  03.2
00F3:  GOTO   0EC
00F4:  MOVF   77,W
00F5:  MOVWF  21
00F6:  MOVF   7A,W
00F7:  MOVWF  22
00F8:  CLRF   23
00F9:  MOVF   23,W
00FA:  CALL   004
00FB:  INCF   23,F
00FC:  MOVWF  77
00FD:  MOVF   77,W
00FE:  BTFSS  0C.4
00FF:  GOTO   0FE
0100:  MOVWF  19
0101:  MOVLW  08
0102:  SUBWF  23,W
0103:  BTFSS  03.2
0104:  GOTO   0F9
0105:  MOVLW  00
0106:  MOVWF  04
0107:  MOVF   22,W
0108:  MOVWF  25
0109:  MOVF   21,W
010A:  MOVWF  24
010B:  GOTO   01B
010C:  MOVLW  0C
010D:  MOVWF  24
010E:  MOVF   24,W
010F:  CALL   004
0110:  INCF   24,F
0111:  MOVWF  77
0112:  MOVF   77,W
0113:  BTFSS  0C.4
0114:  GOTO   113
0115:  MOVWF  19
0116:  MOVLW  12
0117:  SUBWF  24,W
0118:  BTFSS  03.2
0119:  GOTO   10E
....................    } 
011A:  BSF    03.5
011B:  GOTO   0C1
.................... } 
011C:  SLEEP

Configuration Fuses:
   Word  1: 3FF9   XT NOWDT NOPUT NODEBUG NOPROTECT BROWNOUT LVP NOCPD NOWRT