CCS PCM C Compiler, Version 4.106, 47914 12-4-13 14:16Filename: C:\Users\Honza\Documents\pic\I2C_klavesnice\main.lstROM used: 963 words (12%)Largest free fragment is 2048RAM used: 7 (2%) at main() level35 (10%) worst caseStack: 2 locations*0000: MOVLW 020001: MOVWF 0A0002: GOTO 2730003: NOP.................... #include "C:\Users\Honza\Documents\pic\I2C_klavesnice\main.h".................... #include <16F887.h>.................... //////// Standard Header file for the PIC16F887 device ////////////////.................... #device PIC16F887.................... #list........................................ #device adc=8........................................ #FUSES NOWDT //No Watch Dog Timer.................... #FUSES INTRC //Internal RC Osc.................... #FUSES NOPUT //No Power Up Timer.................... #FUSES MCLR //Master Clear pin enabled.................... #FUSES NOPROTECT //Code not protected from reading.................... #FUSES NOCPD //No EE protection.................... #FUSES NOBROWNOUT //No brownout reset.................... #FUSES IESO //Internal External Switch Over mode enabled.................... #FUSES FCMEN //Fail-safe clock monitor enabled.................... #FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O.................... #FUSES NODEBUG //No Debug mode for ICD.................... #FUSES NOWRT //Program memory not write protected.................... #FUSES BORV40 //Brownout reset at 4.0V........................................ #use delay(clock=8000000)*025D: MOVLW 35025E: MOVWF 04025F: BCF 03.70260: MOVF 00,W0261: BTFSC 03.20262: GOTO 2700263: MOVLW 020264: MOVWF 780265: CLRF 770266: DECFSZ 77,F0267: GOTO 2660268: DECFSZ 78,F0269: GOTO 265026A: MOVLW 97026B: MOVWF 77026C: DECFSZ 77,F026D: GOTO 26C026E: DECFSZ 00,F026F: GOTO 2630270: BCF 0A.30271: BCF 0A.40272: GOTO 3BF (RETURN)................................................................................ //For AKCE.................... //ADRESA pro èteni 0x39.................... //pro zápis 0x38............................................................ #define EEPROM_SDA PIN_B0.................... #define EEPROM_SCL PIN_B1.................... #use i2c(master, sda=EEPROM_SDA, scl=EEPROM_SCL)*00A9: MOVLW 0800AA: MOVWF 7800AB: NOP00AC: BCF 06.100AD: BSF 03.500AE: BCF 06.100AF: NOP00B0: BCF 03.500B1: RLF 34,F00B2: BCF 06.000B3: BTFSS 03.000B4: GOTO 0B800B5: BSF 03.500B6: BSF 06.000B7: BCF 03.500B8: BTFSC 03.000B9: GOTO 0BD00BA: BSF 03.500BB: BCF 06.000BC: BCF 03.500BD: BSF 03.500BE: BSF 06.100BF: BCF 03.500C0: BTFSS 06.100C1: GOTO 0C000C2: DECFSZ 78,F00C3: GOTO 0AB00C4: NOP00C5: BCF 06.100C6: BSF 03.500C7: BCF 06.100C8: NOP00C9: BSF 06.000CA: NOP00CB: NOP00CC: BSF 06.100CD: BCF 03.500CE: BTFSS 06.100CF: GOTO 0CE00D0: CLRF 7800D1: NOP00D2: BTFSC 06.000D3: BSF 78.000D4: BCF 06.100D5: BSF 03.500D6: BCF 06.100D7: BCF 03.500D8: BCF 06.000D9: BSF 03.500DA: BCF 06.000DB: BCF 03.500DC: RETURN00DD: MOVLW 0800DE: MOVWF 3500DF: MOVF 77,W00E0: MOVWF 3600E1: BSF 03.500E2: BSF 06.000E3: NOP00E4: BSF 06.100E5: BCF 03.500E6: BTFSS 06.100E7: GOTO 0E600E8: BTFSC 06.000E9: BSF 03.000EA: BTFSS 06.000EB: BCF 03.000EC: RLF 78,F00ED: NOP00EE: BSF 03.500EF: BCF 06.100F0: BCF 03.500F1: BCF 06.100F2: DECFSZ 35,F00F3: GOTO 0E100F4: BSF 03.500F5: BSF 06.000F6: NOP00F7: BCF 03.500F8: BCF 06.000F9: MOVF 36,W00FA: BTFSC 03.200FB: GOTO 0FF00FC: BSF 03.500FD: BCF 06.000FE: BCF 03.500FF: NOP0100: BSF 03.50101: BSF 06.10102: BCF 03.50103: BTFSS 06.10104: GOTO 1030105: NOP0106: BCF 06.10107: BSF 03.50108: BCF 06.10109: NOP010A: BCF 03.5010B: BCF 06.0010C: BSF 03.5010D: BCF 06.0010E: BCF 03.5010F: BCF 0A.30110: BCF 0A.40111: GOTO 33C (RETURN).................... #use rs232(baud=9600,parity=N,xmit=PIN_B3,rcv=PIN_B2,bits=8) //rcv TXD xmit RXD*003F: BSF 03.50040: BCF 06.30041: BCF 03.50042: BCF 06.30043: MOVLW 080044: MOVWF 780045: GOTO 0460046: NOP0047: BSF 78.70048: GOTO 0570049: BCF 78.7004A: RRF 3D,F004B: BTFSC 03.0004C: BSF 06.3004D: BTFSS 03.0004E: BCF 06.3004F: BSF 78.60050: GOTO 0570051: BCF 78.60052: DECFSZ 78,F0053: GOTO 04A0054: GOTO 0550055: NOP0056: BSF 06.30057: MOVLW 3F0058: MOVWF 040059: DECFSZ 04,F005A: GOTO 059005B: NOP005C: BTFSC 78.7005D: GOTO 049005E: BTFSC 78.6005F: GOTO 0510060: RETURN............................................................ void main().................... {*003E: DATA 00,00*0273: CLRF 040274: BCF 03.70275: MOVLW 1F0276: ANDWF 03,F0277: MOVLW 710278: BSF 03.50279: MOVWF 0F027A: MOVF 0F,W027B: BCF 06.3027C: BCF 03.5027D: BSF 06.3027E: BSF 03.5027F: BSF 03.60280: MOVF 09,W0281: ANDLW C00282: MOVWF 090283: BCF 03.60284: BCF 1F.40285: BCF 1F.50286: MOVLW 000287: BSF 03.60288: MOVWF 080289: BCF 03.5028A: CLRF 07028B: CLRF 08028C: CLRF 09........................................ setup_adc_ports(NO_ANALOGS|VSS_VDD);*0290: BSF 03.50291: BSF 03.60292: MOVF 09,W0293: ANDLW C00294: MOVWF 090295: BCF 03.60296: BCF 1F.40297: BCF 1F.50298: MOVLW 000299: BSF 03.6029A: MOVWF 08.................... setup_adc(ADC_CLOCK_DIV_2);029B: BCF 03.5029C: BCF 03.6029D: BCF 1F.6029E: BCF 1F.7029F: BSF 03.502A0: BCF 1F.702A1: BCF 03.502A2: BSF 1F.0.................... setup_spi(SPI_SS_DISABLED);02A3: BCF 14.502A4: BCF 20.502A5: MOVF 20,W02A6: BSF 03.502A7: MOVWF 0702A8: BCF 03.502A9: BSF 20.402AA: MOVF 20,W02AB: BSF 03.502AC: MOVWF 0702AD: BCF 03.502AE: BCF 20.302AF: MOVF 20,W02B0: BSF 03.502B1: MOVWF 0702B2: MOVLW 0102B3: BCF 03.502B4: MOVWF 1402B5: MOVLW 0002B6: BSF 03.502B7: MOVWF 14.................... setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);02B8: MOVF 01,W02B9: ANDLW C702BA: IORLW 0802BB: MOVWF 01.................... setup_timer_1(T1_DISABLED);02BC: BCF 03.502BD: CLRF 10.................... setup_timer_2(T2_DISABLED,0,1);02BE: MOVLW 0002BF: MOVWF 7802C0: MOVWF 1202C1: MOVLW 0002C2: BSF 03.502C3: MOVWF 12.................... setup_ccp1(CCP_OFF);02C4: BCF 03.502C5: BSF 20.202C6: MOVF 20,W02C7: BSF 03.502C8: MOVWF 0702C9: BCF 03.502CA: CLRF 1702CB: BSF 03.502CC: CLRF 1B02CD: CLRF 1C02CE: MOVLW 0102CF: MOVWF 1D.................... setup_comparator(NC_NC_NC_NC);// This device COMP currently not supported by the PICWizard02D0: BCF 03.502D1: BSF 03.602D2: CLRF 0702D3: CLRF 0802D4: CLRF 09........................................ printf("Simple Thermomether \r\n",);02D5: MOVLW 0402D6: MOVWF 0D02D7: MOVLW 0002D8: MOVWF 0F02D9: BCF 03.602DA: GOTO 061........................................ int16 data1, data2, data3;.................... signed int16 X, Y, Z;........................................ unsigned int8 XL,XH,YL,YH,ZL,ZH;............................................................ while(TRUE).................... {........................................ data1=0;02DB: CLRF 2202DC: CLRF 21.................... data2=0 ;02DD: CLRF 2402DE: CLRF 23............................................................ //akcelerometr.................... int1 ack;.................... i2c_start(); // If the write command is acknowledged,02DF: BSF 03.502E0: BSF 06.002E1: NOP02E2: BSF 06.102E3: NOP02E4: BCF 03.502E5: BCF 06.002E6: BSF 03.502E7: BCF 06.002E8: NOP02E9: BCF 03.502EA: BCF 06.102EB: BSF 03.502EC: BCF 06.1.................... ack = i2c_write(0xB4);//hen the device is ready.02ED: MOVLW B402EE: BCF 03.502EF: MOVWF 3402F0: CALL 0A902F1: MOVF 78,W02F2: BCF 33.002F3: BTFSC 78.002F4: BSF 33.0.................... i2c_stop();02F5: BSF 03.502F6: BCF 06.002F7: NOP02F8: BSF 06.102F9: BCF 03.502FA: BTFSS 06.102FB: GOTO 2FA02FC: NOP02FD: GOTO 2FE02FE: NOP02FF: BSF 03.50300: BSF 06.00301: NOP.................... ack=!ack;0302: MOVLW 010303: BCF 03.50304: XORWF 33,F................................................................................ i2c_stop();0305: BSF 03.50306: BCF 06.00307: NOP0308: BSF 06.10309: BCF 03.5030A: BTFSS 06.1030B: GOTO 30A030C: NOP030D: GOTO 30E030E: NOP030F: BSF 03.50310: BSF 06.00311: NOP........................................ i2c_start();0312: BSF 06.00313: NOP0314: BSF 06.10315: NOP0316: BCF 03.50317: BCF 06.00318: BSF 03.50319: BCF 06.0031A: NOP031B: BCF 03.5031C: BCF 06.1031D: BSF 03.5031E: BCF 06.1.................... I2C_Write(0xB5);031F: MOVLW B50320: BCF 03.50321: MOVWF 340322: CALL 0A9.................... I2C_write(0x04);0323: MOVLW 040324: MOVWF 340325: CALL 0A9.................... // i2c_stop();.................... i2c_start();0326: BSF 03.50327: BSF 06.00328: NOP0329: BSF 06.1032A: NOP032B: BCF 03.5032C: BTFSS 06.1032D: GOTO 32C032E: BCF 06.0032F: BSF 03.50330: BCF 06.00331: NOP0332: BCF 03.50333: BCF 06.10334: BSF 03.50335: BCF 06.1.................... I2C_Write(0xB4);0336: MOVLW B40337: BCF 03.50338: MOVWF 340339: CALL 0A9.................... XH=i2c_read(0);033A: CLRF 77033B: GOTO 0DD033C: MOVF 78,W033D: MOVWF 2E.................... i2c_stop();033E: BSF 03.5033F: BCF 06.00340: NOP0341: BSF 06.10342: BCF 03.50343: BTFSS 06.10344: GOTO 3430345: NOP0346: GOTO 3470347: NOP0348: BSF 03.50349: BSF 06.0034A: NOP............................................................ printf("Stav: %d (procenta)\r\n", ack);034B: MOVLW 00034C: BCF 03.5034D: BTFSC 33.0034E: MOVLW 01034F: MOVWF 340350: MOVLW 100351: BSF 03.60352: MOVWF 0D0353: MOVLW 000354: MOVWF 0F0355: BCF 03.00356: MOVLW 060357: BCF 03.60358: MOVWF 350359: CALL 112035A: MOVF 34,W035B: MOVWF 35035C: MOVLW 1F035D: MOVWF 36035E: GOTO 176035F: MOVLW 140360: BSF 03.60361: MOVWF 0D0362: MOVLW 000363: MOVWF 0F0364: BCF 03.00365: MOVLW 0D0366: BCF 03.60367: MOVWF 350368: CALL 112........................................ printf("Stavx: %Ld(procenta)\r\n", X);0369: MOVLW 1B036A: BSF 03.6036B: MOVWF 0D036C: MOVLW 00036D: MOVWF 0F036E: BCF 03.0036F: MOVLW 070370: BCF 03.60371: MOVWF 350372: CALL 1120373: MOVLW 100374: MOVWF 040375: MOVF 28,W0376: MOVWF 350377: MOVF 27,W0378: MOVWF 340379: CALL 1DD037A: MOVLW 20037B: BSF 03.6037C: MOVWF 0D037D: MOVLW 00037E: MOVWF 0F037F: BCF 03.00380: MOVLW 0C0381: BCF 03.60382: MOVWF 350383: CALL 112.................... printf("Stavy: %Ld(procenta)\r\n", Y);0384: MOVLW 270385: BSF 03.60386: MOVWF 0D0387: MOVLW 000388: MOVWF 0F0389: BCF 03.0038A: MOVLW 07038B: BCF 03.6038C: MOVWF 35038D: CALL 112038E: MOVLW 10038F: MOVWF 040390: MOVF 2A,W0391: MOVWF 350392: MOVF 29,W0393: MOVWF 340394: CALL 1DD0395: MOVLW 2C0396: BSF 03.60397: MOVWF 0D0398: MOVLW 000399: MOVWF 0F039A: BCF 03.0039B: MOVLW 0C039C: BCF 03.6039D: MOVWF 35039E: CALL 112.................... printf("Stavz: %Ld(procenta)\r\n", Z);039F: MOVLW 3303A0: BSF 03.603A1: MOVWF 0D03A2: MOVLW 0003A3: MOVWF 0F03A4: BCF 03.003A5: MOVLW 0703A6: BCF 03.603A7: MOVWF 3503A8: CALL 11203A9: MOVLW 1003AA: MOVWF 0403AB: MOVF 2C,W03AC: MOVWF 3503AD: MOVF 2B,W03AE: MOVWF 3403AF: CALL 1DD03B0: MOVLW 3803B1: BSF 03.603B2: MOVWF 0D03B3: MOVLW 0003B4: MOVWF 0F03B5: BCF 03.003B6: MOVLW 0C03B7: BCF 03.603B8: MOVWF 3503B9: CALL 112........................................ delay_ms (2000);03BA: MOVLW 0803BB: MOVWF 3403BC: MOVLW FA03BD: MOVWF 3503BE: GOTO 25D03BF: DECFSZ 34,F03C0: GOTO 3BC........................................ }03C1: GOTO 2DB.................... }03C2: SLEEPConfiguration Fuses:Word 1: 2CF5 INTRC NOWDT NOPUT MCLR NOPROTECT NOCPD NOBROWNOUT IESO FCMEN NOLVP NODEBUGWord 2: 3FFF NOWRT BORV40