Rev 6 | Blame | Last modification | View Log | Download
CCS PCM C Compiler, Version 3.221, 27853 27-XI-05 00:06Filename: D:\KAKLIK\programy\PIC_C\mereni\serva\PIC16F88\tester.LSTROM used: 301 words (7%)Largest free fragment is 2048RAM used: 7 (4%) at main() level8 (5%) worst caseStack: 1 locations*0000: MOVLW 000001: MOVWF 0A0002: GOTO 02C0003: NOP.................... #include "D:\KAKLIK\programy\PIC_C\mereni\serva\PIC16F88\tester.h".................... #include <16F88.h>.................... //////// Standard Header file for the PIC16F88 device ////////////////.................... #device PIC16F88.................... #list........................................ #device adc=8.................... #fuses NOWDT,INTRC_IO, NOPUT, MCLR, BROWNOUT, LVP, NOCPD, NOWRT, NODEBUG, NOPROTECT, FCMEN, IESO.................... #use delay(clock=4000000)0004: MOVLW 220005: MOVWF 040006: MOVF 00,W0007: BTFSC 03.20008: GOTO 0180009: MOVLW 01000A: MOVWF 78000B: CLRF 77000C: DECFSZ 77,F000D: GOTO 00C000E: DECFSZ 78,F000F: GOTO 00B0010: MOVLW 4A0011: MOVWF 770012: DECFSZ 77,F0013: GOTO 0120014: NOP0015: NOP0016: DECFSZ 00,F0017: GOTO 0090018: RETLW 000019: MOVLW 12001A: SUBWF 23,F001B: BTFSS 03.0001C: GOTO 02B001D: MOVLW 23001E: MOVWF 04001F: MOVLW FC0020: ANDWF 00,F0021: BCF 03.00022: RRF 00,F0023: RRF 00,F0024: MOVF 00,W0025: BTFSC 03.20026: GOTO 02B0027: GOTO 0290028: NOP0029: DECFSZ 00,F002A: GOTO 028002B: RETLW 00................................................................................ #DEFINE servo1 PIN_B1.................... #DEFINE servo2 PIN_A3.................... #DEFINE servo3 PIN_A2.................... #DEFINE servo4 PIN_A0.................... #DEFINE SW PIN_B2........................................ void main().................... {002C: CLRF 04002D: MOVLW 1F002E: ANDWF 03,F002F: BSF 03.50030: BCF 1F.40031: BCF 1F.50032: MOVF 1B,W0033: ANDLW 800034: MOVWF 1B0035: MOVLW 070036: MOVWF 1C0037: MOVF 1C,W0038: BCF 03.50039: BCF 0D.6003A: MOVLW 60003B: BSF 03.5003C: MOVWF 0F.................... int i;........................................ setup_adc_ports(NO_ANALOGS|VSS_VDD);003D: BCF 1F.4003E: BCF 1F.5003F: MOVF 1B,W0040: ANDLW 800041: MOVWF 1B.................... setup_adc(ADC_OFF);0042: BCF 03.50043: BCF 1F.0.................... setup_spi(FALSE);0044: BCF 14.50045: BSF 03.50046: BCF 06.20047: BSF 06.10048: BCF 06.40049: MOVLW 00004A: BCF 03.5004B: MOVWF 14004C: BSF 03.5004D: MOVWF 14.................... setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);004E: MOVF 01,W004F: ANDLW C70050: IORLW 080051: MOVWF 01.................... setup_timer_1(T1_DISABLED);0052: BCF 03.50053: CLRF 10.................... setup_timer_2(T2_DISABLED,0,1);0054: MOVLW 000055: MOVWF 780056: MOVWF 120057: MOVLW 000058: BSF 03.50059: MOVWF 12.................... setup_comparator(NC_NC_NC_NC);005A: MOVLW 07005B: MOVWF 1C005C: MOVF 05,W005D: MOVLW 03005E: MOVWF 77005F: DECFSZ 77,F0060: GOTO 05F0061: MOVF 1C,W0062: BCF 03.50063: BCF 0D.6.................... setup_vref(FALSE);0064: BSF 03.50065: CLRF 1D................................................................................ while(true).................... {.................... While(input(SW)).................... {0066: BSF 06.20067: BCF 03.50068: BTFSS 06.20069: GOTO 0B8.................... output_high(servo1);006A: BSF 03.5006B: BCF 06.1006C: BCF 03.5006D: BSF 06.1.................... Delay_us(1500);006E: MOVLW 01006F: MOVWF 220070: CALL 0040071: MOVLW 020072: MOVWF 220073: MOVLW F70074: MOVWF 230075: CALL 0190076: DECFSZ 22,F0077: GOTO 073.................... output_low(servo1);0078: BSF 03.50079: BCF 06.1007A: BCF 03.5007B: BCF 06.1........................................ output_high(servo2);007C: BSF 03.5007D: BCF 05.3007E: BCF 03.5007F: BSF 05.3.................... Delay_us(1500);0080: MOVLW 010081: MOVWF 220082: CALL 0040083: MOVLW 020084: MOVWF 220085: MOVLW F70086: MOVWF 230087: CALL 0190088: DECFSZ 22,F0089: GOTO 085.................... output_low(servo2);008A: BSF 03.5008B: BCF 05.3008C: BCF 03.5008D: BCF 05.3........................................ output_high(servo3);008E: BSF 03.5008F: BCF 05.20090: BCF 03.50091: BSF 05.2.................... Delay_us(1500);0092: MOVLW 010093: MOVWF 220094: CALL 0040095: MOVLW 020096: MOVWF 220097: MOVLW F70098: MOVWF 230099: CALL 019009A: DECFSZ 22,F009B: GOTO 097.................... output_low(servo3);009C: BSF 03.5009D: BCF 05.2009E: BCF 03.5009F: BCF 05.2........................................ output_high(servo4);00A0: BSF 03.500A1: BCF 05.000A2: BCF 03.500A3: BSF 05.0.................... Delay_us(1500);00A4: MOVLW 0100A5: MOVWF 2200A6: CALL 00400A7: MOVLW 0200A8: MOVWF 2200A9: MOVLW F700AA: MOVWF 2300AB: CALL 01900AC: DECFSZ 22,F00AD: GOTO 0A9.................... output_low(servo4);00AE: BSF 03.500AF: BCF 05.000B0: BCF 03.500B1: BCF 05.0........................................ Delay_ms(10);00B2: MOVLW 0A00B3: MOVWF 2200B4: CALL 004.................... }00B5: BSF 03.500B6: GOTO 06600B7: BCF 03.5........................................ While(!input(SW)).................... {00B8: BSF 03.500B9: BSF 06.200BA: BCF 03.500BB: BTFSC 06.200BC: GOTO 12A.................... for(i=0; i<100; ++i)00BD: CLRF 2100BE: MOVF 21,W00BF: SUBLW 6300C0: BTFSS 03.000C1: GOTO 0F3.................... {.................... output_high(servo1);00C2: BSF 03.500C3: BCF 06.100C4: BCF 03.500C5: BSF 06.1.................... Delay_us(1000);00C6: MOVLW 0100C7: MOVWF 2200C8: CALL 004.................... output_low(servo1);00C9: BSF 03.500CA: BCF 06.100CB: BCF 03.500CC: BCF 06.1........................................ output_high(servo2);00CD: BSF 03.500CE: BCF 05.300CF: BCF 03.500D0: BSF 05.3.................... Delay_us(1000);00D1: MOVLW 0100D2: MOVWF 2200D3: CALL 004.................... output_low(servo2);00D4: BSF 03.500D5: BCF 05.300D6: BCF 03.500D7: BCF 05.3........................................ output_high(servo3);00D8: BSF 03.500D9: BCF 05.200DA: BCF 03.500DB: BSF 05.2.................... Delay_us(1000);00DC: MOVLW 0100DD: MOVWF 2200DE: CALL 004.................... output_low(servo3);00DF: BSF 03.500E0: BCF 05.200E1: BCF 03.500E2: BCF 05.2........................................ output_high(servo4);00E3: BSF 03.500E4: BCF 05.000E5: BCF 03.500E6: BSF 05.0.................... Delay_us(1000);00E7: MOVLW 0100E8: MOVWF 2200E9: CALL 004.................... output_low(servo4);00EA: BSF 03.500EB: BCF 05.000EC: BCF 03.500ED: BCF 05.0........................................ Delay_ms(10);00EE: MOVLW 0A00EF: MOVWF 2200F0: CALL 004.................... }00F1: INCF 21,F00F2: GOTO 0BE........................................ for(i=0; i<100; ++i)00F3: CLRF 2100F4: MOVF 21,W00F5: SUBLW 6300F6: BTFSS 03.000F7: GOTO 129.................... {.................... output_high(servo1);00F8: BSF 03.500F9: BCF 06.100FA: BCF 03.500FB: BSF 06.1.................... Delay_us(2000);00FC: MOVLW 0200FD: MOVWF 2200FE: CALL 004.................... output_low(servo1);00FF: BSF 03.50100: BCF 06.10101: BCF 03.50102: BCF 06.1........................................ output_high(servo2);0103: BSF 03.50104: BCF 05.30105: BCF 03.50106: BSF 05.3.................... Delay_us(2000);0107: MOVLW 020108: MOVWF 220109: CALL 004.................... output_low(servo2);010A: BSF 03.5010B: BCF 05.3010C: BCF 03.5010D: BCF 05.3........................................ output_high(servo3);010E: BSF 03.5010F: BCF 05.20110: BCF 03.50111: BSF 05.2.................... Delay_us(2000);0112: MOVLW 020113: MOVWF 220114: CALL 004.................... output_low(servo3);0115: BSF 03.50116: BCF 05.20117: BCF 03.50118: BCF 05.2........................................ output_high(servo4);0119: BSF 03.5011A: BCF 05.0011B: BCF 03.5011C: BSF 05.0.................... Delay_us(2000);011D: MOVLW 02011E: MOVWF 22011F: CALL 004.................... output_low(servo4);0120: BSF 03.50121: BCF 05.00122: BCF 03.50123: BCF 05.0........................................ Delay_ms(10);0124: MOVLW 0A0125: MOVWF 220126: CALL 004.................... }0127: INCF 21,F0128: GOTO 0F4.................... }0129: GOTO 0B8.................... }012A: BSF 03.5012B: GOTO 066........................................ }....................012C: SLEEPConfiguration Fuses:Word 1: 3FF8 NOWDT NOPUT MCLR BROWNOUT LVP NOCPD NOWRT NODEBUG CCPB0 NOPROTECT INTRC_IOWord 2: 3FFF FCMEN IESO