Rev 410 | Blame | Compare with Previous | Last modification | View Log | Download
CCS PCW C Compiler, Version 3.110, 15448Filename: d:\@kaklik\programy\pic_c\mereni\serva\main.LSTROM used: 239 (23%)Largest free fragment is 785RAM used: 4 (6%) at main() level5 (7%) worst caseStack: 1 locations*0000: MOVLW 000001: MOVWF 0A0002: GOTO 0270003: NOP.................... #include "D:\@Kaklik\programy\PIC_C\mereni\serva\main.h".................... #include <16F84.h>.................... //////// Standard Header file for the PIC16F84 device ////////////////.................... #device PIC16F84.................... #list........................................ #use delay(clock=4000000)0004: MOVLW 100005: MOVWF 040006: MOVF 00,W0007: BTFSC 03.20008: GOTO 0180009: MOVLW 01000A: MOVWF 0D000B: CLRF 0C000C: DECFSZ 0C,F000D: GOTO 00C000E: DECFSZ 0D,F000F: GOTO 00B0010: MOVLW 4A0011: MOVWF 0C0012: DECFSZ 0C,F0013: GOTO 0120014: NOP0015: NOP0016: DECFSZ 00,F0017: GOTO 0090018: RETLW 000019: MOVLW 11001A: MOVWF 04001B: MOVLW FC001C: ANDWF 00,F001D: RRF 00,F001E: RRF 00,F001F: MOVF 00,W0020: BTFSC 03.20021: GOTO 0260022: GOTO 0240023: NOP0024: DECFSZ 00,F0025: GOTO 0230026: RETLW 00.................... #fuses XT,NOWDT............................................................ #DEFINE servo1 PIN_A4.................... #DEFINE servo2 PIN_A3.................... #DEFINE servo3 PIN_A2.................... #DEFINE servo4 PIN_A0.................... #DEFINE SW PIN_A1........................................ void main().................... {.................... int i;0027: CLRF 040028: MOVLW 1F0029: ANDWF 03,F........................................ while(true).................... {.................... While(input(SW))002A: BSF 03.5002B: BSF 05.1002C: BCF 03.5002D: BTFSS 05.1002E: GOTO 07B.................... {.................... output_high(servo1);002F: BSF 03.50030: BCF 05.40031: BCF 03.50032: BSF 05.4.................... Delay_us(1500);0033: MOVLW 010034: MOVWF 100035: CALL 0040036: MOVLW 020037: MOVWF 100038: MOVLW EC0039: MOVWF 11003A: CALL 019003B: DECFSZ 10,F003C: GOTO 038.................... output_low(servo1);003D: BSF 03.5003E: BCF 05.4003F: BCF 03.50040: BCF 05.4........................................ output_high(servo2);0041: BSF 03.50042: BCF 05.30043: BCF 03.50044: BSF 05.3.................... Delay_us(1500);0045: MOVLW 010046: MOVWF 100047: CALL 0040048: MOVLW 020049: MOVWF 10004A: MOVLW EC004B: MOVWF 11004C: CALL 019004D: DECFSZ 10,F004E: GOTO 04A.................... output_low(servo2);004F: BSF 03.50050: BCF 05.30051: BCF 03.50052: BCF 05.3........................................ output_high(servo3);0053: BSF 03.50054: BCF 05.20055: BCF 03.50056: BSF 05.2.................... Delay_us(1500);0057: MOVLW 010058: MOVWF 100059: CALL 004005A: MOVLW 02005B: MOVWF 10005C: MOVLW EC005D: MOVWF 11005E: CALL 019005F: DECFSZ 10,F0060: GOTO 05C.................... output_low(servo3);0061: BSF 03.50062: BCF 05.20063: BCF 03.50064: BCF 05.2........................................ output_high(servo4);0065: BSF 03.50066: BCF 05.00067: BCF 03.50068: BSF 05.0.................... Delay_us(1500);0069: MOVLW 01006A: MOVWF 10006B: CALL 004006C: MOVLW 02006D: MOVWF 10006E: MOVLW EC006F: MOVWF 110070: CALL 0190071: DECFSZ 10,F0072: GOTO 06E.................... output_low(servo4);0073: BSF 03.50074: BCF 05.00075: BCF 03.50076: BCF 05.0........................................ Delay_ms(10);0077: MOVLW 0A0078: MOVWF 100079: CALL 004.................... }007A: GOTO 02A........................................ While(!input(SW))007B: BSF 03.5007C: BSF 05.1007D: BCF 03.5007E: BTFSC 05.1007F: GOTO 0ED.................... {.................... for(i=0; i<100; ++i)0080: CLRF 0F0081: MOVF 0F,W0082: SUBLW 630083: BTFSS 03.00084: GOTO 0B6.................... {.................... output_high(servo1);0085: BSF 03.50086: BCF 05.40087: BCF 03.50088: BSF 05.4.................... Delay_us(1000);0089: MOVLW 01008A: MOVWF 10008B: CALL 004.................... output_low(servo1);008C: BSF 03.5008D: BCF 05.4008E: BCF 03.5008F: BCF 05.4........................................ output_high(servo2);0090: BSF 03.50091: BCF 05.30092: BCF 03.50093: BSF 05.3.................... Delay_us(1000);0094: MOVLW 010095: MOVWF 100096: CALL 004.................... output_low(servo2);0097: BSF 03.50098: BCF 05.30099: BCF 03.5009A: BCF 05.3........................................ output_high(servo3);009B: BSF 03.5009C: BCF 05.2009D: BCF 03.5009E: BSF 05.2.................... Delay_us(1000);009F: MOVLW 0100A0: MOVWF 1000A1: CALL 004.................... output_low(servo3);00A2: BSF 03.500A3: BCF 05.200A4: BCF 03.500A5: BCF 05.2........................................ output_high(servo4);00A6: BSF 03.500A7: BCF 05.000A8: BCF 03.500A9: BSF 05.0.................... Delay_us(1000);00AA: MOVLW 0100AB: MOVWF 1000AC: CALL 004.................... output_low(servo4);00AD: BSF 03.500AE: BCF 05.000AF: BCF 03.500B0: BCF 05.0........................................ Delay_ms(10);00B1: MOVLW 0A00B2: MOVWF 1000B3: CALL 004.................... }00B4: INCF 0F,F00B5: GOTO 081........................................ for(i=0; i<100; ++i)00B6: CLRF 0F00B7: MOVF 0F,W00B8: SUBLW 6300B9: BTFSS 03.000BA: GOTO 0EC.................... {.................... output_high(servo1);00BB: BSF 03.500BC: BCF 05.400BD: BCF 03.500BE: BSF 05.4.................... Delay_us(2000);00BF: MOVLW 0200C0: MOVWF 1000C1: CALL 004.................... output_low(servo1);00C2: BSF 03.500C3: BCF 05.400C4: BCF 03.500C5: BCF 05.4........................................ output_high(servo2);00C6: BSF 03.500C7: BCF 05.300C8: BCF 03.500C9: BSF 05.3.................... Delay_us(2000);00CA: MOVLW 0200CB: MOVWF 1000CC: CALL 004.................... output_low(servo2);00CD: BSF 03.500CE: BCF 05.300CF: BCF 03.500D0: BCF 05.3........................................ output_high(servo3);00D1: BSF 03.500D2: BCF 05.200D3: BCF 03.500D4: BSF 05.2.................... Delay_us(2000);00D5: MOVLW 0200D6: MOVWF 1000D7: CALL 004.................... output_low(servo3);00D8: BSF 03.500D9: BCF 05.200DA: BCF 03.500DB: BCF 05.2........................................ output_high(servo4);00DC: BSF 03.500DD: BCF 05.000DE: BCF 03.500DF: BSF 05.0.................... Delay_us(2000);00E0: MOVLW 0200E1: MOVWF 1000E2: CALL 004.................... output_low(servo4);00E3: BSF 03.500E4: BCF 05.000E5: BCF 03.500E6: BCF 05.0........................................ Delay_ms(10);00E7: MOVLW 0A00E8: MOVWF 1000E9: CALL 004.................... }00EA: INCF 0F,F00EB: GOTO 0B7.................... }00EC: GOTO 07B.................... }00ED: GOTO 02A.................... }....................00EE: SLEEP