/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.c
14,10 → 14,15
#include "./HMC5883L.h"
#include <math.h>
 
#define MPL3115_ADDR_R 0xC1 //addresa pro cteni
#define MPL3115_ADDR_W 0xC0
 
#include "../MPL3115.h"
 
 
void main()
{
float temp1, temp2, humidity;
float temp1, temp2, temp3, humidity, preasure;
int16 i=0;
 
setup_adc_ports(NO_ANALOGS|VSS_VDD);
56,12 → 61,17
temp2= LTS01_get_temp();
hmc5883l_read_data();
printf(lcd_putc,"%f C %f \%%",temp1, humidity);
temp3=mpl3115_T();
preasure=mpl3115_P();
mpl3115_setP(); //nastaveni pro tlak a teplotu
 
printf(lcd_putc,"%2.2f%cC %2.2f\%%",temp1, 0xb2, humidity);
lcd_gotoxy(1,2);
printf(lcd_putc," %f C",temp2);
printf("%ld %f %f %f ",i, temp1, humidity, temp2);
printf("%Ld %Ld %Ld \n\r", compass.x, compass.y, compass.z);
printf(lcd_putc,"%2.2f%cC %6.0fPa ",temp2, 0xb2, preasure);
 
printf("%ld %f %f %f %6.2f %3.2f %Ld %Ld %Ld \n\r",i, temp1, humidity, temp2, preasure, temp3, compass.x, compass.y, compass.z);
i++;
 
Delay_ms(100);
}
 
/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.cof
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.err
1,2 → 1,2
Memory usage: ROM=39% RAM=7% - 14%
Memory usage: ROM=46% RAM=10% - 20%
0 Errors, 0 Warnings.
/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.esym
1,7 → 1,7
D G "__PCM__" 0 70 ""4.106""
D G "__DEVICE__" 0 70 "887"
D G "__DATE__" 0 70 ""03-IX-13""
D G "__TIME__" 0 70 ""00:32:19"" "Standard Header file for the PIC16F887 device ////////////////"
D G "__PCM__" 0 80 ""4.106""
D G "__DEVICE__" 0 80 "887"
D G "__DATE__" 0 80 ""10-IX-13""
D G "__TIME__" 0 80 ""13:59:10"" "Standard Header file for the PIC16F887 device ////////////////"
d G "PIN_A0" 2 20 "40"
d G "PIN_A1" 2 21 "41"
d G "PIN_A2" 2 22 "42"
555,16 → 555,49
F G "ldexp" 10 2152 "float(float value,sint8 exp)"
V L "value" 10 2152 "float"
V L "exp" 10 2152 "sint8"
C L "MAIN" 10 2 2 "FUNCTION"
F G "MAIN" 0 18 "void()"
V L "temp1" 0 20 "float"
V L "temp2" 0 20 "float"
V L "humidity" 0 20 "float"
V L "i" 0 21 "int16"
C L "MAIN" 0 30 1 "FUNCTION"
C L "MAIN" 0 30 2 "FUNCTION"
C L "MAIN" 0 30 1 "FUNCTION"
C L "MAIN" 0 30 1 "FUNCTION"
D G "MPL3115_ADDR_R" 0 17 "0xC1" "addresa pro cteni"
D G "MPL3115_ADDR_W" 0 18 "0xC0"
C L "mpl3115_setA" 11 1 6 "FUNCTION"
F G "mpl3115_setA" 12 1 "void()" "setup for altitude measurement"
C L "mpl3115_setA" 12 5 1 "FUNCTION"
C L "mpl3115_setA" 12 5 1 "FUNCTION"
C L "mpl3115_setA" 12 5 1 "FUNCTION"
C L "mpl3115_setA" 12 5 1 "FUNCTION"
F G "mpl3115_setP" 12 24 "void()" "nastavení pro tlak"
C L "mpl3115_setP" 12 5 1 "FUNCTION"
C L "mpl3115_setP" 12 5 1 "FUNCTION"
C L "mpl3115_setP" 12 5 1 "FUNCTION"
C L "mpl3115_setP" 12 5 1 "FUNCTION"
F G "mpl3115_read" 12 48 "int8(int8 reg)"
V L "reg" 12 48 "int8"
V L "i" 12 50 "int8"
F G "mpl3115_T" 12 64 "float()" "teplota ve stupnich"
V L "m" 12 66 "int8"
V L "l" 12 67 "float"
V L "t" 12 67 "float"
F G "mpl3115_A" 12 75 "float()" "vyska v m"
V L "m" 12 78 "int16"
V L "c" 12 78 "int16"
V L "l" 12 79 "float"
V L "a" 12 79 "float"
F G "mpl3115_P" 12 89 "float()" "tlak v Pa"
V L "m" 12 91 "int32"
V L "c" 12 92 "int16"
V L "l" 12 93 "int8"
V L "p" 12 94 "float"
V L "l1" 12 94 "float"
F G "MAIN" 0 23 "void()"
V L "temp1" 0 25 "float"
V L "temp2" 0 25 "float"
V L "temp3" 0 25 "float"
V L "humidity" 0 25 "float"
V L "preasure" 0 25 "float"
V L "i" 0 26 "int16"
C L "MAIN" 0 35 1 "FUNCTION"
C L "MAIN" 0 35 2 "FUNCTION"
C L "MAIN" 0 35 1 "FUNCTION"
C L "MAIN" 0 35 1 "FUNCTION"
C L "MAIN" 0 35 1 "FUNCTION"
F B "reset_cpu" 0 0
F B "abs" 1 0
F B "sleep_ulpwu" 1 0
/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.hex
1,4 → 1,4
:100000000A308A00B72A00000A108A100A118207F3
:100000000C308A00E52C00000A108A100A118207C1
:1000100028340C3401340634C732EF26653AB01860
:10002000C1060A00A8312910CB306B36E9352019FA
:10003000B018B3060A00F73B77176D366131AE3161
5,16 → 5,16
:10004000FA060A00A8312910CB306B36E9352019A1
:10005000B0183300F73B77176D366131AE317A0057
:10006000831603178C170C140000000083120C0871
:100070007F39031976280313B50003170D080313FE
:10008000B60003170F080313B70035080C1E4628E7
:100090009900360803178D000313370803178F00E4
:100070007F39031976280313BD0003170D080313F6
:10008000BE0003170F080313BF003D080C1E4628CF
:1000900099003E0803178D0003133F0803178F00D4
:1000A00083168C170C140000000083120C0D0E0D2B
:1000B0007F39031976280313B50003170D080313BE
:1000C000B60003170F080313B70035080C1E662887
:1000D0009900360803178D000313370803178F00A4
:1000B0007F39031976280313BD0003170D080313B6
:1000C000BE0003170F080313BF003D080C1E66286F
:1000D00099003E0803178D0003133F0803178F0094
:1000E0008D0A03198F0A031330280317031308001E
:1000F0000830F80000008711A0112008831687003F
:1001000000008312BB0D0712031C8C282016200848
:1001000000008312CE0D0712031C8C282016200835
:1001100083168700902883122012200883168700F8
:1001200000008312A0152008831687008312871D04
:100130009728F80B7A2800008711A0112008831651
25,379 → 25,457
:1001800083120800201620088316870000008312BF
:10019000A015200883168700000083120712201282
:1001A000200883168700000083128711A011200801
:1001B000831687003C308312BB0078203508BB00D3
:1001C00078203608BB00782020122008831687008C
:1001B000831687003C308312CE0078203D08CE00A5
:1001C00078203E08CE007820201220088316870071
:1001D00000008312A0152008831687008312871D54
:1001E000EF280000F328000020162008831687005F
:1001F00000008312080043308400831300080319B1
:1001F0000000831208004B308400831300080319A9
:100200000E290230F800F701F70B0429F80B032937
:100210009730F700F70B0A29800B012908004A18CC
:100220001329081214290816831608128312CA18F3
:100230001B2988121C2988168316881283124A19D2
:100240002329081324290817831608138312CA19AF
:100210009730F700F70B0A29800B012908005218C4
:100220001329081214290816831608128312D218EB
:100230001B2988121C2988168316881283125219CA
:100240002329081324290817831608138312D219A7
:100250002B2988132C2988178316881300008312F2
:1002600009148316091034293529831209108316BD
:10027000091083120800CB01831608160030831280
:10028000081A0130CB048316881600308312881AAE
:100290000130F7000310F70D7708CB048316081719
:10027000091083120800D301831608160030831278
:10028000081A0130D3048316881600308312881AA6
:100290000130F7000310F70D7708D3048316081711
:1002A00000308312081B0130F700F70DF70DFC300A
:1002B000F7057708CB048316881700308312881B54
:1002B000F7057708D3048316881700308312881B4C
:1002C0000130F700F70DF70DF70DF830F705770857
:1002D000CB044B08F8000800831609108910091197
:1002D000D3045308F8000800831609108910091187
:1002E0008312891083168910081688160817881734
:1002F000831209158316091100008312091483164D
:100300000910000083123B217808CA0009108316E7
:100300000910000083123B217808D20009108316DF
:100310000910000083120914831609108F29831213
:100320003B217808C90009108316091008128812A9
:100330000813881383124A0EF700F030F705770888
:100340004904F8007808C900C91FA8298316742930
:10035000C708031DAD298910AE2989148316891099
:100320003B217808D10009108316091008128812A1
:10033000081388138312520EF700F030F705770880
:100340005104F8007808D100D11FA8298316742918
:10035000CF08031DAD298910AE2989148316891091
:10036000000083120911831609110000831209107D
:10037000831609108312480EC9000F30C9054908B9
:10038000CA000F2148080F39C900CA000F21080010
:10037000831609108312500ED1000F30D105510899
:10038000D2000F2150080F39D100D2000F210800F0
:10039000831608128812081388130910891009118E
:1003A000831289108316891083120911831609118B
:1003B00083120910831609100F308312C300FB202B
:1003C0000130B5003508033C031CEE290330CA0098
:1003D0000F210530C300FB20B50AE2290230CA0014
:1003E0000F21B5013508033C031CFF293508042003
:1003F000B600C7013608C8006C21B50AF22908000A
:10040000440B032A062A4030C500072AC5010130E3
:100410004302C50745088038C600C7014608C80022
:100420006C2108004208073A0319202A0B3A0319E5
:1003B00083120910831609100F308312CB00FB2023
:1003C0000130BD003D08033C031CEE290330D20080
:1003D0000F210530CB00FB20BD0AE2290230D200FC
:1003E0000F21BD013D08033C031CFF293D080420EB
:1003F000BE00CF013E08D0006C21BD0AF2290800E2
:100400004C0B032A062A4030CD00072ACD010130CB
:100410004B02CD074D088038CE00CF014E08D000EA
:100420006C2108004A08073A0319202A0B3A0319DD
:10043000252A063A03192D2A023A0319332A382AA3
:100440000130C300C40000223E2AC7010130C800A9
:100450006C210230C300FB203E2A0130C300023071
:10046000C40000223E2AC7011030C8006C213E2A79
:100470000130C7004208C8006C213E2A08008316DC
:100440000130CB00CC0000223E2ACF010130D00089
:100450006C210230CB00FB203E2A0130CB00023061
:10046000CC0000223E2ACF011030D0006C213E2A61
:100470000130CF004A08D0006C213E2A08008316C4
:1004800003178C170C140000000083120C087F392E
:100490000319832A0313B50003170D080313B600CD
:1004A00003170F080313B7003508C20012223608DD
:1004B00003178D000313370803178F0083168C175B
:100490000319832A0313BD0003170D080313BE00BD
:1004A00003170F080313BF003D08CA0012223E08BD
:1004B00003178D0003133F0803178F0083168C1753
:1004C0000C140000000083120C0D0E0D7F3903196F
:1004D000832A0313B50003170D080313B60003178F
:1004E0000F080313B7003508C2001222360803179D
:1004F0008D000313370803178F008D0A03198F0A25
:1005000003133F2A0317031308000830BC007708C1
:10051000BD00201620088316870000008312A01556
:1004D000832A0313BD0003170D080313BE0003177F
:1004E0000F080313BF003D08CA0012223E0803177D
:1004F0008D0003133F0803178F008D0A03198F0A1D
:1005000003133F2A0317031308000830CF007708AE
:10051000D000201620088316870000008312A01543
:100520002008831687008312871D942A071A031454
:10053000071E0310F80D0000A01120088316870085
:1005400083128711BC0B892A201620088316870086
:100550000000831207123D080319B32A2012200855
:1005400083128711CF0B892A201620088316870073
:1005500000008312071250080319B32A2012200842
:100560008316870083120000A015200883168700D9
:100570008312871DB92A00008711A0112008831655
:1005800087000000831207122012200883168700BC
:10059000831208008E30F7003B08F8003A08F90093
:10059000831208008E30F7004E08F8004D08F9006D
:1005A000FA01F808031DDE2A7908F800F90108307D
:1005B000F702F808031DDE2AF701E62A0310F81BEC
:1005C000E52AF90DF80DF703DE2AF81308003E08B6
:1005D0000319AC2BCA0042080319AC2BCA02031C36
:1005E000F62A7F30CA070318AC2BFC2A8130CA02D6
:1005F000031CAC2B0319AC2B4A08F700F801F901D6
:10060000FA01C9013F08C800C8174008C7004108DF
:10061000C6001930CA004508C60203181F2B013056
:10062000C70203181F2BC80203181F2BC902031887
:100630001F2BC90AC80AC70A4508C607512B440818
:10064000C70203183A2B0130C80203183A2BC9021B
:1006500003183A2BC90AC80A4408C7074508C60741
:10066000031C512BC70A031D512BC80A031D512B14
:10067000C90A512B43088038C8020318502B013097
:10068000C9020318502BC90A43088038C807440818
:10069000C707031C2E2BC80A031D2E2BC90A2E2B9D
:1006A0007A14CA0B542B5F2B0310C60DC70DC80D4F
:1006B000C90D0310FA0DF90DF80DCB0D0B2B4B1CCA
:1006C000672B0310F80CF90CFA0CCB0C6A2BF70310
:1006D0000319AC2BCB1B932B0310C60DC70DC80DF4
:1006E000C90D4508C60203187F2B0130C702031845
:1006F0007F2BC80203187F2BC902031CA22B4408BE
:10070000C70203188A2B0130C80203188A2BC902BA
:10071000031CA22B43088038C8020318932B013016
:10072000C902031CA22BFA0A031DA22BF90A031DFE
:1005C000E52AF90DF80DF703DE2AF81308005108A3
:1005D0000319AC2BDD0055080319AC2BDD02031CFD
:1005E000F62A7F30DD070318AC2BFC2A8130DD02B0
:1005F000031CAC2B0319AC2B5D08F700F801F901C3
:10060000FA01DC015208DB00DB175308DA0054085A
:10061000D9001930DD005808D90203181F2B01300A
:10062000DA0203181F2BDB0203181F2BDC0203184E
:100630001F2BDC0ADB0ADA0A5808D907512B5708A6
:10064000DA0203183A2B0130DB0203183A2BDC02E2
:1006500003183A2BDC0ADB0A5708DA075808D907CF
:10066000031C512BDA0A031D512BDB0A031D512BEE
:10067000DC0A512B56088038DB020318502B01305E
:10068000DC020318502BDC0A56088038DB075708B9
:10069000DA07031C2E2BDB0A031D2E2BDC0A2E2B64
:1006A0007A14DD0B542B5F2B0310D90DDA0DDB0D03
:1006B000DC0D0310FA0DF90DF80DDE0D0B2B5E1C91
:1006C000672B0310F80CF90CFA0CDE0C6A2BF703FD
:1006D0000319AC2BDE1B932B0310D90DDA0DDB0DA8
:1006E000DC0D5808D90203187F2B0130DA020318F9
:1006F0007F2BDB0203187F2BDC02031CA22B570885
:10070000DA0203188A2B0130DB0203188A2BDC0281
:10071000031CA22B56088038DB020318932B0130F0
:10072000DC02031CA22BFA0A031DA22BF90A031DEB
:10073000A22BF80A031DA22BF70A0319AC2BF80C05
:10074000F90CFA0C3F08CA004308CA06CA1FAA2BB4
:10074000F90CFA0C5208DD005608DD06DD1FAA2B55
:10075000F817B02BF813B02BF701F801F901FA01E3
:10076000080042080319212CCA0046080319212C4D
:10077000CA070318C22B7F30CA02031C212C03199D
:10078000212CC62B8130CA070318212C4A08F700F8
:10079000F801F901FA014308CE00CE174408CD0054
:1007A0004508CC001830CA00CB014C1CEF2B49087F
:1007600008004A080319212CD2004E080319212C35
:10077000D2070318C22B7F30D202031C212C03198D
:10078000212CC62B8130D2070318212C5208F700E8
:10079000F801F901FA014B08D600D6174C08D5002C
:1007A0004D08D4001830D200D301541CEF2B51084F
:1007B000FA07031CE12BF90A031DE12BF80A0319C0
:1007C000CB174808F907031CE82BF80A0319CB17C5
:1007D0004708C400C4174408F8070318CB17CB0D0B
:1007E000F80CF90CFA0CCE0CCD0CCC0C0310CA0B87
:1007F000D42B0130F7070318212CF81B062CCE0D43
:10080000FA0DF90DF80DF7030319212CCE1F172C43
:1007C000D3175008F907031CE82BF80A0319D317AD
:1007D0004F08CC00CC174C08F8070318D317D30DDB
:1007E000F80CF90CFA0CD60CD50CD40C0310D20B67
:1007F000D42B0130F7070318212CF81B062CD60D3B
:10080000FA0DF90DF80DF7030319212CD61F172C3B
:10081000FA0A031D172CF90A031D172CF80A031DE9
:10082000172CF80CF90CFA0CF70A0319212C4308C1
:10083000CB004708CB06CB1F1F2CF817252CF8132D
:10082000172CF80CF90CFA0CF70A0319212C4B08B9
:10083000D3004F08D306D31F1F2CF817252CF8130D
:10084000252CF701F801F901FA010800803083181E
:10085000BF06C401C5013B08C3003F08C3063A08F0
:100860000319162DC200F7003E0803191F2DC202FE
:100870000319BB2C031C792C3F08C800C81740087B
:10088000C7004108C600C5010310C80CC70CC60C40
:10089000C50CC20B432CC31F502C4414332D4410E1
:1008A000421044163D3084008313482D4412C31B6C
:1008B000632C421C6E2CC80CC70CC60CC50CF70A66
:1008C00003192E2D6E2CC81B712C0310C50DC60DDF
:1008D000C70DC80DF70303192E2D632C4417DB2C0D
:1008E00044133B08C300C31F772CC817272DC81318
:1008F000272D3E08C200F7003A08C2023B08C80094
:10090000C8173C08C7003D08C600C5010310C80C45
:10091000C70CC60CC50CC20B852CC31F922CC4146B
:10092000332DC4104210C416413084008313482D67
:10093000C412C31BA52C421CB02CC80CC70CC60C7F
:10094000C50CF70A03192E2DB02CC81BB32C0310AD
:10095000C50DC60DC70DC80DF70303192E2DA52C07
:10096000C417DB2CC4133F08C300C31FB92CC8171E
:10097000272DC813272D3F08C800C8174008C700F7
:100980004108C600C31FC82CC8134415332D441199
:10099000C50142103D3084008313482DC31BF12C48
:1009A0003B08C300421CDB2CC80CC70CC60CC50C92
:1009B000F70A03192E2DC51FEC2CC60A031DEC2CBB
:1009C000C70A031DEC2CC80A031DEC2CC80CC70C6D
:1009D000C60CF70A03192E2D441B702CC41BB22C15
:1009E000102D8030C806C81FF92C332D3F08C300D6
:1009F000062D3B08C300C808031D062DC708031DAC
:100A0000062DC608031D062DF701272DC81B102D26
:100A10000310C50DC60DC70DC80DF70B062D2E2DE5
:100A2000C31F142DC817272DC813272D3E08F70004
:100A30003F08C8004008C7004108C600272D3A08F3
:100A4000F7003B08C8003C08C7003D08C60048083E
:100A5000F8004708F9004608FA00662DF701F8018A
:100A6000F901FA01662DC501C609C709C809C509FA
:100A7000C50A031D412DC60A031D412DC70A0319CE
:100A8000C80A44184F2CC418912C4419C72CF62CB2
:100A90000008C607031C522DC70A031D522DC80AA1
:100AA0000319421484030008C707031C5A2DC80AFF
:100AB0000319421484030008801F803AC8070318F2
:100AC0004214441A562CC41A982CCE2C0800201616
:10085000D806DD01DE015408DC005808DC06530828
:100860000319162DDB00F700570803191F2DDB02B3
:100870000319BB2C031C792C5808E100E117590817
:10088000E0005A08DF00DE010310E10CE00CDF0C91
:10089000DE0CDB0B432CDC1F502C5D14332D5D1064
:1008A0005B105D16563084008313482D5D12DC1BEF
:1008B000632C5B1C6E2CE10CE00CDF0CDE0CF70AE9
:1008C00003192E2D6E2CE11B712C0310DE0DDF0D94
:1008D000E00DE10DF70303192E2D632C5D17DB2CC2
:1008E0005D135408DC00DC1F772CE117272DE11382
:1008F000272D5708DB00F7005308DB025408E100FE
:10090000E1175508E0005608DF00DE010310E10C96
:10091000E00CDF0CDE0CDB0B852CDC1F922CDD14D5
:10092000332DDD105B10DD165A3084008313482D03
:10093000DD12DC1BA52C5B1CB02CE10CE00CDF0CE9
:10094000DE0CF70A03192E2DB02CE11BB32C03107B
:10095000DE0DDF0DE00DE10DF70303192E2DA52CA3
:10096000DD17DB2CDD135808DC00DC1FB92CE11788
:10097000272DE113272D5808E100E1175908E00061
:100980005A08DF00DC1FC82CE1135D15332D5D1103
:10099000DE015B10563084008313482DDC1BF12CE4
:1009A0005408DC005B1CDB2CE10CE00CDF0CDE0CE3
:1009B000F70A03192E2DDE1FEC2CDF0A031DEC2C89
:1009C000E00A031DEC2CE10A031DEC2CE10CE00C09
:1009D000DF0CF70A03192E2D5D1B702CDD1BB22CCA
:1009E000102D8030E106E11FF92C332D5808DC0072
:1009F000062D5408DC00E108031D062DE008031D48
:100A0000062DDF08031D062DF701272DE11B102DF4
:100A10000310DE0DDF0DE00DE10DF70B062D2E2D81
:100A2000DC1F142DE117272DE113272D5708F700A0
:100A30005808E1005908E0005A08DF00272D530844
:100A4000F7005408E1005508E0005608DF0061088F
:100A5000F8006008F9005F08FA00662DF701F80158
:100A6000F901FA01662DDE01DF09E009E109DE097D
:100A7000DE0A031D412DDF0A031D412DE00A031983
:100A8000E10A5D184F2CDD18912C5D19C72CF62C4E
:100A90000008DF07031C522DE00A031D522DE10A56
:100AA00003195B1484030008E007031C5A2DE10AB4
:100AB00003195B1484030008801F803AE1070318C0
:100AC0005B145D1A562CDD1A982CCE2C08002016CB
:100AD00020088316870000008312A01520088316C3
:100AE000870000008312871D732D07122012200833
:100AF00083168700000083128711A0112008831637
:100B0000870080308312BB007820E330BB00782060
:100B0000870080308312CE007820E330CE0078203A
:100B1000201220088316870000008312A0152008E9
:100B2000831687008312871D932D0000972D0000E8
:100B30002016200883168700000064308312C3004B
:100B30002016200883168700000064308312CB0043
:100B4000FB20201620088316870000008312A015C2
:100B50002008831687000000831207122012200845
:100B600083168700000083128711A01120088316C6
:100B7000870081308312BB0078200130F700852286
:100B80007808B5000130F70085227808B600F70133
:100B900085227808B70020122008831687000000FD
:100B7000870081308312CE0078200130F700852273
:100B80007808BD000130F70085227808BE00F70123
:100B900085227808BF0020122008831687000000F5
:100BA0008312A0152008831687008312871DD62D77
:100BB0000000DA2D000020162008831687000000B0
:100BC0008312B60CB60C3F30B605BB013508BA002F
:100BD000BB00BA01360EF700F030F70577083A0788
:100BE000B8003B08B9000318B90A3908BB00380837
:100BF000BA00CA227708BA007808BB007908BC009E
:100C00007A08BD00C1007908C0007808BF007708E5
:100C1000BE00C501FF30C4007F30C3008E30C2006B
:100C2000E7225230C500B830C4002F30C3008630F0
:100C3000C2007A08C9007908C8007808C700770898
:100C4000C600B12383106630BD00BC00BB30BB00C2
:100C50008430BA007A08C1007908C0007808BF0063
:100C60007708BE0026248A150A128B2B201620082E
:100BC0008312BE0CBE0C3F30BE05C3013D08C200FF
:100BD000C300C2013E0EF700F030F7057708420768
:100BE000C0004308C1000318C10A4108CE004008F4
:100BF000CD00CA227708C2007808C3007908C40073
:100C00007A08C500D4007908D3007808D2007708A4
:100C1000D100D801FF30D7007F30D6008E30D5000C
:100C2000E7225230CD00B830CC002F30CB008630D8
:100C3000CA007A08D1007908D0007808CF00770878
:100C4000CE00B12383106630D600D500BB30D4006F
:100C50008430D3007A08DA007908D9007808D800FF
:100C60007708D70026248A150A12B92D20162008E5
:100C70008316870000008312A015200883168700C2
:100C8000000083120712201220088316870000003C
:100C900083128711A01120088316870080308312E9
:100CA000BB007820E530BB0078206430C300FB2017
:100CA000CE007820E530CE0078206430CB00FB20E9
:100CB000201620088316870000008312A015200844
:100CC0008316870000008312871D642E07122012EE
:100CD000200883168700000083128711A0112008C6
:100CE0008316870081308312BB0078200130F70023
:100CF00085227808B5000130F70085227808B60013
:100D0000F70185227808B700201220088316870093
:100CE0008316870081308312CE0078200130F70010
:100CF00085227808BD000130F70085227808BE0003
:100D0000F70185227808BF0020122008831687008B
:100D100000008312A0152008831687008312871D08
:100D20008F2E0000932E00002016200883168700C7
:100D300000008312B60CB60C3F30B605BB01350877
:100D4000BA00BB00BA01360EF700F030F70577089D
:100D50003A07B8003B08B9000318B90A3908BB00C4
:100D60003808BA00CA227708BA007808BB007908A8
:100D7000BC007A08BD00C1007908C0007808BF0037
:100D80007708BE00C501FF30C4007F30C3008E303D
:100D9000C200E722C501C4017A30C3008530C20019
:100DA0007A08C9007908C8007808C7007708C60023
:100DB000B1238310BD01BC01C030BB008130BA003B
:100DC0007A08C1007908C0007808BF007708BE0023
:100DD00026248A150A12962B2016200883168700CF
:100D300000008312BE0CBE0C3F30BE05C3013D084F
:100D4000C200C300C2013E0EF700F030F70577087D
:100D50004207C0004308C1000318C10A4108CE0081
:100D60004008CD00CA227708C2007808C30079087D
:100D7000C4007A08C500D4007908D3007808D200EE
:100D80007708D100D801FF30D7007F30D6008E30F1
:100D9000D500E722CD01CC017A30CB008530CA00E6
:100DA0007A08D1007908D0007808CF007708CE0003
:100DB000B1238310D601D501C030D4008130D300D7
:100DC0007A08DA007908D9007808D8007708D700BF
:100DD00026248A150A12C42D20162008831687009F
:100DE00000008312A01520088316870000008312DC
:100DF0000712201220088316870000008312871133
:100E0000A01120088316870090308312BB00782041
:100E1000BB0178202012200883168700000083126F
:100E0000A01120088316870090308312CE0078202E
:100E1000CE0178202012200883168700000083125C
:100E2000A0152008831687008312871D152F000048
:100E3000192F000020162008831687000000831257
:100E4000201620088316870000008312A0152008B2
:100E500083168700000083120712201220088316D1
:100E60008700000083128711A011200883168700D5
:100E700091308312BB0078200130F700852278087A
:100E8000B500F70185227808B600201220088316E5
:100E700091308312CE0078200130F7008522780867
:100E8000BD00F70185227808BE00201220088316D5
:100E9000870000008312A0152008831687008312A4
:100EA000871D502F0000542F0000201620088316A5
:100EB0008700000083123508B8003608B7003808EC
:100EC000BA003708B9003A08BC003908BB008E30B8
:100ED000F7003C08F8003B08F900FA01BC1F752F29
:100EB0008700000083123D08C0003E08BF004008C4
:100EC000C2003F08C1004208C4004108C3008E3080
:100ED000F7004408F8004308F900FA01C41F752F11
:100EE000F809F909F90A0319F80AF808031D822F0D
:100EF0007908F800F9010830F702F808031D822F7D
:100F0000F7018B2F0310F81B892FF90DF80DF7034C
:100F1000822FBC1FF8137A08C5007908C40078082E
:100F2000C3007708C200C901C801C7017730C600F5
:100F3000B1238A150A12A12B4208B63CC200FA015D
:100F40004308C600C3170310C30CC40CC50CFA0C2D
:100F5000F90CF80CF70CC20BA32FC61FBA2FF70918
:100F6000F809F909FA09F70A0319F80A0319F90A3D
:100F70000319FA0A0800F701F801F901FA01CA0198
:100F8000CB01CC01CD0149084804470446040319AC
:100F9000F92F2030CE000310C20DC30DC40DC50DB6
:100FA000CA0DCB0DCC0DCD0D49084D02031DE22F0E
:100FB00048084C02031DE22F47084B02031DE22F95
:100FC00046084A02031CF32F4608CA024708031CBE
:100FD000470FCB024808031C480FCC024908031CEA
:100FE000490FCD020314F70DF80DF90DFA0DCE0BD4
:0A0FF000CB2F4A3084008313080061
:100F1000822FC41FF8137A08CD007908CC00780816
:100F2000CB007708CA00D101D001CF017730CE00C5
:100F3000B1238A150A12CF2D2016200883168700A8
:100F400000008312A015200883168700000083127A
:100F500007122012200883168700000083128711D1
:100F6000A011200883168700C0308312CE0078209D
:100F70004C08CE0078202016200883168700000039
:100F80008312A01520088316870000008312871D96
:100F9000C72F071220122008831687000000831233
:100FA0008711A011200883168700C1308312CE005C
:100FB0007820F70185227808CD00201220088316BA
:100FC000870000008312A015200883168700831273
:100FD000871DE82F0000EC2F000020162008831644
:0C0FE0008700000083124D08F800080094
:10100000201620088316870000008312A0152008F0
:10101000831687000000831207122012200883160F
:101020008700000083128711A01120088316870013
:101030003C308312BB008A1178208A150330BB0034
:101030003C308312CE008A1178208A150330CE000E
:101040008A1178208A152016200883168700000050
:101050008312A01520088316870000008312871DC5
:101060002F28071220122008831687000000831201
:101070008711A0112008831687003D308312BB0022
:101070008711A0112008831687003D308312CE000F
:101080008A1178208A150130F7008A1185228A1585
:101090007808B6000130F7008A1185228A15780891
:1010A000B5000130F7008A1185228A157808BA0048
:1010B0000130F7008A1185228A157808B9000130BD
:1010C000F7008A1185228A157808B800F7018A117D
:1010D00085228A157808B700201220088316870019
:101090007808BE000130F7008A1185228A15780889
:1010A000BD000130F7008A1185228A157808C20038
:1010B0000130F7008A1185228A157808C1000130B5
:1010C000F7008A1185228A157808C000F7018A1175
:1010D00085228A157808BF00201220088316870011
:1010E00000008312A0152008831687008312871D35
:1010F000772800007B280000201620088316870030
:10110000000083123608A2003508A1003808A400A8
:101110003708A3003A08A6003908A5008A150A1264
:10112000AB2B0408BA003908BC000319B2283808F0
:10113000C5003708C4003608C3003508C200C9011D
:10114000C8012030C7008230C6008A11B1238A1539
:101150007A08B8007908B7007808B6007708B500B3
:10116000BC0B97283808C5003708C4003608C300F0
:101170003508C2008A119C278A157A08B8007908B8
:10118000B7007808B6007708B500B81FD428BA03AE
:10119000BA16B509B609B709B809B50A0319B60AE6
:1011A0000319B70A0319B80A3B30C1009A30C000CE
:1011B000CA30BF00BE010A30BC0039080319BA0AA0
:1011C0003808C5003708C4003608C3003508C20017
:1011D0004108C9004008C8003F08C7003E08C600D3
:1011E0008A11BB278A150008B500840A0008B600DA
:1011F000840A0008B700840A0008B800FD3084079C
:10120000F708031D1629390A3C02031916293A0862
:10121000031918290F393C02031910290318502902
:10122000BA1B50293A1B182920304A292030BA0508
:10123000BA1E2829BA123908031DBA037708BA0062
:101240002D30C2008A1112228A153A08F700BA011D
:1012500039083C02031D38297708BA002E30C20035
:101260008A1112228A153A08F7002030BA05003098
:101270003030BA1E4A29BA123908031DBA0377085A
:10128000BA002D30C2008A1112228A153A08F700DE
:10129000BA013030F7077708C2008A1112228A1586
:1012A0004108C5004008C4003F08C3003E08C20012
:1012B000C901C801C7010A30C6008A11BB278A15B7
:1012C0007A08C1007908C0007808BF007708BE001E
:1012D000BC0BE0280800BD010408BC003D10831BC6
:1012E0003D14B61F7B29BC173C1EBC0AB509B609C4
:1012F000B50A0319B60A360EF038B800B807E23E50
:10130000B900323EBB0036080F39B907B907BB0731
:10131000E93EBA00BA07BA07350E0F39BA07BB075C
:10132000BA0DBB0DBB09BB0D35080F39BB07B80D96
:101330000730B7000A30BB07BA03031C9B29BA0762
:10134000B903031C9F29B907B803031CA329B807D5
:10135000B703031CA72937308400831307303C05EB
:101360003C1384033C05031DBC293C1A840A3C1A27
:10137000BC292030F700D92984073B300402031927
:101380003C170008F700031DCD293C1BCD293C1A52
:10139000DD29BC19CD292030D829BC1FD5292D30F5
:1013A000F70084033C13BC13D929BC153C12303020
:1013B000F70777080C1EDA299900840A3C1FBD291B
:1013C00008000408BA003908BC000319022A3808CA
:1013D000C5003708C4003608C3003508C200C9017B
:1013E000C8012030C7008230C6008A11B1238A1597
:1013F0007A08B8007908B7007808B6007708B50011
:10140000BC0BE7293808C5003708C4003608C300FC
:101410003508C2008A119C278A157A08B800790815
:10142000B7007808B6007708B500B81F242ABA03B9
:10143000BA16B509B609B709B809B50A0319B60A43
:101440000319B70A0319B80A3B30C1009A30C0002B
:10145000CA30BF00BE010A30BC0039080319BA0AFD
:101460003808C5003708C4003608C3003508C20074
:101470004108C9004008C8003F08C7003E08C60030
:101480008A11BB278A150008B500840A0008B60037
:10149000840A0008B700840A0008B800FD308407F9
:1014A000F708031D662A390A3C020319662A3A081E
:1014B0000319682A0F393C020319602A03189C2A71
:1014C000BA1B9C2A3A1B682A2030972A2030BA057A
:1014D000BA1E772ABA123908031DBA037708BA0070
:1014E0002D300C1E712A99003A08F700BA0139080C
:1014F0003C02031D862A7708BA002E300C1E7E2A75
:1015000099003A08F7002030BA0500303030BA1E92
:10151000972ABA123908031DBA037708BA002D308A
:101520000C1E902A99003A08F700BA013030F707EC
:1015300077080C1E992A99004108C5004008C4008C
:101540003F08C3003E08C200C901C801C7010A30F4
:10155000C6008A11BB278A157A08C1007908C00025
:101560007808BF007708BE00BC0B302A0800840151
:1015700083131F308305713083168F000F08031704
:1015800087110C3003139900A23098009030831219
:101590009800831603170908C039890003131F1226
:1015A0009F12003003178800831287018801890188
:1015B000FF300313A000A101A201A301A401A50112
:1015C000A601B401B301831603170908C0398900C5
:1015D00003131F129F120030031788008312031396
:1015E0001F139F1383169F1783121F149412A012A8
:1015F0002008831687008312201620088316870090
:101600008312A011200883168700013083129400F2
:101610000030831694000108C7390838810083120E
:1016200090010030F800920000308316920083127F
:1016300020152008831687008312970183169B01CB
:101640009C0101309D0083120317870188018901E5
:101650007130831603138F000F080C3083120317A9
:101660008D0000308F008A11031330208A1512304C
:1016700003178D0000308F008A11031330208A1564
:101680001B3003178D0000308F008A1103133020A8
:101690008A15B5011830B6008A11C2208A150130AA
:1016A000B500B6018A11C2208A150230B500B60114
:1016B0008A11C2208A158A11C8218A15223003177F
:1016C0008D0000308F008A1103133F228A150330EA
:1016D000C3000230C4008A1100228A152A30031781
:1016E0008D0000308F008A1103133F228A150830C5
:1016F000B500FA30C3008A11FB208A15B50B792B8F
:101700008A11C8218A150130C300C4008A11002241
:101710008A158A11672D8A157A08AA007908A90006
:101720007808A8007708A7008A11362E8A157A084B
:10173000B2007908B1007808B0007708AF008A11CC
:10174000EC2E8A157A08AE007908AD007808AC0056
:101750007708AB000028893084002A08B8002908DF
:10176000B7002808B6002708B5000230B90091205C
:101770002030C2008A1112228A154330C2008A1119
:1017800012228A152030C2008A1112228A1589304D
:1017900084003208B8003108B7003008B6002F08BE
:1017A000B5000230B90091202030C2008A11122207
:1017B0008A152530C2008A1112228A150130C30011
:1017C0000230C4008A1100228A152030C2008A111A
:1017D00012228A15893084002E08B8002D08B7001F
:1017E0002C08B6002B08B5000230B900912020303B
:1017F000C2008A1112228A154330C2008A111222B5
:101800008A15103084003408B6003308B5006B2107
:1018100020300C1E092C9900893084002A08B80059
:101820002908B7002808B6002708B5000230B9001B
:10183000E12120300C1E1A2C9900893084003208D6
:10184000B8003108B7003008B6002F08B5000230E4
:10185000B900E12120300C1E2B2C99008930840026
:101860002E08B8002D08B7002C08B6002B08B500CC
:101870000230B900E12120300C1E3C2C99001030C0
:1018800084002208B6002108B5006B2120300C1E10
:10189000472C9900103084002408B6002308B500B6
:1018A0006B2120300C1E522C990010308400260829
:1018B000B6002508B5006B2120300C1E5D2C990068
:1018C0000A300C1E612C99000D300C1E652C9900FD
:1018D000B30A0319B40A6430C3008A11FB208A15C5
:0418E000832B6300F3
:10110000000083123E08A2003D08A1004008A40090
:101110003F08A3004208A6004108A5008A150A124C
:10112000D92D0430CC008A119C278A157808BD007F
:101130000530CC008A119C278A15780EF7000F30F5
:10114000F7057708CE01CD008A11CA228A157708E3
:10115000C6007808C7007908C8007A08C900D4001A
:101160004808D3004708D2004608D100D801D7016B
:10117000D6018330D5008A11E7228A157A08C1008A
:101180007908C0007808BF007708BE00CE013D088E
:10119000CD008A11CA228A1583107A08D6007908F0
:1011A000D5007808D4007708D3004108DA00400859
:1011B000D9003F08D8003E08D7008A1126248A1596
:1011C0007A08C5007908C4007808C3007708C2000F
:1011D0004208F7004308F8004408F9004508FA00FF
:1011E0008A150A12DA2D0130CC008A119C278A1543
:1011F000C001BF01BE017808BD000230CC008A11D9
:101200009C278A15C2017808C1000330CC008A11DE
:101210009C278A157808C300430EF7000F30F705A6
:101220007708CE01CD008A11CA228A157708CD0031
:101230007808CE007908CF007A08D000D400790869
:10124000D3007808D2007708D100D801D701D601A1
:101250008130D5008A11E7228A157A08CB007908F7
:10126000CA007808C9007708C800CD013D0DCE003E
:101270003E0DCF003F0DD000CE0DCF0DD00DFC3078
:10128000CE05410DF900420DFA00F90DFA0DFC30C2
:10129000F9057908CD047A08CE04430EF700F70C5F
:1012A000F70C0330F70577084D04F7004E08F800F7
:1012B0004F08F9005008FA007A08D6007908D500DE
:1012C0007808D4007708D300B630F700FA01F901A6
:1012D000F8015308540455045604031D7129F701FD
:1012E0007E290310F81B7D29D30DD40DD50DD60D05
:1012F000FA0DF90DF80DF70B7129F8137708CD00E9
:101300007808CE007908CF007A08D00083107A08D8
:10131000D6007908D5007808D4007708D3004B08A8
:10132000DA004A08D9004908D8004808D7008A11CD
:1013300026248A157A08C7007908C6007808C500EF
:101340007708C4004408F7004508F8004608F9008B
:101350004708FA008A150A12E32D20162008831682
:10136000870000008312A015200883168700000064
:1013700083120712201220088316870000008312B0
:101380008711A011200883168700C0308312CE0079
:101390008A1178208A152630CE008A1178208A1585
:1013A000B830CE008A1178208A15201220088316C2
:1013B000870000008312A01520088316870083127F
:1013C000871DE0290000E42900002016200883166C
:1013D0008700000083122016200883168700000073
:1013E0008312A015200883168700000083120712BD
:1013F0002012200883168700000083128711A01195
:10140000200883168700C0308312CE008A1178200E
:101410008A151330CE008A1178208A150730CE0045
:101420008A1178208A152012200883168700000070
:101430008312A0152008831687008312871D1E2A99
:101440000000222A000020162008831687000000D2
:101450008312201620088316870000008312A0152F
:10146000200883168700000083120712201220082C
:1014700083168700000083128711A01120088316AD
:101480008700C0308312CE008A1178208A1526305A
:10149000CE008A1178208A153930CE008A11782042
:1014A0008A15201220088316870000008312A015D9
:1014B0002008831687008312871D5C2A0000602A9B
:1014C00000002016200883168700000083128A156A
:1014D0000A12EC2D4A08B63CCA00FA014B08CE00AD
:1014E000CB170310CB0CCC0CCD0CFA0CF90CF80C70
:1014F000F70CCA0B712ACE1F882AF709F809F909D7
:10150000FA09F70A0319F80A0319F90A0319FA0A7A
:101510000800F701F801F901FA01D201D301D40161
:10152000D501510850044F044E040319C72A203036
:10153000D6000310CA0DCB0DCC0DCD0DD20DD30DA1
:10154000D40DD50D51085502031DB02A5008540280
:10155000031DB02A4F085302031DB02A4E08520241
:10156000031CC12A4E08D2024F08031C4F0FD3029E
:101570005008031C500FD4025108031C510FD50210
:101580000314F70DF80DF90DFA0DD60B992A523008
:101590008400831308000408C2004108C400031932
:1015A000EC2A4008CD003F08CC003E08CB003D08A7
:1015B000CA00D101D0012030CF008230CE008A1184
:1015C000B1238A157A08C0007908BF007808BE00E8
:1015D0007708BD00C40BD12A4008CD003F08CC00DD
:1015E0003E08CB003D08CA006A227A08C00079088C
:1015F000BF007808BE007708BD00C01F0C2BC203D7
:10160000C216BD09BE09BF09C009BD0A0319BE0A39
:101610000319BF0A0319C00A3B30C9009A30C80039
:10162000CA30C700C6010A30C40041080319C20A03
:101630004008CD003F08CC003E08CB003D08CA0062
:101640004908D1004808D0004708CF004608CE001E
:1016500089220008BD00840A0008BE00840A000830
:10166000BF00840A0008C000FD308407F708031D8E
:101670004C2B410A440203194C2B420803194E2BF0
:101680000F3944020319462B0318862BC21B862BE5
:10169000421B4E2B2030802B2030C205C21E5E2BF9
:1016A000C2124108031DC2037708C2002D30CA00D0
:1016B0008A1112228A154208F700C2014108440229
:1016C000031D6E2B7708C2002E30CA008A11122229
:1016D0008A154208F7002030C20500303030C21EA3
:1016E000802BC2124108031DC2037708C2002D30AF
:1016F000CA008A1112228A154208F700C20130304E
:10170000F7077708CA008A1112228A154908CD0006
:101710004808CC004708CB004608CA00D101D001D8
:10172000CF010A30CE0089227A08C9007908C800A2
:101730007808C7007708C600C40B182B0800C5013D
:101740000408C4004510831B4514BE1FAF2BC417EB
:10175000441EC40ABD09BE09BD0A0319BE0A3E0ED5
:10176000F038C000C007E23EC100323EC3003E0870
:101770000F39C107C107C307E93EC200C207C2074C
:101780003D0E0F39C207C307C20DC30DC309C30DF8
:101790003D080F39C307C00D0730BF000A30C3072B
:1017A000C203031CCF2BC207C103031CD32BC107E9
:1017B000C003031CD72BC007BF03031CDB2B3F3028
:1017C0008400831307304405441384034405031D38
:1017D000F02B441A840A441AF02B2030F7000D2C09
:1017E000840743300402031944170008F700031D5F
:1017F000012C441B012C441A112CC419012C20303B
:101800000C2CC41F092C2D30F70084034413C4137F
:101810000D2CC41544123030F70777080C1E0E2C1F
:101820009900840A441FF12B08000408C2004108F3
:10183000C4000319362C4008CD003F08CC003E08F8
:10184000CB003D08CA00D101D0012030CF0082304A
:10185000CE008A11B1238A157A08C0007908BF002A
:101860007808BE007708BD00C40B1B2C4008CD00D3
:101870003F08CC003E08CB003D08CA006A227A0827
:10188000C0007908BF007808BE007708BD00C01FFF
:10189000562CC203C216BD09BE09BF09C009BD0A44
:1018A0000319BE0A0319BF0A0319C00A3B30C90055
:1018B0009A30C800CA30C700C6010A30C4004108C7
:1018C0000319C20A4008CD003F08CC003E08CB00F7
:1018D0003D08CA004908D1004808D0004708CF0099
:1018E0004608CE0089220008BD00840A0008BE0018
:1018F000840A0008BF00840A0008C000FD30840785
:10190000F708031D962C410A44020319962C42083D
:101910000319982C0F3944020319902C0318CC2C6E
:10192000C21BCC2C421B982C2030C72C2030C20567
:10193000C21EA72CC2124108031DC2037708C200B1
:101940002D300C1EA12C99004208F700C20141085D
:101950004402031DB62C7708C2002E300C1EAE2C9C
:1019600099004208F7002030C20500303030C21E16
:10197000C72CC2124108031DC2037708C2002D30D4
:101980000C1EC02C99004208F700C2013030F70746
:1019900077080C1EC92C99004908CD004808CC00D6
:1019A0004708CB004608CA00D101D001CF010A3058
:1019B000CE0089227A08C9007908C8007808C700D3
:1019C0007708C600C40B622C0800840183131F3003
:1019D0008305713083168F000F08031787110C30B1
:1019E00003139900A2309800903083129800831658
:1019F00003170908C039890003131F129F12003012
:101A0000031788008312870188018901FF300313BF
:101A1000A000A101A201A301A401A501A601BC018E
:101A2000BB01831603170908C039890003131F126D
:101A30009F12003003178800831203131F139F1394
:101A400083169F1783121F149412A0122008831666
:101A50008700831220162008831687008312A011A6
:101A6000200883168700013083129400003083160B
:101A700094000108C73908388100831290010030B2
:101A8000F80092000030831692008312201520087F
:101A9000831687008312970183169B019C010130F6
:101AA0009D00831203178701880189017130831615
:101AB00003138F000F080C30831203178D000030C2
:101AC0008F008A11031330208A15123003178D00FE
:101AD00000308F008A11031330208A151B30031742
:101AE0008D0000308F008A11031330208A15BD014C
:101AF0001830BE008A11C2208A150130BD00BE0117
:101B00008A11C2208A150230BD00BE018A11C2208E
:101B10008A158A11C8218A15223003178D000030DA
:101B20008F008A1103133F228A150330CB00023045
:101B3000CC008A1100228A152A3003178D0000304C
:101B40008F008A1103133F228A150830BD00FA3036
:101B5000CB008A11FB208A15BD0BA72D8A11C82145
:101B60008A150130CB00CC008A1100228A158A1117
:101B7000672D8A157A08AA007908A9007808A800B4
:101B80007708A7008A11362E8A157A08B6007908D8
:101B9000B5007808B4007708B3008A11EC2E8A15D6
:101BA0007A08AE007908AD007808AC007708AB0081
:101BB000002891287A08B2007908B1007808B000AE
:101BC0007708AF00F3287A08BA007908B9007808D6
:101BD000B8007708B700AD29893084002A08C00012
:101BE0002908BF002808BE002708BD000230C10038
:101BF000CB22B230CA008A1112228A154330CA00A1
:101C00008A1112228A152030CA008A1112228A15DE
:101C1000893084003608C0003508BF003408BE0093
:101C20003308BD000230C100CB222530CA008A1122
:101C300012228A150130CB000230CC008A1100221A
:101C40008A15893084002E08C0002D08BF002C089A
:101C5000BE002B08BD000230C100CB22B230CA004A
:101C60008A1112228A154330CA008A1112228A155B
:101C70002030CA008A1112228A15053084003A08E1
:101C8000C0003908BF003808BE003708BD00C101D8
:101C9000CB225030CA008A1112228A156130CA0044
:101CA0008A1112228A152030CA008A1112228A153E
:101CB000103084003C08BE003B08BD009F2320304C
:101CC0000C1E602E9900893084002A08C000290863
:101CD000BF002808BE002708BD000230C10015243F
:101CE00020300C1E712E9900893084003608C00007
:101CF0003508BF003408BE003308BD000230C10003
:101D0000152420300C1E822E9900893084002E0864
:101D1000C0002D08BF002C08BE002B08BD000230FB
:101D2000C100152420300C1E932E9900053084002C
:101D30003A08C0003908BF003808BE003708BD00A7
:101D40000230C100152420300C1EA42E9900023050
:101D500084003208C0003108BF003008BE002F08E0
:101D6000BD000230C100152420300C1EB52E990094
:101D7000103084002208BE002108BD009F232030BF
:101D80000C1EC02E9900103084002408BE002308C9
:101D9000BD009F2320300C1ECB2E990010308400F4
:101DA0002608BE002508BD009F2320300C1ED62E1D
:101DB00099000A300C1EDA2E99000D300C1EDE2E12
:101DC0009900BB0A0319BC0A6430CB008A11FB20BE
:061DD0008A15B12D63002D
:04400E00F52CFF3F4F
:00000001FF
;PIC16F887
;CRC=2260 CREATED="03-IX-13 00:32"
;CRC=67FD CREATED="10-IX-13 13:59"
/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.lst
1,17 → 1,17
CCS PCM C Compiler, Version 4.106, 47914 03-IX-13 00:32
CCS PCM C Compiler, Version 4.106, 47914 10-IX-13 13:59
 
Filename: D:\MLAB\Designs\Measuring_instruments\GeoMet01A\SW\PIC16F887\main.lst
Filename: Z:\home\kaklik\svnMLAB\Designs\Measuring_instruments\GeoMet01A\SW\PIC16F887\main.lst
 
ROM used: 3183 words (39%)
ROM used: 3809 words (46%)
Largest free fragment is 2048
RAM used: 27 (7%) at main() level
52 (14%) worst case
RAM used: 35 (10%) at main() level
72 (20%) worst case
Stack: 5 locations
 
*
0000: MOVLW 0A
0000: MOVLW 0C
0001: MOVWF 0A
0002: GOTO 2B7
0002: GOTO 4E5
0003: NOP
.................... #include "main.h"
.................... #include <16F887.h>
37,7 → 37,7
....................
.................... #use delay(clock=8000000)
*
00FB: MOVLW 43
00FB: MOVLW 4B
00FC: MOVWF 04
00FD: BCF 03.7
00FE: MOVF 00,W
69,7 → 69,7
007F: MOVWF 07
0080: NOP
0081: BCF 03.5
0082: RLF 3B,F
0082: RLF 4E,F
0083: BCF 07.4
0084: BTFSS 03.0
0085: GOTO 08C
135,9 → 135,9
00C1: RETURN
*
0285: MOVLW 08
0286: MOVWF 3C
0286: MOVWF 4F
0287: MOVF 77,W
0288: MOVWF 3D
0288: MOVWF 50
0289: BSF 20.4
028A: MOVF 20,W
028B: BSF 03.5
163,7 → 163,7
029F: MOVWF 07
02A0: BCF 03.5
02A1: BCF 07.3
02A2: DECFSZ 3C,F
02A2: DECFSZ 4F,F
02A3: GOTO 289
02A4: BSF 20.4
02A5: MOVF 20,W
172,7 → 172,7
02A8: NOP
02A9: BCF 03.5
02AA: BCF 07.4
02AB: MOVF 3D,W
02AB: MOVF 50,W
02AC: BTFSC 03.2
02AD: GOTO 2B3
02AE: BCF 20.4
441,7 → 441,7
0182: BCF 03.5
0183: CALL 13B
0184: MOVF 78,W
0185: MOVWF 4A
0185: MOVWF 52
....................
.................... lcd_output_enable(0);
0186: BCF 09.0
460,7 → 460,7
018F: BCF 03.5
0190: CALL 13B
0191: MOVF 78,W
0192: MOVWF 49
0192: MOVWF 51
....................
.................... lcd_output_enable(0);
0193: BCF 09.0
486,12 → 486,12
....................
.................... return( (high<<4) | low);
019A: BCF 03.5
019B: SWAPF 4A,W
019B: SWAPF 52,W
019C: MOVWF 77
019D: MOVLW F0
019E: ANDWF 77,F
019F: MOVF 77,W
01A0: IORWF 49,W
01A0: IORWF 51,W
01A1: MOVWF 78
.................... }
....................
499,7 → 499,7
.................... {
.................... #if (defined(LCD_DATA4) && defined(LCD_DATA5) && defined(LCD_DATA6) && defined(LCD_DATA7))
*
013B: CLRF 4B
013B: CLRF 53
.................... BYTE n = 0x00;
....................
.................... /* Read the data port */
510,7 → 510,7
013F: BCF 03.5
0140: BTFSC 08.4
0141: MOVLW 01
0142: IORWF 4B,F
0142: IORWF 53,F
.................... n |= input(LCD_DATA5) << 1;
0143: BSF 03.5
0144: BSF 08.5
522,7 → 522,7
014A: BCF 03.0
014B: RLF 77,F
014C: MOVF 77,W
014D: IORWF 4B,F
014D: IORWF 53,F
.................... n |= input(LCD_DATA6) << 2;
014E: BSF 03.5
014F: BSF 08.6
536,7 → 536,7
0157: MOVLW FC
0158: ANDWF 77,F
0159: MOVF 77,W
015A: IORWF 4B,F
015A: IORWF 53,F
.................... n |= input(LCD_DATA7) << 3;
015B: BSF 03.5
015C: BSF 08.7
551,10 → 551,10
0165: MOVLW F8
0166: ANDWF 77,F
0167: MOVF 77,W
0168: IORWF 4B,F
0168: IORWF 53,F
....................
.................... return(n);
0169: MOVF 4B,W
0169: MOVF 53,W
016A: MOVWF 78
.................... #else
.................... return(lcd.data);
568,7 → 568,7
.................... /* Write to the data port */
.................... output_bit(LCD_DATA4, bit_test(n, 0));
*
010F: BTFSC 4A.0
010F: BTFSC 52.0
0110: GOTO 113
0111: BCF 08.4
0112: GOTO 114
577,7 → 577,7
0115: BCF 08.4
.................... output_bit(LCD_DATA5, bit_test(n, 1));
0116: BCF 03.5
0117: BTFSC 4A.1
0117: BTFSC 52.1
0118: GOTO 11B
0119: BCF 08.5
011A: GOTO 11C
586,7 → 586,7
011D: BCF 08.5
.................... output_bit(LCD_DATA6, bit_test(n, 2));
011E: BCF 03.5
011F: BTFSC 4A.2
011F: BTFSC 52.2
0120: GOTO 123
0121: BCF 08.6
0122: GOTO 124
595,7 → 595,7
0125: BCF 08.6
.................... output_bit(LCD_DATA7, bit_test(n, 3));
0126: BCF 03.5
0127: BTFSC 4A.3
0127: BTFSC 52.3
0128: GOTO 12B
0129: BCF 08.7
012A: GOTO 12C
648,13 → 648,13
.................... while ( bit_test(lcd_read_byte(),7) ) ;
*
01A2: MOVF 78,W
01A3: MOVWF 49
01A4: BTFSS 49.7
01A3: MOVWF 51
01A4: BTFSS 51.7
01A5: GOTO 1A8
01A6: BSF 03.5
01A7: GOTO 174
.................... lcd_output_rs(address);
01A8: MOVF 47,F
01A8: MOVF 4F,F
01A9: BTFSS 03.2
01AA: GOTO 1AD
01AB: BCF 09.1
678,18 → 678,18
01B9: BCF 09.0
.................... lcd_send_nibble(n >> 4);
01BA: BCF 03.5
01BB: SWAPF 48,W
01BC: MOVWF 49
01BB: SWAPF 50,W
01BC: MOVWF 51
01BD: MOVLW 0F
01BE: ANDWF 49,F
01BF: MOVF 49,W
01C0: MOVWF 4A
01BE: ANDWF 51,F
01BF: MOVF 51,W
01C0: MOVWF 52
01C1: CALL 10F
.................... lcd_send_nibble(n & 0xf);
01C2: MOVF 48,W
01C2: MOVF 50,W
01C3: ANDLW 0F
01C4: MOVWF 49
01C5: MOVWF 4A
01C4: MOVWF 51
01C5: MOVWF 52
01C6: CALL 10F
.................... }
01C7: RETURN
745,12 → 745,12
.................... delay_ms(15);
01DC: MOVLW 0F
01DD: BCF 03.5
01DE: MOVWF 43
01DE: MOVWF 4B
01DF: CALL 0FB
.................... for(i=1;i<=3;++i)
01E0: MOVLW 01
01E1: MOVWF 35
01E2: MOVF 35,W
01E1: MOVWF 3D
01E2: MOVF 3D,W
01E3: SUBLW 03
01E4: BTFSS 03.0
01E5: GOTO 1EE
757,37 → 757,37
.................... {
.................... lcd_send_nibble(3);
01E6: MOVLW 03
01E7: MOVWF 4A
01E7: MOVWF 52
01E8: CALL 10F
.................... delay_ms(5);
01E9: MOVLW 05
01EA: MOVWF 43
01EA: MOVWF 4B
01EB: CALL 0FB
.................... }
01EC: INCF 35,F
01EC: INCF 3D,F
01ED: GOTO 1E2
....................
.................... lcd_send_nibble(2);
01EE: MOVLW 02
01EF: MOVWF 4A
01EF: MOVWF 52
01F0: CALL 10F
.................... for(i=0;i<=3;++i)
01F1: CLRF 35
01F2: MOVF 35,W
01F1: CLRF 3D
01F2: MOVF 3D,W
01F3: SUBLW 03
01F4: BTFSS 03.0
01F5: GOTO 1FF
.................... lcd_send_byte(0,LCD_INIT_STRING[i]);
01F6: MOVF 35,W
01F6: MOVF 3D,W
01F7: CALL 004
01F8: MOVWF 36
01F9: CLRF 47
01FA: MOVF 36,W
01FB: MOVWF 48
01F8: MOVWF 3E
01F9: CLRF 4F
01FA: MOVF 3E,W
01FB: MOVWF 50
01FC: CALL 16C
....................
.................... #if defined(LCD_EXTENDED_NEWLINE)
01FD: INCF 35,F
01FD: INCF 3D,F
01FE: GOTO 1F2
.................... g_LcdX = 0;
.................... g_LcdY = 0;
800,28 → 800,28
.................... BYTE address;
....................
.................... if(y!=1)
0200: DECFSZ 44,W
0200: DECFSZ 4C,W
0201: GOTO 203
0202: GOTO 206
.................... address=LCD_LINE_TWO;
0203: MOVLW 40
0204: MOVWF 45
0204: MOVWF 4D
.................... else
0205: GOTO 207
.................... address=0;
0206: CLRF 45
0206: CLRF 4D
....................
.................... address+=x-1;
0207: MOVLW 01
0208: SUBWF 43,W
0209: ADDWF 45,F
0208: SUBWF 4B,W
0209: ADDWF 4D,F
.................... lcd_send_byte(0,0x80|address);
020A: MOVF 45,W
020A: MOVF 4D,W
020B: IORLW 80
020C: MOVWF 46
020D: CLRF 47
020E: MOVF 46,W
020F: MOVWF 48
020C: MOVWF 4E
020D: CLRF 4F
020E: MOVF 4E,W
020F: MOVWF 50
0210: CALL 16C
....................
.................... #if defined(LCD_EXTENDED_NEWLINE)
835,7 → 835,7
.................... {
.................... switch (c)
.................... {
0212: MOVF 42,W
0212: MOVF 4A,W
0213: XORLW 07
0214: BTFSC 03.2
0215: GOTO 220
851,19 → 851,19
021F: GOTO 238
.................... case '\a' : lcd_gotoxy(1,1); break;
0220: MOVLW 01
0221: MOVWF 43
0222: MOVWF 44
0221: MOVWF 4B
0222: MOVWF 4C
0223: CALL 200
0224: GOTO 23E
....................
.................... case '\f' : lcd_send_byte(0,1);
0225: CLRF 47
0225: CLRF 4F
0226: MOVLW 01
0227: MOVWF 48
0227: MOVWF 50
0228: CALL 16C
.................... delay_ms(2);
0229: MOVLW 02
022A: MOVWF 43
022A: MOVWF 4B
022B: CALL 0FB
.................... #if defined(LCD_EXTENDED_NEWLINE)
.................... g_LcdX = 0;
884,17 → 884,17
.................... #else
.................... case '\n' : lcd_gotoxy(1,2); break;
022D: MOVLW 01
022E: MOVWF 43
022E: MOVWF 4B
022F: MOVLW 02
0230: MOVWF 44
0230: MOVWF 4C
0231: CALL 200
0232: GOTO 23E
.................... #endif
....................
.................... case '\b' : lcd_send_byte(0,0x10); break;
0233: CLRF 47
0233: CLRF 4F
0234: MOVLW 10
0235: MOVWF 48
0235: MOVWF 50
0236: CALL 16C
0237: GOTO 23E
....................
909,9 → 909,9
.................... #else
.................... default : lcd_send_byte(1,c); break;
0238: MOVLW 01
0239: MOVWF 47
023A: MOVF 42,W
023B: MOVWF 48
0239: MOVWF 4F
023A: MOVF 4A,W
023B: MOVWF 50
023C: CALL 16C
023D: GOTO 23E
.................... #endif
1024,11 → 1024,11
.................... I2C_Write(SHT25_ADDR);
0581: MOVLW 80
0582: BCF 03.5
0583: MOVWF 3B
0583: MOVWF 4E
0584: CALL 078
.................... I2C_write(0xE3);
0585: MOVLW E3
0586: MOVWF 3B
0586: MOVWF 4E
0587: CALL 078
.................... i2c_stop();
0588: BCF 20.4
1056,7 → 1056,7
.................... delay_ms(100);
059D: MOVLW 64
059E: BCF 03.5
059F: MOVWF 43
059F: MOVWF 4B
05A0: CALL 0FB
....................
.................... i2c_start();
1087,7 → 1087,7
.................... I2C_Write(SHT25_ADDR+1);
05B9: MOVLW 81
05BA: BCF 03.5
05BB: MOVWF 3B
05BB: MOVWF 4E
05BC: CALL 078
.................... MSB=i2c_read(1);
05BD: MOVLW 01
1094,18 → 1094,18
05BE: MOVWF 77
05BF: CALL 285
05C0: MOVF 78,W
05C1: MOVWF 35
05C1: MOVWF 3D
.................... LSB=i2c_read(1);
05C2: MOVLW 01
05C3: MOVWF 77
05C4: CALL 285
05C5: MOVF 78,W
05C6: MOVWF 36
05C6: MOVWF 3E
.................... Check=i2c_read(0);
05C7: CLRF 77
05C8: CALL 285
05C9: MOVF 78,W
05CA: MOVWF 37
05CA: MOVWF 3F
.................... i2c_stop();
05CB: BCF 20.4
05CC: MOVF 20,W
1131,95 → 1131,95
....................
.................... LSB = LSB >> 2; // trow out status bits
05E0: BCF 03.5
05E1: RRF 36,F
05E2: RRF 36,F
05E1: RRF 3E,F
05E2: RRF 3E,F
05E3: MOVLW 3F
05E4: ANDWF 36,F
05E4: ANDWF 3E,F
....................
.................... data = (((unsigned int16) MSB << 8) + (LSB << 4));
05E5: CLRF 3B
05E6: MOVF 35,W
05E7: MOVWF 3A
05E8: MOVWF 3B
05E9: CLRF 3A
05EA: SWAPF 36,W
05E5: CLRF 43
05E6: MOVF 3D,W
05E7: MOVWF 42
05E8: MOVWF 43
05E9: CLRF 42
05EA: SWAPF 3E,W
05EB: MOVWF 77
05EC: MOVLW F0
05ED: ANDWF 77,F
05EE: MOVF 77,W
05EF: ADDWF 3A,W
05F0: MOVWF 38
05F1: MOVF 3B,W
05F2: MOVWF 39
05EF: ADDWF 42,W
05F0: MOVWF 40
05F1: MOVF 43,W
05F2: MOVWF 41
05F3: BTFSC 03.0
05F4: INCF 39,F
05F4: INCF 41,F
.................... return(-46.85 + 175.72*((float)data/0xFFFF));
05F5: MOVF 39,W
05F6: MOVWF 3B
05F7: MOVF 38,W
05F8: MOVWF 3A
05F5: MOVF 41,W
05F6: MOVWF 4E
05F7: MOVF 40,W
05F8: MOVWF 4D
05F9: CALL 2CA
05FA: MOVF 77,W
05FB: MOVWF 3A
05FB: MOVWF 42
05FC: MOVF 78,W
05FD: MOVWF 3B
05FD: MOVWF 43
05FE: MOVF 79,W
05FF: MOVWF 3C
05FF: MOVWF 44
0600: MOVF 7A,W
0601: MOVWF 3D
0602: MOVWF 41
0601: MOVWF 45
0602: MOVWF 54
0603: MOVF 79,W
0604: MOVWF 40
0604: MOVWF 53
0605: MOVF 78,W
0606: MOVWF 3F
0606: MOVWF 52
0607: MOVF 77,W
0608: MOVWF 3E
0609: CLRF 45
0608: MOVWF 51
0609: CLRF 58
060A: MOVLW FF
060B: MOVWF 44
060B: MOVWF 57
060C: MOVLW 7F
060D: MOVWF 43
060D: MOVWF 56
060E: MOVLW 8E
060F: MOVWF 42
060F: MOVWF 55
0610: CALL 2E7
0611: MOVLW 52
0612: MOVWF 45
0612: MOVWF 4D
0613: MOVLW B8
0614: MOVWF 44
0614: MOVWF 4C
0615: MOVLW 2F
0616: MOVWF 43
0616: MOVWF 4B
0617: MOVLW 86
0618: MOVWF 42
0618: MOVWF 4A
0619: MOVF 7A,W
061A: MOVWF 49
061A: MOVWF 51
061B: MOVF 79,W
061C: MOVWF 48
061C: MOVWF 50
061D: MOVF 78,W
061E: MOVWF 47
061E: MOVWF 4F
061F: MOVF 77,W
0620: MOVWF 46
0620: MOVWF 4E
0621: CALL 3B1
0622: BCF 03.1
0623: MOVLW 66
0624: MOVWF 3D
0625: MOVWF 3C
0624: MOVWF 56
0625: MOVWF 55
0626: MOVLW BB
0627: MOVWF 3B
0627: MOVWF 54
0628: MOVLW 84
0629: MOVWF 3A
0629: MOVWF 53
062A: MOVF 7A,W
062B: MOVWF 41
062B: MOVWF 5A
062C: MOVF 79,W
062D: MOVWF 40
062D: MOVWF 59
062E: MOVF 78,W
062F: MOVWF 3F
062F: MOVWF 58
0630: MOVF 77,W
0631: MOVWF 3E
0631: MOVWF 57
0632: CALL 426
.................... }
0633: BSF 0A.3
0634: BCF 0A.4
0635: GOTO 38B (RETURN)
0635: GOTO 5B9 (RETURN)
....................
.................... float SHT25_get_hum()
.................... {
1254,16 → 1254,16
.................... I2C_Write(SHT25_ADDR);
064E: MOVLW 80
064F: BCF 03.5
0650: MOVWF 3B
0650: MOVWF 4E
0651: CALL 078
.................... I2C_write(0xE5);
0652: MOVLW E5
0653: MOVWF 3B
0653: MOVWF 4E
0654: CALL 078
....................
.................... delay_ms(100);
0655: MOVLW 64
0656: MOVWF 43
0656: MOVWF 4B
0657: CALL 0FB
....................
.................... i2c_start();
1296,7 → 1296,7
.................... I2C_Write(SHT25_ADDR+1);
0672: MOVLW 81
0673: BCF 03.5
0674: MOVWF 3B
0674: MOVWF 4E
0675: CALL 078
.................... MSB=i2c_read(1);
0676: MOVLW 01
1303,18 → 1303,18
0677: MOVWF 77
0678: CALL 285
0679: MOVF 78,W
067A: MOVWF 35
067A: MOVWF 3D
.................... LSB=i2c_read(1);
067B: MOVLW 01
067C: MOVWF 77
067D: CALL 285
067E: MOVF 78,W
067F: MOVWF 36
067F: MOVWF 3E
.................... Check=i2c_read(0);
0680: CLRF 77
0681: CALL 285
0682: MOVF 78,W
0683: MOVWF 37
0683: MOVWF 3F
.................... i2c_stop();
0684: BCF 20.4
0685: MOVF 20,W
1340,92 → 1340,92
....................
.................... LSB = LSB >> 2; // trow out status bits
0699: BCF 03.5
069A: RRF 36,F
069B: RRF 36,F
069A: RRF 3E,F
069B: RRF 3E,F
069C: MOVLW 3F
069D: ANDWF 36,F
069D: ANDWF 3E,F
....................
.................... data = (((unsigned int16) MSB << 8) + (LSB << 4) );
069E: CLRF 3B
069F: MOVF 35,W
06A0: MOVWF 3A
06A1: MOVWF 3B
06A2: CLRF 3A
06A3: SWAPF 36,W
069E: CLRF 43
069F: MOVF 3D,W
06A0: MOVWF 42
06A1: MOVWF 43
06A2: CLRF 42
06A3: SWAPF 3E,W
06A4: MOVWF 77
06A5: MOVLW F0
06A6: ANDWF 77,F
06A7: MOVF 77,W
06A8: ADDWF 3A,W
06A9: MOVWF 38
06AA: MOVF 3B,W
06AB: MOVWF 39
06A8: ADDWF 42,W
06A9: MOVWF 40
06AA: MOVF 43,W
06AB: MOVWF 41
06AC: BTFSC 03.0
06AD: INCF 39,F
06AD: INCF 41,F
.................... return( -6.0 + 125.0*((float)data/0xFFFF));
06AE: MOVF 39,W
06AF: MOVWF 3B
06B0: MOVF 38,W
06B1: MOVWF 3A
06AE: MOVF 41,W
06AF: MOVWF 4E
06B0: MOVF 40,W
06B1: MOVWF 4D
06B2: CALL 2CA
06B3: MOVF 77,W
06B4: MOVWF 3A
06B4: MOVWF 42
06B5: MOVF 78,W
06B6: MOVWF 3B
06B6: MOVWF 43
06B7: MOVF 79,W
06B8: MOVWF 3C
06B8: MOVWF 44
06B9: MOVF 7A,W
06BA: MOVWF 3D
06BB: MOVWF 41
06BA: MOVWF 45
06BB: MOVWF 54
06BC: MOVF 79,W
06BD: MOVWF 40
06BD: MOVWF 53
06BE: MOVF 78,W
06BF: MOVWF 3F
06BF: MOVWF 52
06C0: MOVF 77,W
06C1: MOVWF 3E
06C2: CLRF 45
06C1: MOVWF 51
06C2: CLRF 58
06C3: MOVLW FF
06C4: MOVWF 44
06C4: MOVWF 57
06C5: MOVLW 7F
06C6: MOVWF 43
06C6: MOVWF 56
06C7: MOVLW 8E
06C8: MOVWF 42
06C8: MOVWF 55
06C9: CALL 2E7
06CA: CLRF 45
06CB: CLRF 44
06CA: CLRF 4D
06CB: CLRF 4C
06CC: MOVLW 7A
06CD: MOVWF 43
06CD: MOVWF 4B
06CE: MOVLW 85
06CF: MOVWF 42
06CF: MOVWF 4A
06D0: MOVF 7A,W
06D1: MOVWF 49
06D1: MOVWF 51
06D2: MOVF 79,W
06D3: MOVWF 48
06D3: MOVWF 50
06D4: MOVF 78,W
06D5: MOVWF 47
06D5: MOVWF 4F
06D6: MOVF 77,W
06D7: MOVWF 46
06D7: MOVWF 4E
06D8: CALL 3B1
06D9: BCF 03.1
06DA: CLRF 3D
06DB: CLRF 3C
06DA: CLRF 56
06DB: CLRF 55
06DC: MOVLW C0
06DD: MOVWF 3B
06DD: MOVWF 54
06DE: MOVLW 81
06DF: MOVWF 3A
06DF: MOVWF 53
06E0: MOVF 7A,W
06E1: MOVWF 41
06E1: MOVWF 5A
06E2: MOVF 79,W
06E3: MOVWF 40
06E3: MOVWF 59
06E4: MOVF 78,W
06E5: MOVWF 3F
06E5: MOVWF 58
06E6: MOVF 77,W
06E7: MOVWF 3E
06E7: MOVWF 57
06E8: CALL 426
.................... }
06E9: BSF 0A.3
06EA: BCF 0A.4
06EB: GOTO 396 (RETURN)
06EB: GOTO 5C4 (RETURN)
....................
....................
....................
1471,10 → 1471,10
.................... I2C_Write(LTS01A_address);
0704: MOVLW 90
0705: BCF 03.5
0706: MOVWF 3B
0706: MOVWF 4E
0707: CALL 078
.................... I2C_write(0x00);
0708: CLRF 3B
0708: CLRF 4E
0709: CALL 078
.................... i2c_stop();
070A: BCF 20.4
1527,7 → 1527,7
.................... I2C_Write(LTS01A_address+1);
0738: MOVLW 91
0739: BCF 03.5
073A: MOVWF 3B
073A: MOVWF 4E
073B: CALL 078
.................... MSB=i2c_read(1);
073C: MOVLW 01
1534,12 → 1534,12
073D: MOVWF 77
073E: CALL 285
073F: MOVF 78,W
0740: MOVWF 35
0740: MOVWF 3D
.................... LSB=i2c_read(0);
0741: CLRF 77
0742: CALL 285
0743: MOVF 78,W
0744: MOVWF 36
0744: MOVWF 3E
.................... i2c_stop();
0745: BCF 20.4
0746: MOVF 20,W
1565,40 → 1565,40
....................
.................... data = MAKE16(MSB,LSB);
075A: BCF 03.5
075B: MOVF 35,W
075C: MOVWF 38
075D: MOVF 36,W
075E: MOVWF 37
075B: MOVF 3D,W
075C: MOVWF 40
075D: MOVF 3E,W
075E: MOVWF 3F
....................
.................... return (data * 0.00390625 );
075F: MOVF 38,W
0760: MOVWF 3A
0761: MOVF 37,W
0762: MOVWF 39
0763: MOVF 3A,W
0764: MOVWF 3C
0765: MOVF 39,W
0766: MOVWF 3B
075F: MOVF 40,W
0760: MOVWF 42
0761: MOVF 3F,W
0762: MOVWF 41
0763: MOVF 42,W
0764: MOVWF 44
0765: MOVF 41,W
0766: MOVWF 43
*
078B: MOVF 7A,W
078C: MOVWF 45
078C: MOVWF 4D
078D: MOVF 79,W
078E: MOVWF 44
078E: MOVWF 4C
078F: MOVF 78,W
0790: MOVWF 43
0790: MOVWF 4B
0791: MOVF 77,W
0792: MOVWF 42
0793: CLRF 49
0794: CLRF 48
0795: CLRF 47
0792: MOVWF 4A
0793: CLRF 51
0794: CLRF 50
0795: CLRF 4F
0796: MOVLW 77
0797: MOVWF 46
0797: MOVWF 4E
0798: CALL 3B1
....................
.................... }
0799: BSF 0A.3
079A: BCF 0A.4
079B: GOTO 3A1 (RETURN)
079B: GOTO 5CF (RETURN)
....................
....................
....................
1660,15 → 1660,15
.................... i2c_write(HMC5883L_WRT_ADDR);
00DA: MOVLW 3C
00DB: BCF 03.5
00DC: MOVWF 3B
00DC: MOVWF 4E
00DD: CALL 078
.................... i2c_write(reg);
00DE: MOVF 35,W
00DF: MOVWF 3B
00DE: MOVF 3D,W
00DF: MOVWF 4E
00E0: CALL 078
.................... i2c_write(data);
00E1: MOVF 36,W
00E2: MOVWF 3B
00E1: MOVF 3E,W
00E2: MOVWF 4E
00E3: CALL 078
.................... i2c_stop();
00E4: BCF 20.4
1724,12 → 1724,12
.................... // from the HMC5883L x,y,z registers.
.................... hmc5883l_result compass = {0,0,0};
*
0ADB: CLRF 21
0ADC: CLRF 22
0ADD: CLRF 23
0ADE: CLRF 24
0ADF: CLRF 25
0AE0: CLRF 26
0D09: CLRF 21
0D0A: CLRF 22
0D0B: CLRF 23
0D0C: CLRF 24
0D0D: CLRF 25
0D0E: CLRF 26
....................
.................... //------------------------------
.................... void hmc5883l_read_data(void)
1772,13 → 1772,13
.................... i2c_write(HMC5883L_WRT_ADDR);
0818: MOVLW 3C
0819: BCF 03.5
081A: MOVWF 3B
081A: MOVWF 4E
081B: BCF 0A.3
081C: CALL 078
081D: BSF 0A.3
.................... i2c_write(HMC5883L_X_MSB_REG); // Point to X-msb register
081E: MOVLW 03
081F: MOVWF 3B
081F: MOVWF 4E
0820: BCF 0A.3
0821: CALL 078
0822: BSF 0A.3
1812,7 → 1812,7
.................... i2c_write(HMC5883L_READ_ADDR);
083D: MOVLW 3D
083E: BCF 03.5
083F: MOVWF 3B
083F: MOVWF 4E
0840: BCF 0A.3
0841: CALL 078
0842: BSF 0A.3
1824,7 → 1824,7
0846: CALL 285
0847: BSF 0A.3
0848: MOVF 78,W
0849: MOVWF 36
0849: MOVWF 3E
.................... x_lsb = i2c_read();
084A: MOVLW 01
084B: MOVWF 77
1832,7 → 1832,7
084D: CALL 285
084E: BSF 0A.3
084F: MOVF 78,W
0850: MOVWF 35
0850: MOVWF 3D
....................
.................... z_msb = i2c_read();
0851: MOVLW 01
1841,7 → 1841,7
0854: CALL 285
0855: BSF 0A.3
0856: MOVF 78,W
0857: MOVWF 3A
0857: MOVWF 42
.................... z_lsb = i2c_read();
0858: MOVLW 01
0859: MOVWF 77
1849,7 → 1849,7
085B: CALL 285
085C: BSF 0A.3
085D: MOVF 78,W
085E: MOVWF 39
085E: MOVWF 41
....................
.................... y_msb = i2c_read();
085F: MOVLW 01
1858,7 → 1858,7
0862: CALL 285
0863: BSF 0A.3
0864: MOVF 78,W
0865: MOVWF 38
0865: MOVWF 40
.................... y_lsb = i2c_read(0); // do a NACK on last read
0866: CLRF 77
0867: BCF 0A.3
1865,7 → 1865,7
0868: CALL 285
0869: BSF 0A.3
086A: MOVF 78,W
086B: MOVWF 37
086B: MOVWF 3F
....................
.................... i2c_stop();
086C: BCF 20.4
1893,24 → 1893,24
.................... // Combine high and low bytes into 16-bit values.
.................... compass.x = make16(x_msb, x_lsb);
0881: BCF 03.5
0882: MOVF 36,W
0882: MOVF 3E,W
0883: MOVWF 22
0884: MOVF 35,W
0884: MOVF 3D,W
0885: MOVWF 21
.................... compass.y = make16(y_msb, y_lsb);
0886: MOVF 38,W
0886: MOVF 40,W
0887: MOVWF 24
0888: MOVF 37,W
0888: MOVF 3F,W
0889: MOVWF 23
.................... compass.z = make16(z_msb, z_lsb);
088A: MOVF 3A,W
088A: MOVF 42,W
088B: MOVWF 26
088C: MOVF 39,W
088C: MOVF 41,W
088D: MOVWF 25
.................... }
088E: BSF 0A.3
088F: BCF 0A.4
0890: GOTO 3AB (RETURN)
0890: GOTO 5D9 (RETURN)
....................
....................
....................
4089,494 → 4089,1238
.................... #endif
....................
....................
.................... #define MPL3115_ADDR_R 0xC1 //addresa pro cteni
.................... #define MPL3115_ADDR_W 0xC0
....................
.................... #include "../MPL3115.h"
.................... //microchip pic library for Freescale MPL3115 I2C barometer sensor
....................
.................... /*void mpl3115_setA (void) //setup sensor for altitude measurement
.................... void mpl3115_setP (void) //setup sensor for preasure measurement
.................... float mpl3115_T (void) //temperature in Celsius degrees
.................... float mpl3115_A (void) //altitude in metres
.................... float mpl3115_P (void) //preassure in pascals
.................... */
....................
.................... #include "MPL3115.c"
.................... void mpl3115_setA (void) //setup for altitude measurement
.................... {
....................
....................
.................... i2c_start(); //STANDBY mode
.................... I2C_Write(MPL3115_ADDR_W);
.................... I2C_write(0x26);
.................... I2C_write(0xB8);
.................... i2c_stop();
....................
.................... i2c_start(); //PT_DATA_CFG set
.................... I2C_Write(MPL3115_ADDR_W);
.................... I2C_write(0x13);
.................... I2C_write(0x07); //hodnota
.................... i2c_stop();
....................
.................... i2c_start(); //ACTIVE mode
.................... I2C_Write(MPL3115_ADDR_W);
.................... I2C_write(0x26);
.................... I2C_write(0xB9);
.................... i2c_stop();
.................... }
....................
.................... void mpl3115_setP (void) //nastavení pro tlak
.................... {
....................
....................
.................... i2c_start(); //STANDBY mode
*
09AD: BSF 20.4
09AE: MOVF 20,W
09AF: BSF 03.5
09B0: MOVWF 07
09B1: NOP
09B2: BCF 03.5
09B3: BSF 20.3
09B4: MOVF 20,W
09B5: BSF 03.5
09B6: MOVWF 07
09B7: NOP
09B8: BCF 03.5
09B9: BCF 07.4
09BA: BCF 20.4
09BB: MOVF 20,W
09BC: BSF 03.5
09BD: MOVWF 07
09BE: NOP
09BF: BCF 03.5
09C0: BCF 07.3
09C1: BCF 20.3
09C2: MOVF 20,W
09C3: BSF 03.5
09C4: MOVWF 07
.................... I2C_Write(MPL3115_ADDR_W);
09C5: MOVLW C0
09C6: BCF 03.5
09C7: MOVWF 4E
09C8: BCF 0A.3
09C9: CALL 078
09CA: BSF 0A.3
.................... I2C_write(0x26);
09CB: MOVLW 26
09CC: MOVWF 4E
09CD: BCF 0A.3
09CE: CALL 078
09CF: BSF 0A.3
.................... I2C_write(0xB8);
09D0: MOVLW B8
09D1: MOVWF 4E
09D2: BCF 0A.3
09D3: CALL 078
09D4: BSF 0A.3
.................... i2c_stop();
09D5: BCF 20.4
09D6: MOVF 20,W
09D7: BSF 03.5
09D8: MOVWF 07
09D9: NOP
09DA: BCF 03.5
09DB: BSF 20.3
09DC: MOVF 20,W
09DD: BSF 03.5
09DE: MOVWF 07
09DF: BCF 03.5
09E0: BTFSS 07.3
09E1: GOTO 1E0
09E2: NOP
09E3: GOTO 1E4
09E4: NOP
09E5: BSF 20.4
09E6: MOVF 20,W
09E7: BSF 03.5
09E8: MOVWF 07
09E9: NOP
....................
.................... i2c_start(); //PT_DATA_CFG set
09EA: BCF 03.5
09EB: BSF 20.4
09EC: MOVF 20,W
09ED: BSF 03.5
09EE: MOVWF 07
09EF: NOP
09F0: BCF 03.5
09F1: BSF 20.3
09F2: MOVF 20,W
09F3: BSF 03.5
09F4: MOVWF 07
09F5: NOP
09F6: BCF 03.5
09F7: BCF 07.4
09F8: BCF 20.4
09F9: MOVF 20,W
09FA: BSF 03.5
09FB: MOVWF 07
09FC: NOP
09FD: BCF 03.5
09FE: BCF 07.3
09FF: BCF 20.3
0A00: MOVF 20,W
0A01: BSF 03.5
0A02: MOVWF 07
.................... I2C_Write(MPL3115_ADDR_W);
0A03: MOVLW C0
0A04: BCF 03.5
0A05: MOVWF 4E
0A06: BCF 0A.3
0A07: CALL 078
0A08: BSF 0A.3
.................... I2C_write(0x13);
0A09: MOVLW 13
0A0A: MOVWF 4E
0A0B: BCF 0A.3
0A0C: CALL 078
0A0D: BSF 0A.3
.................... I2C_write(0x07); //hodnota
0A0E: MOVLW 07
0A0F: MOVWF 4E
0A10: BCF 0A.3
0A11: CALL 078
0A12: BSF 0A.3
.................... i2c_stop();
0A13: BCF 20.4
0A14: MOVF 20,W
0A15: BSF 03.5
0A16: MOVWF 07
0A17: NOP
0A18: BCF 03.5
0A19: BSF 20.3
0A1A: MOVF 20,W
0A1B: BSF 03.5
0A1C: MOVWF 07
0A1D: BCF 03.5
0A1E: BTFSS 07.3
0A1F: GOTO 21E
0A20: NOP
0A21: GOTO 222
0A22: NOP
0A23: BSF 20.4
0A24: MOVF 20,W
0A25: BSF 03.5
0A26: MOVWF 07
0A27: NOP
....................
.................... i2c_start(); //ACTIVE mode
0A28: BCF 03.5
0A29: BSF 20.4
0A2A: MOVF 20,W
0A2B: BSF 03.5
0A2C: MOVWF 07
0A2D: NOP
0A2E: BCF 03.5
0A2F: BSF 20.3
0A30: MOVF 20,W
0A31: BSF 03.5
0A32: MOVWF 07
0A33: NOP
0A34: BCF 03.5
0A35: BCF 07.4
0A36: BCF 20.4
0A37: MOVF 20,W
0A38: BSF 03.5
0A39: MOVWF 07
0A3A: NOP
0A3B: BCF 03.5
0A3C: BCF 07.3
0A3D: BCF 20.3
0A3E: MOVF 20,W
0A3F: BSF 03.5
0A40: MOVWF 07
.................... I2C_Write(MPL3115_ADDR_W);
0A41: MOVLW C0
0A42: BCF 03.5
0A43: MOVWF 4E
0A44: BCF 0A.3
0A45: CALL 078
0A46: BSF 0A.3
.................... I2C_write(0x26);
0A47: MOVLW 26
0A48: MOVWF 4E
0A49: BCF 0A.3
0A4A: CALL 078
0A4B: BSF 0A.3
.................... I2C_write(0x39);
0A4C: MOVLW 39
0A4D: MOVWF 4E
0A4E: BCF 0A.3
0A4F: CALL 078
0A50: BSF 0A.3
.................... i2c_stop();
0A51: BCF 20.4
0A52: MOVF 20,W
0A53: BSF 03.5
0A54: MOVWF 07
0A55: NOP
0A56: BCF 03.5
0A57: BSF 20.3
0A58: MOVF 20,W
0A59: BSF 03.5
0A5A: MOVWF 07
0A5B: BCF 03.5
0A5C: BTFSS 07.3
0A5D: GOTO 25C
0A5E: NOP
0A5F: GOTO 260
0A60: NOP
0A61: BSF 20.4
0A62: MOVF 20,W
0A63: BSF 03.5
0A64: MOVWF 07
0A65: NOP
.................... }
0A66: BCF 03.5
0A67: BSF 0A.3
0A68: BCF 0A.4
0A69: GOTO 5EC (RETURN)
....................
....................
.................... byte mpl3115_read (byte reg)
.................... {
.................... byte i;
....................
.................... i2c_start();
*
079C: BSF 20.4
079D: MOVF 20,W
079E: BSF 03.5
079F: MOVWF 07
07A0: NOP
07A1: BCF 03.5
07A2: BSF 20.3
07A3: MOVF 20,W
07A4: BSF 03.5
07A5: MOVWF 07
07A6: NOP
07A7: BCF 03.5
07A8: BCF 07.4
07A9: BCF 20.4
07AA: MOVF 20,W
07AB: BSF 03.5
07AC: MOVWF 07
07AD: NOP
07AE: BCF 03.5
07AF: BCF 07.3
07B0: BCF 20.3
07B1: MOVF 20,W
07B2: BSF 03.5
07B3: MOVWF 07
.................... I2C_Write(MPL3115_ADDR_W);
07B4: MOVLW C0
07B5: BCF 03.5
07B6: MOVWF 4E
07B7: CALL 078
.................... I2C_write(reg);
07B8: MOVF 4C,W
07B9: MOVWF 4E
07BA: CALL 078
.................... i2c_start();
07BB: BSF 20.4
07BC: MOVF 20,W
07BD: BSF 03.5
07BE: MOVWF 07
07BF: NOP
07C0: BCF 03.5
07C1: BSF 20.3
07C2: MOVF 20,W
07C3: BSF 03.5
07C4: MOVWF 07
07C5: NOP
07C6: BCF 03.5
07C7: BTFSS 07.3
07C8: GOTO 7C7
07C9: BCF 07.4
07CA: BCF 20.4
07CB: MOVF 20,W
07CC: BSF 03.5
07CD: MOVWF 07
07CE: NOP
07CF: BCF 03.5
07D0: BCF 07.3
07D1: BCF 20.3
07D2: MOVF 20,W
07D3: BSF 03.5
07D4: MOVWF 07
.................... I2C_Write(MPL3115_ADDR_R);
07D5: MOVLW C1
07D6: BCF 03.5
07D7: MOVWF 4E
07D8: CALL 078
.................... i=i2c_read(0);
07D9: CLRF 77
07DA: CALL 285
07DB: MOVF 78,W
07DC: MOVWF 4D
.................... i2c_stop();
07DD: BCF 20.4
07DE: MOVF 20,W
07DF: BSF 03.5
07E0: MOVWF 07
07E1: NOP
07E2: BCF 03.5
07E3: BSF 20.3
07E4: MOVF 20,W
07E5: BSF 03.5
07E6: MOVWF 07
07E7: BCF 03.5
07E8: BTFSS 07.3
07E9: GOTO 7E8
07EA: NOP
07EB: GOTO 7EC
07EC: NOP
07ED: BSF 20.4
07EE: MOVF 20,W
07EF: BSF 03.5
07F0: MOVWF 07
07F1: NOP
....................
.................... return i;
07F2: BCF 03.5
07F3: MOVF 4D,W
07F4: MOVWF 78
.................... }
07F5: RETURN
....................
....................
.................... float mpl3115_T (void) //teplota ve stupnich
.................... {
.................... int m;
.................... float l, t;
....................
.................... m = mpl3115_read (0x04);
*
0891: MOVLW 04
0892: MOVWF 4C
0893: BCF 0A.3
0894: CALL 79C
0895: BSF 0A.3
0896: MOVF 78,W
0897: MOVWF 3D
.................... l = (float)(mpl3115_read(0x05)>>4)/16.0;
0898: MOVLW 05
0899: MOVWF 4C
089A: BCF 0A.3
089B: CALL 79C
089C: BSF 0A.3
089D: SWAPF 78,W
089E: MOVWF 77
089F: MOVLW 0F
08A0: ANDWF 77,F
08A1: MOVF 77,W
08A2: CLRF 4E
08A3: MOVWF 4D
08A4: BCF 0A.3
08A5: CALL 2CA
08A6: BSF 0A.3
08A7: MOVF 77,W
08A8: MOVWF 46
08A9: MOVF 78,W
08AA: MOVWF 47
08AB: MOVF 79,W
08AC: MOVWF 48
08AD: MOVF 7A,W
08AE: MOVWF 49
08AF: MOVWF 54
08B0: MOVF 48,W
08B1: MOVWF 53
08B2: MOVF 47,W
08B3: MOVWF 52
08B4: MOVF 46,W
08B5: MOVWF 51
08B6: CLRF 58
08B7: CLRF 57
08B8: CLRF 56
08B9: MOVLW 83
08BA: MOVWF 55
08BB: BCF 0A.3
08BC: CALL 2E7
08BD: BSF 0A.3
08BE: MOVF 7A,W
08BF: MOVWF 41
08C0: MOVF 79,W
08C1: MOVWF 40
08C2: MOVF 78,W
08C3: MOVWF 3F
08C4: MOVF 77,W
08C5: MOVWF 3E
.................... t = (float)(M + L);
08C6: CLRF 4E
08C7: MOVF 3D,W
08C8: MOVWF 4D
08C9: BCF 0A.3
08CA: CALL 2CA
08CB: BSF 0A.3
08CC: BCF 03.1
08CD: MOVF 7A,W
08CE: MOVWF 56
08CF: MOVF 79,W
08D0: MOVWF 55
08D1: MOVF 78,W
08D2: MOVWF 54
08D3: MOVF 77,W
08D4: MOVWF 53
08D5: MOVF 41,W
08D6: MOVWF 5A
08D7: MOVF 40,W
08D8: MOVWF 59
08D9: MOVF 3F,W
08DA: MOVWF 58
08DB: MOVF 3E,W
08DC: MOVWF 57
08DD: BCF 0A.3
08DE: CALL 426
08DF: BSF 0A.3
08E0: MOVF 7A,W
08E1: MOVWF 45
08E2: MOVF 79,W
08E3: MOVWF 44
08E4: MOVF 78,W
08E5: MOVWF 43
08E6: MOVF 77,W
08E7: MOVWF 42
.................... return t;
08E8: MOVF 42,W
08E9: MOVWF 77
08EA: MOVF 43,W
08EB: MOVWF 78
08EC: MOVF 44,W
08ED: MOVWF 79
08EE: MOVF 45,W
08EF: MOVWF 7A
.................... }
08F0: BSF 0A.3
08F1: BCF 0A.4
08F2: GOTO 5DA (RETURN)
....................
.................... float mpl3115_A (void) //vyska v m
.................... {
....................
.................... int16 m, c;
.................... float l, a;
....................
.................... m = mpl3115_read (0x01);
.................... c = mpl3115_read (0x02);
.................... l = (float)(mpl3115_read(0x03)>>4)/16.0;
.................... a = (float)((m << 8)|c) + l;
.................... return a;
.................... }
....................
....................
.................... float mpl3115_P (void) //tlak v Pa
.................... {
.................... unsigned int32 m;
.................... unsigned int16 c;
.................... unsigned int l;
.................... float p, l1;
....................
.................... m = mpl3115_read (0x01);
08F3: MOVLW 01
08F4: MOVWF 4C
08F5: BCF 0A.3
08F6: CALL 79C
08F7: BSF 0A.3
08F8: CLRF 40
08F9: CLRF 3F
08FA: CLRF 3E
08FB: MOVF 78,W
08FC: MOVWF 3D
.................... c = mpl3115_read (0x02);
08FD: MOVLW 02
08FE: MOVWF 4C
08FF: BCF 0A.3
0900: CALL 79C
0901: BSF 0A.3
0902: CLRF 42
0903: MOVF 78,W
0904: MOVWF 41
.................... l = mpl3115_read(0x03);
0905: MOVLW 03
0906: MOVWF 4C
0907: BCF 0A.3
0908: CALL 79C
0909: BSF 0A.3
090A: MOVF 78,W
090B: MOVWF 43
....................
.................... l1= (float)(l>>4)/4.0;
090C: SWAPF 43,W
090D: MOVWF 77
090E: MOVLW 0F
090F: ANDWF 77,F
0910: MOVF 77,W
0911: CLRF 4E
0912: MOVWF 4D
0913: BCF 0A.3
0914: CALL 2CA
0915: BSF 0A.3
0916: MOVF 77,W
0917: MOVWF 4D
0918: MOVF 78,W
0919: MOVWF 4E
091A: MOVF 79,W
091B: MOVWF 4F
091C: MOVF 7A,W
091D: MOVWF 50
091E: MOVWF 54
091F: MOVF 79,W
0920: MOVWF 53
0921: MOVF 78,W
0922: MOVWF 52
0923: MOVF 77,W
0924: MOVWF 51
0925: CLRF 58
0926: CLRF 57
0927: CLRF 56
0928: MOVLW 81
0929: MOVWF 55
092A: BCF 0A.3
092B: CALL 2E7
092C: BSF 0A.3
092D: MOVF 7A,W
092E: MOVWF 4B
092F: MOVF 79,W
0930: MOVWF 4A
0931: MOVF 78,W
0932: MOVWF 49
0933: MOVF 77,W
0934: MOVWF 48
.................... p = (float)((m << 10)|(c<<2)|(l>>6)) + l1;
0935: CLRF 4D
0936: RLF 3D,W
0937: MOVWF 4E
0938: RLF 3E,W
0939: MOVWF 4F
093A: RLF 3F,W
093B: MOVWF 50
093C: RLF 4E,F
093D: RLF 4F,F
093E: RLF 50,F
093F: MOVLW FC
0940: ANDWF 4E,F
0941: RLF 41,W
0942: MOVWF 79
0943: RLF 42,W
0944: MOVWF 7A
0945: RLF 79,F
0946: RLF 7A,F
0947: MOVLW FC
0948: ANDWF 79,F
0949: MOVF 79,W
094A: IORWF 4D,F
094B: MOVF 7A,W
094C: IORWF 4E,F
094D: SWAPF 43,W
094E: MOVWF 77
094F: RRF 77,F
0950: RRF 77,F
0951: MOVLW 03
0952: ANDWF 77,F
0953: MOVF 77,W
0954: IORWF 4D,W
0955: MOVWF 77
0956: MOVF 4E,W
0957: MOVWF 78
0958: MOVF 4F,W
0959: MOVWF 79
095A: MOVF 50,W
095B: MOVWF 7A
095C: MOVF 7A,W
095D: MOVWF 56
095E: MOVF 79,W
095F: MOVWF 55
0960: MOVF 78,W
0961: MOVWF 54
0962: MOVF 77,W
0963: MOVWF 53
*
097E: MOVF 77,W
097F: MOVWF 4D
0980: MOVF 78,W
0981: MOVWF 4E
0982: MOVF 79,W
0983: MOVWF 4F
0984: MOVF 7A,W
0985: MOVWF 50
0986: BCF 03.1
0987: MOVF 7A,W
0988: MOVWF 56
0989: MOVF 79,W
098A: MOVWF 55
098B: MOVF 78,W
098C: MOVWF 54
098D: MOVF 77,W
098E: MOVWF 53
098F: MOVF 4B,W
0990: MOVWF 5A
0991: MOVF 4A,W
0992: MOVWF 59
0993: MOVF 49,W
0994: MOVWF 58
0995: MOVF 48,W
0996: MOVWF 57
0997: BCF 0A.3
0998: CALL 426
0999: BSF 0A.3
099A: MOVF 7A,W
099B: MOVWF 47
099C: MOVF 79,W
099D: MOVWF 46
099E: MOVF 78,W
099F: MOVWF 45
09A0: MOVF 77,W
09A1: MOVWF 44
....................
.................... return p;
09A2: MOVF 44,W
09A3: MOVWF 77
09A4: MOVF 45,W
09A5: MOVWF 78
09A6: MOVF 46,W
09A7: MOVWF 79
09A8: MOVF 47,W
09A9: MOVWF 7A
.................... }
09AA: BSF 0A.3
09AB: BCF 0A.4
09AC: GOTO 5E3 (RETURN)
....................
....................
....................
....................
....................
....................
.................... void main()
.................... {
*
0AB7: CLRF 04
0AB8: BCF 03.7
0AB9: MOVLW 1F
0ABA: ANDWF 03,F
0ABB: MOVLW 71
0ABC: BSF 03.5
0ABD: MOVWF 0F
0ABE: MOVF 0F,W
0ABF: BSF 03.6
0AC0: BCF 07.3
0AC1: MOVLW 0C
0AC2: BCF 03.6
0AC3: MOVWF 19
0AC4: MOVLW A2
0AC5: MOVWF 18
0AC6: MOVLW 90
0AC7: BCF 03.5
0AC8: MOVWF 18
0AC9: BSF 03.5
0ACA: BSF 03.6
0ACB: MOVF 09,W
0ACC: ANDLW C0
0ACD: MOVWF 09
0ACE: BCF 03.6
0ACF: BCF 1F.4
0AD0: BCF 1F.5
0AD1: MOVLW 00
0AD2: BSF 03.6
0AD3: MOVWF 08
0AD4: BCF 03.5
0AD5: CLRF 07
0AD6: CLRF 08
0AD7: CLRF 09
0CE5: CLRF 04
0CE6: BCF 03.7
0CE7: MOVLW 1F
0CE8: ANDWF 03,F
0CE9: MOVLW 71
0CEA: BSF 03.5
0CEB: MOVWF 0F
0CEC: MOVF 0F,W
0CED: BSF 03.6
0CEE: BCF 07.3
0CEF: MOVLW 0C
0CF0: BCF 03.6
0CF1: MOVWF 19
0CF2: MOVLW A2
0CF3: MOVWF 18
0CF4: MOVLW 90
0CF5: BCF 03.5
0CF6: MOVWF 18
0CF7: BSF 03.5
0CF8: BSF 03.6
0CF9: MOVF 09,W
0CFA: ANDLW C0
0CFB: MOVWF 09
0CFC: BCF 03.6
0CFD: BCF 1F.4
0CFE: BCF 1F.5
0CFF: MOVLW 00
0D00: BSF 03.6
0D01: MOVWF 08
0D02: BCF 03.5
0D03: CLRF 07
0D04: CLRF 08
0D05: CLRF 09
*
0AE1: CLRF 34
0AE2: CLRF 33
.................... float temp1, temp2, humidity;
0D0F: CLRF 3C
0D10: CLRF 3B
.................... float temp1, temp2, temp3, humidity, preasure;
.................... int16 i=0;
....................
.................... setup_adc_ports(NO_ANALOGS|VSS_VDD);
0AE3: BSF 03.5
0AE4: BSF 03.6
0AE5: MOVF 09,W
0AE6: ANDLW C0
0AE7: MOVWF 09
0AE8: BCF 03.6
0AE9: BCF 1F.4
0AEA: BCF 1F.5
0AEB: MOVLW 00
0AEC: BSF 03.6
0AED: MOVWF 08
0D11: BSF 03.5
0D12: BSF 03.6
0D13: MOVF 09,W
0D14: ANDLW C0
0D15: MOVWF 09
0D16: BCF 03.6
0D17: BCF 1F.4
0D18: BCF 1F.5
0D19: MOVLW 00
0D1A: BSF 03.6
0D1B: MOVWF 08
.................... setup_adc(ADC_CLOCK_DIV_2);
0AEE: BCF 03.5
0AEF: BCF 03.6
0AF0: BCF 1F.6
0AF1: BCF 1F.7
0AF2: BSF 03.5
0AF3: BSF 1F.7
0AF4: BCF 03.5
0AF5: BSF 1F.0
0D1C: BCF 03.5
0D1D: BCF 03.6
0D1E: BCF 1F.6
0D1F: BCF 1F.7
0D20: BSF 03.5
0D21: BSF 1F.7
0D22: BCF 03.5
0D23: BSF 1F.0
.................... setup_spi(SPI_SS_DISABLED);
0AF6: BCF 14.5
0AF7: BCF 20.5
0AF8: MOVF 20,W
0AF9: BSF 03.5
0AFA: MOVWF 07
0AFB: BCF 03.5
0AFC: BSF 20.4
0AFD: MOVF 20,W
0AFE: BSF 03.5
0AFF: MOVWF 07
0B00: BCF 03.5
0B01: BCF 20.3
0B02: MOVF 20,W
0B03: BSF 03.5
0B04: MOVWF 07
0B05: MOVLW 01
0B06: BCF 03.5
0B07: MOVWF 14
0B08: MOVLW 00
0B09: BSF 03.5
0B0A: MOVWF 14
0D24: BCF 14.5
0D25: BCF 20.5
0D26: MOVF 20,W
0D27: BSF 03.5
0D28: MOVWF 07
0D29: BCF 03.5
0D2A: BSF 20.4
0D2B: MOVF 20,W
0D2C: BSF 03.5
0D2D: MOVWF 07
0D2E: BCF 03.5
0D2F: BCF 20.3
0D30: MOVF 20,W
0D31: BSF 03.5
0D32: MOVWF 07
0D33: MOVLW 01
0D34: BCF 03.5
0D35: MOVWF 14
0D36: MOVLW 00
0D37: BSF 03.5
0D38: MOVWF 14
.................... setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
0B0B: MOVF 01,W
0B0C: ANDLW C7
0B0D: IORLW 08
0B0E: MOVWF 01
0D39: MOVF 01,W
0D3A: ANDLW C7
0D3B: IORLW 08
0D3C: MOVWF 01
.................... setup_timer_1(T1_DISABLED);
0B0F: BCF 03.5
0B10: CLRF 10
0D3D: BCF 03.5
0D3E: CLRF 10
.................... setup_timer_2(T2_DISABLED,0,1);
0B11: MOVLW 00
0B12: MOVWF 78
0B13: MOVWF 12
0B14: MOVLW 00
0B15: BSF 03.5
0B16: MOVWF 12
0D3F: MOVLW 00
0D40: MOVWF 78
0D41: MOVWF 12
0D42: MOVLW 00
0D43: BSF 03.5
0D44: MOVWF 12
.................... setup_ccp1(CCP_OFF);
0B17: BCF 03.5
0B18: BSF 20.2
0B19: MOVF 20,W
0B1A: BSF 03.5
0B1B: MOVWF 07
0B1C: BCF 03.5
0B1D: CLRF 17
0B1E: BSF 03.5
0B1F: CLRF 1B
0B20: CLRF 1C
0B21: MOVLW 01
0B22: MOVWF 1D
0D45: BCF 03.5
0D46: BSF 20.2
0D47: MOVF 20,W
0D48: BSF 03.5
0D49: MOVWF 07
0D4A: BCF 03.5
0D4B: CLRF 17
0D4C: BSF 03.5
0D4D: CLRF 1B
0D4E: CLRF 1C
0D4F: MOVLW 01
0D50: MOVWF 1D
.................... setup_comparator(NC_NC_NC_NC); // This device COMP currently not supported by the PICWizard
0B23: BCF 03.5
0B24: BSF 03.6
0B25: CLRF 07
0B26: CLRF 08
0B27: CLRF 09
0D51: BCF 03.5
0D52: BSF 03.6
0D53: CLRF 07
0D54: CLRF 08
0D55: CLRF 09
.................... setup_oscillator(OSC_8MHZ);
0B28: MOVLW 71
0B29: BSF 03.5
0B2A: BCF 03.6
0B2B: MOVWF 0F
0B2C: MOVF 0F,W
0D56: MOVLW 71
0D57: BSF 03.5
0D58: BCF 03.6
0D59: MOVWF 0F
0D5A: MOVF 0F,W
....................
....................
.................... printf("GeoMet01A\r\n");
0B2D: MOVLW 0C
0B2E: BCF 03.5
0B2F: BSF 03.6
0B30: MOVWF 0D
0B31: MOVLW 00
0B32: MOVWF 0F
0B33: BCF 0A.3
0B34: BCF 03.6
0B35: CALL 030
0B36: BSF 0A.3
0D5B: MOVLW 0C
0D5C: BCF 03.5
0D5D: BSF 03.6
0D5E: MOVWF 0D
0D5F: MOVLW 00
0D60: MOVWF 0F
0D61: BCF 0A.3
0D62: BCF 03.6
0D63: CALL 030
0D64: BSF 0A.3
.................... printf("(c) Kaklik 2013\r\n");
0B37: MOVLW 12
0B38: BSF 03.6
0B39: MOVWF 0D
0B3A: MOVLW 00
0B3B: MOVWF 0F
0B3C: BCF 0A.3
0B3D: BCF 03.6
0B3E: CALL 030
0B3F: BSF 0A.3
0D65: MOVLW 12
0D66: BSF 03.6
0D67: MOVWF 0D
0D68: MOVLW 00
0D69: MOVWF 0F
0D6A: BCF 0A.3
0D6B: BCF 03.6
0D6C: CALL 030
0D6D: BSF 0A.3
.................... printf("www.mlab.cz\r\n");
0B40: MOVLW 1B
0B41: BSF 03.6
0B42: MOVWF 0D
0B43: MOVLW 00
0B44: MOVWF 0F
0B45: BCF 0A.3
0B46: BCF 03.6
0B47: CALL 030
0B48: BSF 0A.3
0D6E: MOVLW 1B
0D6F: BSF 03.6
0D70: MOVWF 0D
0D71: MOVLW 00
0D72: MOVWF 0F
0D73: BCF 0A.3
0D74: BCF 03.6
0D75: CALL 030
0D76: BSF 0A.3
....................
.................... // Init the HMC5883L. Set Mode register for
.................... // continuous measurements.
.................... hmc5883l_write_reg(HMC5883L_CFG_A_REG, 0x18); // no average, maximal update range
0B49: CLRF 35
0B4A: MOVLW 18
0B4B: MOVWF 36
0B4C: BCF 0A.3
0B4D: CALL 0C2
0B4E: BSF 0A.3
0D77: CLRF 3D
0D78: MOVLW 18
0D79: MOVWF 3E
0D7A: BCF 0A.3
0D7B: CALL 0C2
0D7C: BSF 0A.3
.................... hmc5883l_write_reg(HMC5883L_CFG_B_REG, 0x00); // minimal range
0B4F: MOVLW 01
0B50: MOVWF 35
0B51: CLRF 36
0B52: BCF 0A.3
0B53: CALL 0C2
0B54: BSF 0A.3
0D7D: MOVLW 01
0D7E: MOVWF 3D
0D7F: CLRF 3E
0D80: BCF 0A.3
0D81: CALL 0C2
0D82: BSF 0A.3
.................... hmc5883l_write_reg(HMC5883L_MODE_REG, 0x00);
0B55: MOVLW 02
0B56: MOVWF 35
0B57: CLRF 36
0B58: BCF 0A.3
0B59: CALL 0C2
0B5A: BSF 0A.3
0D83: MOVLW 02
0D84: MOVWF 3D
0D85: CLRF 3E
0D86: BCF 0A.3
0D87: CALL 0C2
0D88: BSF 0A.3
....................
.................... lcd_init();
0B5B: BCF 0A.3
0B5C: CALL 1C8
0B5D: BSF 0A.3
0D89: BCF 0A.3
0D8A: CALL 1C8
0D8B: BSF 0A.3
.................... lcd_putc("(c) Kaklik 2013");
0B5E: MOVLW 22
0B5F: BSF 03.6
0B60: MOVWF 0D
0B61: MOVLW 00
0B62: MOVWF 0F
0B63: BCF 0A.3
0B64: BCF 03.6
0B65: CALL 23F
0B66: BSF 0A.3
0D8C: MOVLW 22
0D8D: BSF 03.6
0D8E: MOVWF 0D
0D8F: MOVLW 00
0D90: MOVWF 0F
0D91: BCF 0A.3
0D92: BCF 03.6
0D93: CALL 23F
0D94: BSF 0A.3
.................... lcd_gotoxy(3,2);
0B67: MOVLW 03
0B68: MOVWF 43
0B69: MOVLW 02
0B6A: MOVWF 44
0B6B: BCF 0A.3
0B6C: CALL 200
0B6D: BSF 0A.3
0D95: MOVLW 03
0D96: MOVWF 4B
0D97: MOVLW 02
0D98: MOVWF 4C
0D99: BCF 0A.3
0D9A: CALL 200
0D9B: BSF 0A.3
.................... lcd_putc("www.mlab.cz");
0B6E: MOVLW 2A
0B6F: BSF 03.6
0B70: MOVWF 0D
0B71: MOVLW 00
0B72: MOVWF 0F
0B73: BCF 0A.3
0B74: BCF 03.6
0B75: CALL 23F
0B76: BSF 0A.3
0D9C: MOVLW 2A
0D9D: BSF 03.6
0D9E: MOVWF 0D
0D9F: MOVLW 00
0DA0: MOVWF 0F
0DA1: BCF 0A.3
0DA2: BCF 03.6
0DA3: CALL 23F
0DA4: BSF 0A.3
.................... Delay_ms(2000);
0B77: MOVLW 08
0B78: MOVWF 35
0B79: MOVLW FA
0B7A: MOVWF 43
0B7B: BCF 0A.3
0B7C: CALL 0FB
0B7D: BSF 0A.3
0B7E: DECFSZ 35,F
0B7F: GOTO 379
0DA5: MOVLW 08
0DA6: MOVWF 3D
0DA7: MOVLW FA
0DA8: MOVWF 4B
0DA9: BCF 0A.3
0DAA: CALL 0FB
0DAB: BSF 0A.3
0DAC: DECFSZ 3D,F
0DAD: GOTO 5A7
.................... lcd_init();
0B80: BCF 0A.3
0B81: CALL 1C8
0B82: BSF 0A.3
0DAE: BCF 0A.3
0DAF: CALL 1C8
0DB0: BSF 0A.3
....................
.................... while (TRUE)
.................... {
.................... lcd_gotoxy(1,1);
0B83: MOVLW 01
0B84: MOVWF 43
0B85: MOVWF 44
0B86: BCF 0A.3
0B87: CALL 200
0B88: BSF 0A.3
0DB1: MOVLW 01
0DB2: MOVWF 4B
0DB3: MOVWF 4C
0DB4: BCF 0A.3
0DB5: CALL 200
0DB6: BSF 0A.3
.................... temp1 = SHT25_get_temp();
0B89: BCF 0A.3
0B8A: GOTO 567
0B8B: BSF 0A.3
0B8C: MOVF 7A,W
0B8D: MOVWF 2A
0B8E: MOVF 79,W
0B8F: MOVWF 29
0B90: MOVF 78,W
0B91: MOVWF 28
0B92: MOVF 77,W
0B93: MOVWF 27
0DB7: BCF 0A.3
0DB8: GOTO 567
0DB9: BSF 0A.3
0DBA: MOVF 7A,W
0DBB: MOVWF 2A
0DBC: MOVF 79,W
0DBD: MOVWF 29
0DBE: MOVF 78,W
0DBF: MOVWF 28
0DC0: MOVF 77,W
0DC1: MOVWF 27
.................... humidity = SHT25_get_hum();
0B94: BCF 0A.3
0B95: GOTO 636
0B96: BSF 0A.3
0B97: MOVF 7A,W
0B98: MOVWF 32
0B99: MOVF 79,W
0B9A: MOVWF 31
0B9B: MOVF 78,W
0B9C: MOVWF 30
0B9D: MOVF 77,W
0B9E: MOVWF 2F
0DC2: BCF 0A.3
0DC3: GOTO 636
0DC4: BSF 0A.3
0DC5: MOVF 7A,W
0DC6: MOVWF 36
0DC7: MOVF 79,W
0DC8: MOVWF 35
0DC9: MOVF 78,W
0DCA: MOVWF 34
0DCB: MOVF 77,W
0DCC: MOVWF 33
.................... temp2= LTS01_get_temp();
0B9F: BCF 0A.3
0BA0: GOTO 6EC
0BA1: BSF 0A.3
0BA2: MOVF 7A,W
0BA3: MOVWF 2E
0BA4: MOVF 79,W
0BA5: MOVWF 2D
0BA6: MOVF 78,W
0BA7: MOVWF 2C
0BA8: MOVF 77,W
0BA9: MOVWF 2B
0DCD: BCF 0A.3
0DCE: GOTO 6EC
0DCF: BSF 0A.3
0DD0: MOVF 7A,W
0DD1: MOVWF 2E
0DD2: MOVF 79,W
0DD3: MOVWF 2D
0DD4: MOVF 78,W
0DD5: MOVWF 2C
0DD6: MOVF 77,W
0DD7: MOVWF 2B
.................... hmc5883l_read_data();
0BAA: GOTO 000
0DD8: GOTO 000
....................
.................... printf(lcd_putc,"%f C %f \%%",temp1, humidity);
0BAB: MOVLW 89
0BAC: MOVWF 04
0BAD: MOVF 2A,W
0BAE: MOVWF 38
0BAF: MOVF 29,W
0BB0: MOVWF 37
0BB1: MOVF 28,W
0BB2: MOVWF 36
0BB3: MOVF 27,W
0BB4: MOVWF 35
0BB5: MOVLW 02
0BB6: MOVWF 39
0BB7: CALL 091
0BB8: MOVLW 20
0BB9: MOVWF 42
0BBA: BCF 0A.3
0BBB: CALL 212
0BBC: BSF 0A.3
0BBD: MOVLW 43
0BBE: MOVWF 42
0BBF: BCF 0A.3
0BC0: CALL 212
0BC1: BSF 0A.3
0BC2: MOVLW 20
0BC3: MOVWF 42
0BC4: BCF 0A.3
0BC5: CALL 212
0BC6: BSF 0A.3
0BC7: MOVLW 89
0BC8: MOVWF 04
0BC9: MOVF 32,W
0BCA: MOVWF 38
0BCB: MOVF 31,W
0BCC: MOVWF 37
0BCD: MOVF 30,W
0BCE: MOVWF 36
0BCF: MOVF 2F,W
0BD0: MOVWF 35
0BD1: MOVLW 02
0BD2: MOVWF 39
0BD3: CALL 091
0BD4: MOVLW 20
0BD5: MOVWF 42
0BD6: BCF 0A.3
0BD7: CALL 212
0BD8: BSF 0A.3
0BD9: MOVLW 25
0BDA: MOVWF 42
0BDB: BCF 0A.3
0BDC: CALL 212
0BDD: BSF 0A.3
.................... temp3=mpl3115_T();
0DD9: GOTO 091
0DDA: MOVF 7A,W
0DDB: MOVWF 32
0DDC: MOVF 79,W
0DDD: MOVWF 31
0DDE: MOVF 78,W
0DDF: MOVWF 30
0DE0: MOVF 77,W
0DE1: MOVWF 2F
.................... preasure=mpl3115_P();
0DE2: GOTO 0F3
0DE3: MOVF 7A,W
0DE4: MOVWF 3A
0DE5: MOVF 79,W
0DE6: MOVWF 39
0DE7: MOVF 78,W
0DE8: MOVWF 38
0DE9: MOVF 77,W
0DEA: MOVWF 37
.................... mpl3115_setP(); //nastaveni pro tlak a teplotu
0DEB: GOTO 1AD
....................
.................... printf(lcd_putc,"%2.2f%cC %2.2f\%%",temp1, 0xb2, humidity);
0DEC: MOVLW 89
0DED: MOVWF 04
0DEE: MOVF 2A,W
0DEF: MOVWF 40
0DF0: MOVF 29,W
0DF1: MOVWF 3F
0DF2: MOVF 28,W
0DF3: MOVWF 3E
0DF4: MOVF 27,W
0DF5: MOVWF 3D
0DF6: MOVLW 02
0DF7: MOVWF 41
0DF8: CALL 2CB
0DF9: MOVLW B2
0DFA: MOVWF 4A
0DFB: BCF 0A.3
0DFC: CALL 212
0DFD: BSF 0A.3
0DFE: MOVLW 43
0DFF: MOVWF 4A
0E00: BCF 0A.3
0E01: CALL 212
0E02: BSF 0A.3
0E03: MOVLW 20
0E04: MOVWF 4A
0E05: BCF 0A.3
0E06: CALL 212
0E07: BSF 0A.3
0E08: MOVLW 89
0E09: MOVWF 04
0E0A: MOVF 36,W
0E0B: MOVWF 40
0E0C: MOVF 35,W
0E0D: MOVWF 3F
0E0E: MOVF 34,W
0E0F: MOVWF 3E
0E10: MOVF 33,W
0E11: MOVWF 3D
0E12: MOVLW 02
0E13: MOVWF 41
0E14: CALL 2CB
0E15: MOVLW 25
0E16: MOVWF 4A
0E17: BCF 0A.3
0E18: CALL 212
0E19: BSF 0A.3
.................... lcd_gotoxy(1,2);
0BDE: MOVLW 01
0BDF: MOVWF 43
0BE0: MOVLW 02
0BE1: MOVWF 44
0BE2: BCF 0A.3
0BE3: CALL 200
0BE4: BSF 0A.3
.................... printf(lcd_putc," %f C",temp2);
0BE5: MOVLW 20
0BE6: MOVWF 42
0BE7: BCF 0A.3
0BE8: CALL 212
0BE9: BSF 0A.3
0BEA: MOVLW 89
0BEB: MOVWF 04
0BEC: MOVF 2E,W
0BED: MOVWF 38
0BEE: MOVF 2D,W
0BEF: MOVWF 37
0BF0: MOVF 2C,W
0BF1: MOVWF 36
0BF2: MOVF 2B,W
0BF3: MOVWF 35
0BF4: MOVLW 02
0BF5: MOVWF 39
0BF6: CALL 091
0BF7: MOVLW 20
0BF8: MOVWF 42
0BF9: BCF 0A.3
0BFA: CALL 212
0BFB: BSF 0A.3
0BFC: MOVLW 43
0BFD: MOVWF 42
0BFE: BCF 0A.3
0BFF: CALL 212
0C00: BSF 0A.3
.................... printf("%ld %f %f %f ",i, temp1, humidity, temp2);
0C01: MOVLW 10
0C02: MOVWF 04
0C03: MOVF 34,W
0C04: MOVWF 36
0C05: MOVF 33,W
0C06: MOVWF 35
0C07: CALL 16B
0C08: MOVLW 20
0C09: BTFSS 0C.4
0C0A: GOTO 409
0C0B: MOVWF 19
0C0C: MOVLW 89
0C0D: MOVWF 04
0C0E: MOVF 2A,W
0C0F: MOVWF 38
0C10: MOVF 29,W
0C11: MOVWF 37
0C12: MOVF 28,W
0C13: MOVWF 36
0C14: MOVF 27,W
0C15: MOVWF 35
0C16: MOVLW 02
0C17: MOVWF 39
0C18: CALL 1E1
0C19: MOVLW 20
0C1A: BTFSS 0C.4
0C1B: GOTO 41A
0C1C: MOVWF 19
0C1D: MOVLW 89
0C1E: MOVWF 04
0C1F: MOVF 32,W
0C20: MOVWF 38
0C21: MOVF 31,W
0C22: MOVWF 37
0C23: MOVF 30,W
0C24: MOVWF 36
0C25: MOVF 2F,W
0C26: MOVWF 35
0C27: MOVLW 02
0C28: MOVWF 39
0C29: CALL 1E1
0C2A: MOVLW 20
0C2B: BTFSS 0C.4
0C2C: GOTO 42B
0C2D: MOVWF 19
0C2E: MOVLW 89
0C2F: MOVWF 04
0C30: MOVF 2E,W
0C31: MOVWF 38
0C32: MOVF 2D,W
0C33: MOVWF 37
0C34: MOVF 2C,W
0C35: MOVWF 36
0C36: MOVF 2B,W
0C37: MOVWF 35
0C38: MOVLW 02
0C39: MOVWF 39
0C3A: CALL 1E1
0C3B: MOVLW 20
0C3C: BTFSS 0C.4
0C3D: GOTO 43C
0C3E: MOVWF 19
.................... printf("%Ld %Ld %Ld \n\r", compass.x, compass.y, compass.z);
0C3F: MOVLW 10
0C40: MOVWF 04
0C41: MOVF 22,W
0C42: MOVWF 36
0C43: MOVF 21,W
0C44: MOVWF 35
0C45: CALL 16B
0C46: MOVLW 20
0C47: BTFSS 0C.4
0C48: GOTO 447
0C49: MOVWF 19
0C4A: MOVLW 10
0C4B: MOVWF 04
0C4C: MOVF 24,W
0C4D: MOVWF 36
0C4E: MOVF 23,W
0C4F: MOVWF 35
0C50: CALL 16B
0C51: MOVLW 20
0C52: BTFSS 0C.4
0C53: GOTO 452
0C54: MOVWF 19
0C55: MOVLW 10
0C56: MOVWF 04
0C57: MOVF 26,W
0C58: MOVWF 36
0C59: MOVF 25,W
0C5A: MOVWF 35
0C5B: CALL 16B
0C5C: MOVLW 20
0C5D: BTFSS 0C.4
0C5E: GOTO 45D
0C5F: MOVWF 19
0C60: MOVLW 0A
0C61: BTFSS 0C.4
0C62: GOTO 461
0C63: MOVWF 19
0C64: MOVLW 0D
0C65: BTFSS 0C.4
0C66: GOTO 465
0C67: MOVWF 19
0E1A: MOVLW 01
0E1B: MOVWF 4B
0E1C: MOVLW 02
0E1D: MOVWF 4C
0E1E: BCF 0A.3
0E1F: CALL 200
0E20: BSF 0A.3
.................... printf(lcd_putc,"%2.2f%cC %6.0fPa ",temp2, 0xb2, preasure);
0E21: MOVLW 89
0E22: MOVWF 04
0E23: MOVF 2E,W
0E24: MOVWF 40
0E25: MOVF 2D,W
0E26: MOVWF 3F
0E27: MOVF 2C,W
0E28: MOVWF 3E
0E29: MOVF 2B,W
0E2A: MOVWF 3D
0E2B: MOVLW 02
0E2C: MOVWF 41
0E2D: CALL 2CB
0E2E: MOVLW B2
0E2F: MOVWF 4A
0E30: BCF 0A.3
0E31: CALL 212
0E32: BSF 0A.3
0E33: MOVLW 43
0E34: MOVWF 4A
0E35: BCF 0A.3
0E36: CALL 212
0E37: BSF 0A.3
0E38: MOVLW 20
0E39: MOVWF 4A
0E3A: BCF 0A.3
0E3B: CALL 212
0E3C: BSF 0A.3
0E3D: MOVLW 05
0E3E: MOVWF 04
0E3F: MOVF 3A,W
0E40: MOVWF 40
0E41: MOVF 39,W
0E42: MOVWF 3F
0E43: MOVF 38,W
0E44: MOVWF 3E
0E45: MOVF 37,W
0E46: MOVWF 3D
0E47: CLRF 41
0E48: CALL 2CB
0E49: MOVLW 50
0E4A: MOVWF 4A
0E4B: BCF 0A.3
0E4C: CALL 212
0E4D: BSF 0A.3
0E4E: MOVLW 61
0E4F: MOVWF 4A
0E50: BCF 0A.3
0E51: CALL 212
0E52: BSF 0A.3
0E53: MOVLW 20
0E54: MOVWF 4A
0E55: BCF 0A.3
0E56: CALL 212
0E57: BSF 0A.3
....................
.................... printf("%ld %f %f %f %6.2f %3.2f %Ld %Ld %Ld \n\r",i, temp1, humidity, temp2, preasure, temp3, compass.x, compass.y, compass.z);
0E58: MOVLW 10
0E59: MOVWF 04
0E5A: MOVF 3C,W
0E5B: MOVWF 3E
0E5C: MOVF 3B,W
0E5D: MOVWF 3D
0E5E: CALL 39F
0E5F: MOVLW 20
0E60: BTFSS 0C.4
0E61: GOTO 660
0E62: MOVWF 19
0E63: MOVLW 89
0E64: MOVWF 04
0E65: MOVF 2A,W
0E66: MOVWF 40
0E67: MOVF 29,W
0E68: MOVWF 3F
0E69: MOVF 28,W
0E6A: MOVWF 3E
0E6B: MOVF 27,W
0E6C: MOVWF 3D
0E6D: MOVLW 02
0E6E: MOVWF 41
0E6F: CALL 415
0E70: MOVLW 20
0E71: BTFSS 0C.4
0E72: GOTO 671
0E73: MOVWF 19
0E74: MOVLW 89
0E75: MOVWF 04
0E76: MOVF 36,W
0E77: MOVWF 40
0E78: MOVF 35,W
0E79: MOVWF 3F
0E7A: MOVF 34,W
0E7B: MOVWF 3E
0E7C: MOVF 33,W
0E7D: MOVWF 3D
0E7E: MOVLW 02
0E7F: MOVWF 41
0E80: CALL 415
0E81: MOVLW 20
0E82: BTFSS 0C.4
0E83: GOTO 682
0E84: MOVWF 19
0E85: MOVLW 89
0E86: MOVWF 04
0E87: MOVF 2E,W
0E88: MOVWF 40
0E89: MOVF 2D,W
0E8A: MOVWF 3F
0E8B: MOVF 2C,W
0E8C: MOVWF 3E
0E8D: MOVF 2B,W
0E8E: MOVWF 3D
0E8F: MOVLW 02
0E90: MOVWF 41
0E91: CALL 415
0E92: MOVLW 20
0E93: BTFSS 0C.4
0E94: GOTO 693
0E95: MOVWF 19
0E96: MOVLW 05
0E97: MOVWF 04
0E98: MOVF 3A,W
0E99: MOVWF 40
0E9A: MOVF 39,W
0E9B: MOVWF 3F
0E9C: MOVF 38,W
0E9D: MOVWF 3E
0E9E: MOVF 37,W
0E9F: MOVWF 3D
0EA0: MOVLW 02
0EA1: MOVWF 41
0EA2: CALL 415
0EA3: MOVLW 20
0EA4: BTFSS 0C.4
0EA5: GOTO 6A4
0EA6: MOVWF 19
0EA7: MOVLW 02
0EA8: MOVWF 04
0EA9: MOVF 32,W
0EAA: MOVWF 40
0EAB: MOVF 31,W
0EAC: MOVWF 3F
0EAD: MOVF 30,W
0EAE: MOVWF 3E
0EAF: MOVF 2F,W
0EB0: MOVWF 3D
0EB1: MOVLW 02
0EB2: MOVWF 41
0EB3: CALL 415
0EB4: MOVLW 20
0EB5: BTFSS 0C.4
0EB6: GOTO 6B5
0EB7: MOVWF 19
0EB8: MOVLW 10
0EB9: MOVWF 04
0EBA: MOVF 22,W
0EBB: MOVWF 3E
0EBC: MOVF 21,W
0EBD: MOVWF 3D
0EBE: CALL 39F
0EBF: MOVLW 20
0EC0: BTFSS 0C.4
0EC1: GOTO 6C0
0EC2: MOVWF 19
0EC3: MOVLW 10
0EC4: MOVWF 04
0EC5: MOVF 24,W
0EC6: MOVWF 3E
0EC7: MOVF 23,W
0EC8: MOVWF 3D
0EC9: CALL 39F
0ECA: MOVLW 20
0ECB: BTFSS 0C.4
0ECC: GOTO 6CB
0ECD: MOVWF 19
0ECE: MOVLW 10
0ECF: MOVWF 04
0ED0: MOVF 26,W
0ED1: MOVWF 3E
0ED2: MOVF 25,W
0ED3: MOVWF 3D
0ED4: CALL 39F
0ED5: MOVLW 20
0ED6: BTFSS 0C.4
0ED7: GOTO 6D6
0ED8: MOVWF 19
0ED9: MOVLW 0A
0EDA: BTFSS 0C.4
0EDB: GOTO 6DA
0EDC: MOVWF 19
0EDD: MOVLW 0D
0EDE: BTFSS 0C.4
0EDF: GOTO 6DE
0EE0: MOVWF 19
.................... i++;
0C68: INCF 33,F
0C69: BTFSC 03.2
0C6A: INCF 34,F
0EE1: INCF 3B,F
0EE2: BTFSC 03.2
0EE3: INCF 3C,F
....................
.................... Delay_ms(100);
0C6B: MOVLW 64
0C6C: MOVWF 43
0C6D: BCF 0A.3
0C6E: CALL 0FB
0C6F: BSF 0A.3
0EE4: MOVLW 64
0EE5: MOVWF 4B
0EE6: BCF 0A.3
0EE7: CALL 0FB
0EE8: BSF 0A.3
.................... }
0C70: GOTO 383
0EE9: GOTO 5B1
....................
.................... }
0C71: SLEEP
0EEA: SLEEP
 
Configuration Fuses:
Word 1: 2CF5 INTRC NOWDT NOPUT MCLR NOPROTECT NOCPD NOBROWNOUT IESO FCMEN NOLVP NODEBUG
/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.pjt
17,7 → 17,7
0=0000 %S 0 0 796 451 3 0
[Opened Files]
1=main.c
2=main.h
2=
3=C:\Program Files (x86)\PICC\devices\16F887.h
4=C:\Program Files (x86)\PICC\drivers\lcd.c
5=..\SHT25.h
/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.sta
1,30 → 1,32
 
ROM used: 3183 (39%)
3186 (39%) including unused fragments
ROM used: 3809 (46%)
3819 (47%) including unused fragments
 
1 Average locations per line
7 Average locations per statement
 
RAM used: 27 (7%) at main() level
52 (14%) worst case
RAM used: 35 (10%) at main() level
72 (20%) worst case
 
Stack used: 5 worst case (out of 8 total available)
 
Lines Stmts % Files
----- ----- --- -----
69 35 7 main.c
79 37 7 main.c
22 0 0 main.h
423 0 0 C:\Program Files (x86)\PICC\devices\16F887.h
408 88 19 C:\Program Files (x86)\PICC\drivers\lcd.c
423 0 0 C:\Program Files\PICC\devices\16F887.h
408 88 17 C:\Program Files\PICC\drivers\lcd.c
14 0 0 ..\SHT25.h
92 51 11 ..\SHT25.c
92 51 10 ..\SHT25.c
8 0 0 ..\LTS01.h
22 11 2 ..\LTS01.c
25 0 0 ..\.\HMC5883L.h
76 28 6 ..\HMC5883L.c
2172 260 55 C:\Program Files (x86)\PICC\drivers\math.h
76 28 5 ..\HMC5883L.c
2172 260 49 C:\Program Files\PICC\drivers\math.h
12 0 0 ..\MPL3115.h
106 53 10 ..\MPL3115.c
----- -----
3331 473 Total
3459 528 Total
 
Page ROM % RAM Vol Diff Functions:
---- --- --- --- --- ---- ----------
33,44 → 35,49
0 74 2 1 @I2C_WRITE_1
0 8 0 0 @const80
Inline 3 751 4.5 lcd_read_byte
0 49 2 2 254 3.7 lcd_read_nibble
0 49 1 2 254 3.7 lcd_read_nibble
0 44 1 1 391 2.4 lcd_send_nibble
0 92 3 3 402 3.6 lcd_send_byte
0 56 2 2 666 5.0 lcd_init
0 18 1 4 191 5.8 lcd_gotoxy
0 92 2 3 402 3.6 lcd_send_byte
0 56 1 2 666 5.0 lcd_init
0 18 0 4 191 5.8 lcd_gotoxy
0 45 1 1 354 4.7 lcd_putc
0 207 7 9 572 6.0 SHT25_get_temp
0 29 1 2 572 6.0 @ITOF
0 202 6 14 @DIVFF
0 117 4 13 @MULFF
0 321 10 16 @ADDFF
0 182 6 9 554 5.9 SHT25_get_hum
0 176 6 6 382 2.7 LTS01_get_temp
Inline 2 382 2.7 @SITOF
0 57 2 2 102 1.8 hmc5883l_write_reg
1 145 5 6 636 3.3 hmc5883l_read_data
1 443 14 15 1342 4.4 MAIN
0 6 0 0 1381 4.4 @const282
0 207 5 9 572 6.0 SHT25_get_temp
0 29 1 2 @ITOF
0 202 5 14 @DIVFF
0 117 3 13 @MULFF
0 321 8 16 @ADDFF
0 182 5 9 554 5.9 SHT25_get_hum
0 176 5 6 382 2.7 LTS01_get_temp
Inline 2 @SITOF
0 57 1 2 102 1.8 hmc5883l_write_reg
1 145 4 6 636 3.3 hmc5883l_read_data
1 189 5 0 280 1.4 mpl3115_setP
0 90 2 2 167 2.4 mpl3115_read
1 98 3 13 206 4.3 mpl3115_T
1 186 5 22 411 5.7 mpl3115_P
Inline 4 @DTOF
1 518 14 23 1525 4.4 MAIN
0 6 0 0 @const306
0 72 2 3 @PSTRINGC7_9600_62_63
0 9 0 0 @const284
0 7 0 0 @const285
0 8 0 0 @const286
0 9 0 0 @const308
0 7 0 0 @const309
0 8 0 0 @const310
0 70 2 3 @PSTRINGC7_98
0 6 0 0 @const288
0 31 1 5 @FTOSD
0 66 2 13 @DIV3232
1 218 7 13 @PRINTF_L32D_98FPFPF
1 118 4 9 @PRINTF_LD_9600_62_63
1 214 7 13 @PRINTF_L32D_9600_62_63FPFPF
0 6 0 0 @const312
1 31 1 5 @FTOSD
1 66 2 13 @DIV3232
1 212 6 13 @PRINTF_L32D_98FPFPF
1 118 3 9 @PRINTF_LD_9600_62_63
1 208 5 13 @PRINTF_L32D_9600_62_63FPFPF
 
Program metrics:
Functions 16
Statements 473
Comments 472
Volume (V) 14718
Difficilty (D) 64.8
Effort to implement (E) 953628
Time to implement (T) 14 hours, 43 minutes
Functions 17
Statements 528
Comments 500
Volume (V) 13217
Difficilty (D) 64.9
Effort to implement (E) 857938
Time to implement (T) 13 hours, 14 minutes
Est Delivered Bugs (B) 3
Cyclomatic Complexity 8
Maintainability (MI) 123
78,8 → 85,8
Segment Used Free
----------- ---- ----
00000-00003 4 0
00004-007FF 2041 3
00800-00FFF 1138 910
00004-007FF 2034 10
00800-00FFF 1771 277
01000-017FF 0 2048
01800-01FFF 0 2048
 
/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.sym
1,138 → 1,162
004-005 @READ_PROGRAM_MEMORY8.P1
004 @WRITE_PROGRAM_MEMORY8.P2
004 @WRITE_PROGRAM_MEMORY8.P1
004-005 @READ_PROGRAM_MEMORY8.P2
015 CCP_1_LOW
015 CCP_1
016 CCP_1_HIGH
01B CCP_2_LOW
01B CCP_2
01B CCP_2_LOW
01C CCP_2_HIGH
020 @TRIS_C
021-026 compass
027-02A MAIN.temp1
02B-02E MAIN.temp2
02F-032 MAIN.humidity
033-034 MAIN.i
035-036 @PRINTF_LD_9600_62_63.P1
035 hmc5883l_read_data.x_lsb
035-038 @PRINTF_L32D_98FPFPF.P1
035 LTS01_get_temp.MSB
035-038 @PRINTF_L32D_9600_62_63FPFPF.P1
035 lcd_init.i
035 hmc5883l_write_reg.reg
035 SHT25_get_temp.MSB
035 SHT25_get_hum.MSB
035 MAIN.@SCRATCH1
035 @PSTRINGC7_9600_62_63.@SCRATCH1
035 @PSTRINGC7_98.@SCRATCH1
036 hmc5883l_read_data.x_msb
036 SHT25_get_hum.LSB
036 LTS01_get_temp.LSB
036 SHT25_get_temp.LSB
036 hmc5883l_write_reg.data
036 lcd_init.@SCRATCH1
036 @PSTRINGC7_9600_62_63.@SCRATCH2
036 @PSTRINGC7_98.@SCRATCH2
037 hmc5883l_read_data.y_lsb
037 SHT25_get_hum.Check
037-038 LTS01_get_temp.data
037 SHT25_get_temp.Check
037 @PSTRINGC7_9600_62_63.@SCRATCH3
037 @PSTRINGC7_98.@SCRATCH3
037 @PRINTF_LD_9600_62_63.@SCRATCH1
038-039 SHT25_get_temp.data
038 hmc5883l_read_data.y_msb
038-039 SHT25_get_hum.data
038 @PRINTF_LD_9600_62_63.@SCRATCH2
039 hmc5883l_read_data.z_lsb
039 @PRINTF_L32D_9600_62_63FPFPF.P1
039 @PRINTF_L32D_98FPFPF.P2
039 LTS01_get_temp.@SCRATCH1
039 @PRINTF_LD_9600_62_63.@SCRATCH3
03A-03D @ADDFF.P1
03A hmc5883l_read_data.z_msb
03A-03B @ITOF.P1
03A SHT25_get_temp.@SCRATCH1
03A SHT25_get_hum.@SCRATCH1
03A LTS01_get_temp.@SCRATCH2
03A @PRINTF_L32D_98FPFPF.@SCRATCH1
03A @PRINTF_LD_9600_62_63.@SCRATCH4
03A @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH1
03B-03C @SITOF.P1
03B @I2C_WRITE_1.P2
03B @I2C_READ_1.P3
03B SHT25_get_temp.@SCRATCH2
03B SHT25_get_hum.@SCRATCH2
03B @PRINTF_L32D_98FPFPF.@SCRATCH2
03B @PRINTF_LD_9600_62_63.@SCRATCH5
03B @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH2
03C @I2C_READ_1.@SCRATCH1
03C SHT25_get_temp.@SCRATCH3
03C SHT25_get_hum.@SCRATCH3
03C @PRINTF_L32D_98FPFPF.@SCRATCH3
03C @PRINTF_LD_9600_62_63.@SCRATCH6
03C @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH3
03D @I2C_READ_1.@SCRATCH2
03D SHT25_get_temp.@SCRATCH4
03D SHT25_get_hum.@SCRATCH4
03D @PRINTF_L32D_98FPFPF.@SCRATCH4
03D @PRINTF_LD_9600_62_63.@SCRATCH7
03D @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH4
03E-041 @DIVFF.P1
03E-041 @ADDFF.P2
03E @PRINTF_L32D_98FPFPF.@SCRATCH5
03E @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH5
03F @PRINTF_L32D_98FPFPF.@SCRATCH6
03F @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH6
040 @PRINTF_L32D_98FPFPF.@SCRATCH7
040 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH7
041 @PRINTF_L32D_98FPFPF.@SCRATCH8
041 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH8
042-045 @MULFF.P1
042-045 @DIV3232.P2
042-045 @DIVFF.P3
042-045 @FTOSD.P4
042 lcd_putc.c
042 @ADDFF.@SCRATCH1
043 lcd_gotoxy.x
043 @delay_ms1.P1
043 @ADDFF.@SCRATCH2
044 lcd_gotoxy.y
044 @ADDFF.@SCRATCH3
045 lcd_gotoxy.address
045 @ADDFF.@SCRATCH4
046-049 @DIV3232.P1
046-049 @MULFF.P2
046 lcd_gotoxy.@SCRATCH1
046 @DIVFF.@SCRATCH1
046 @ADDFF.@SCRATCH5
046 @FTOSD.@SCRATCH1
047 lcd_send_byte.address
047 @DIVFF.@SCRATCH2
047 @ADDFF.@SCRATCH6
048 lcd_send_byte.n
048 @DIVFF.@SCRATCH3
048 @ADDFF.@SCRATCH7
049 lcd_read_byte.low
049 lcd_send_byte.@SCRATCH1
049 @DIVFF.@SCRATCH4
049 @ADDFF.@SCRATCH8
04A lcd_read_byte.high
04A lcd_send_nibble.n
04A @DIVFF.@SCRATCH5
04A @MULFF.@SCRATCH1
04A @DIV3232.@SCRATCH1
04B lcd_read_nibble.n
04B lcd_read_byte.@SCRATCH1
04B @DIVFF.@SCRATCH6
04B @MULFF.@SCRATCH2
04B @DIV3232.@SCRATCH2
04C lcd_read_nibble.@SCRATCH1
04C @MULFF.@SCRATCH3
04C @DIV3232.@SCRATCH3
04D @MULFF.@SCRATCH4
04D @DIV3232.@SCRATCH4
04E @MULFF.@SCRATCH5
04E @DIV3232.@SCRATCH5
02F-032 MAIN.temp3
033-036 MAIN.humidity
037-03A MAIN.preasure
03B-03C MAIN.i
03D hmc5883l_read_data.x_lsb
03D-040 @PRINTF_L32D_98FPFPF.P1
03D hmc5883l_write_reg.reg
03D SHT25_get_temp.MSB
03D-040 mpl3115_P.m
03D LTS01_get_temp.MSB
03D-03E @PRINTF_LD_9600_62_63.P1
03D lcd_init.i
03D SHT25_get_hum.MSB
03D mpl3115_T.m
03D-040 @PRINTF_L32D_9600_62_63FPFPF.P1
03D MAIN.@SCRATCH1
03D @PSTRINGC7_9600_62_63.@SCRATCH1
03D @PSTRINGC7_98.@SCRATCH1
03E LTS01_get_temp.LSB
03E-041 mpl3115_T.l
03E SHT25_get_temp.LSB
03E hmc5883l_write_reg.data
03E hmc5883l_read_data.x_msb
03E SHT25_get_hum.LSB
03E lcd_init.@SCRATCH1
03E @PSTRINGC7_9600_62_63.@SCRATCH2
03E @PSTRINGC7_98.@SCRATCH2
03F-040 LTS01_get_temp.data
03F SHT25_get_hum.Check
03F SHT25_get_temp.Check
03F hmc5883l_read_data.y_lsb
03F @PSTRINGC7_9600_62_63.@SCRATCH3
03F @PSTRINGC7_98.@SCRATCH3
03F @PRINTF_LD_9600_62_63.@SCRATCH1
040-041 SHT25_get_temp.data
040-041 SHT25_get_hum.data
040 hmc5883l_read_data.y_msb
040 @PRINTF_LD_9600_62_63.@SCRATCH2
041 @PRINTF_L32D_98FPFPF.P1
041-042 mpl3115_P.c
041 @PRINTF_L32D_9600_62_63FPFPF.P1
041 hmc5883l_read_data.z_lsb
041 LTS01_get_temp.@SCRATCH1
041 @PRINTF_LD_9600_62_63.@SCRATCH3
042 hmc5883l_read_data.z_msb
042-045 mpl3115_T.t
042 SHT25_get_temp.@SCRATCH1
042 SHT25_get_hum.@SCRATCH1
042 LTS01_get_temp.@SCRATCH2
042 @PRINTF_L32D_98FPFPF.@SCRATCH1
042 @PRINTF_LD_9600_62_63.@SCRATCH4
042 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH1
043 mpl3115_P.l
043-044 @SITOF.P1
043 SHT25_get_temp.@SCRATCH2
043 SHT25_get_hum.@SCRATCH2
043 @PRINTF_L32D_98FPFPF.@SCRATCH2
043 @PRINTF_LD_9600_62_63.@SCRATCH5
043 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH2
044-047 mpl3115_P.p
044 SHT25_get_temp.@SCRATCH3
044 SHT25_get_hum.@SCRATCH3
044 @PRINTF_L32D_98FPFPF.@SCRATCH3
044 @PRINTF_LD_9600_62_63.@SCRATCH6
044 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH3
045 SHT25_get_temp.@SCRATCH4
045 SHT25_get_hum.@SCRATCH4
045 @PRINTF_L32D_98FPFPF.@SCRATCH4
045 @PRINTF_LD_9600_62_63.@SCRATCH7
045 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH4
046 mpl3115_T.@SCRATCH1
046 @PRINTF_L32D_98FPFPF.@SCRATCH5
046 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH5
047 mpl3115_T.@SCRATCH2
047 @PRINTF_L32D_98FPFPF.@SCRATCH6
047 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH6
048-04B mpl3115_P.l1
048 mpl3115_T.@SCRATCH3
048 @PRINTF_L32D_98FPFPF.@SCRATCH7
048 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH7
049 mpl3115_T.@SCRATCH4
049 @PRINTF_L32D_98FPFPF.@SCRATCH8
049 @PRINTF_L32D_9600_62_63FPFPF.@SCRATCH8
04A-04D @MULFF.P1
04A-04D @FTOSD.P2
04A-04D @DIV3232.P3
04A lcd_putc.c
04B @delay_ms1.P1
04B lcd_gotoxy.x
04C lcd_gotoxy.y
04C mpl3115_read.reg
04C mpl3115_P.@SCRATCH1
04D mpl3115_read.i
04D lcd_gotoxy.address
04D-04E @ITOF.P1
04D mpl3115_P.@SCRATCH2
04E @I2C_READ_1.P1
04E-051 @DIV3232.P2
04E-051 @MULFF.P3
04E @I2C_WRITE_1.P4
04E lcd_gotoxy.@SCRATCH1
04E mpl3115_P.@SCRATCH3
04E @FTOSD.@SCRATCH1
04F lcd_send_byte.address
04F @I2C_READ_1.@SCRATCH1
04F mpl3115_P.@SCRATCH4
050 lcd_send_byte.n
050 @I2C_READ_1.@SCRATCH2
050 mpl3115_P.@SCRATCH5
051-054 @DIVFF.P1
051 lcd_read_byte.low
051 lcd_send_byte.@SCRATCH1
051 mpl3115_P.@SCRATCH6
052 lcd_read_byte.high
052 lcd_send_nibble.n
052 @MULFF.@SCRATCH1
052 mpl3115_P.@SCRATCH7
052 @DIV3232.@SCRATCH1
053-056 @ADDFF.P1
053-056 @DTOF.P2
053 lcd_read_nibble.n
053 lcd_read_byte.@SCRATCH1
053 @MULFF.@SCRATCH2
053 @DIV3232.@SCRATCH2
054 lcd_read_nibble.@SCRATCH1
054 @MULFF.@SCRATCH3
054 @DIV3232.@SCRATCH3
055-058 @DIVFF.P1
055 @MULFF.@SCRATCH4
055 @DIV3232.@SCRATCH4
056 @MULFF.@SCRATCH5
056 @DIV3232.@SCRATCH5
057-05A @ADDFF.P1
059 @DIVFF.@SCRATCH1
05A @DIVFF.@SCRATCH2
05B @DIVFF.@SCRATCH3
05B @ADDFF.@SCRATCH1
05C @DIVFF.@SCRATCH4
05C @ADDFF.@SCRATCH2
05D @DIVFF.@SCRATCH5
05D @ADDFF.@SCRATCH3
05E @DIVFF.@SCRATCH6
05E @ADDFF.@SCRATCH4
05F @ADDFF.@SCRATCH5
060 @ADDFF.@SCRATCH6
061 @ADDFF.@SCRATCH7
062 @ADDFF.@SCRATCH8
077 @SCRATCH
078 @SCRATCH
078 _RETURN_
140,8 → 164,8
07A @SCRATCH
107.6 C1OUT
108.6 C2OUT
10D-10E @WRITE_PROGRAM_MEMORY8.P1
10D-10E @READ_PROGRAM_MEMORY8.P2
10D-10E @READ_PROGRAM_MEMORY8.P1
10D-10E @WRITE_PROGRAM_MEMORY8.P2
 
ROM Allocation:
00FB @delay_ms1
165,20 → 189,25
0767 @SITOF
00C2 hmc5883l_write_reg
0800 hmc5883l_read_data
0AB7 MAIN
000C @const282
09AD mpl3115_setP
079C mpl3115_read
0891 mpl3115_T
08F3 mpl3115_P
0964 @DTOF
0CE5 MAIN
000C @const306
0030 @PSTRINGC7_9600_62_63
0012 @const284
001B @const285
0022 @const286
0012 @const308
001B @const309
0022 @const310
023F @PSTRINGC7_98
002A @const288
079C @FTOSD
07BB @DIV3232
0891 @PRINTF_L32D_98FPFPF
096B @PRINTF_LD_9600_62_63
09E1 @PRINTF_L32D_9600_62_63FPFPF
0AB7 @cinit
002A @const312
0A6A @FTOSD
0A89 @DIV3232
0ACB @PRINTF_L32D_98FPFPF
0B9F @PRINTF_LD_9600_62_63
0C15 @PRINTF_L32D_9600_62_63FPFPF
0CE5 @cinit
 
 
User Memory space:
186,13 → 215,13
User Memory space:
 
Project Directory:
D:\MLAB\Designs\Measuring_instruments\GeoMet01A\SW\PIC16F887\
Z:\home\kaklik\svnMLAB\Designs\Measuring_instruments\GeoMet01A\SW\PIC16F887\
 
Project Files:
main.c
main.h
C:\Program Files (x86)\PICC\devices\16F887.h
C:\Program Files (x86)\PICC\drivers\lcd.c
C:\Program Files\PICC\devices\16F887.h
C:\Program Files\PICC\drivers\lcd.c
..\SHT25.h
..\SHT25.c
..\LTS01.h
199,10 → 228,12
..\LTS01.c
..\.\HMC5883L.h
..\HMC5883L.c
C:\Program Files (x86)\PICC\drivers\math.h
C:\Program Files\PICC\drivers\math.h
..\MPL3115.h
..\MPL3115.c
 
Units:
D:\MLAB\Designs\Measuring_instruments\GeoMet01A\SW\PIC16F887\main (main)
Z:\home\kaklik\svnMLAB\Designs\Measuring_instruments\GeoMet01A\SW\PIC16F887\main (main)
 
Compiler Settings:
Processor: PIC16F887
/Designs/Measuring_instruments/GeoMet01A/SW/PIC16F887/main.tre
1,5 → 1,5
ÀÄmain
ÀÄMAIN 1/443 Ram=15
ÀÄMAIN 1/518 Ram=23
ÃÄ??0??
ÃÄ@PSTRINGC7_9600_62_63 0/72 Ram=3
ÃÄ@PSTRINGC7_9600_62_63 0/72 Ram=3
235,10 → 235,55
³ ÃÄ@I2C_READ_1 0/69 Ram=3
³ ÃÄ@I2C_READ_1 0/69 Ram=3
³ ÀÄ@I2C_READ_1 0/69 Ram=3
ÃÄ@PRINTF_L32D_98FPFPF 1/218 Ram=13
ÃÄmpl3115_T 1/98 Ram=13
³ ÃÄmpl3115_read 0/90 Ram=2
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÀÄ@I2C_READ_1 0/69 Ram=3
³ ÃÄmpl3115_read 0/90 Ram=2
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÀÄ@I2C_READ_1 0/69 Ram=3
³ ÃÄ@ITOF 0/29 Ram=2
³ ÃÄ@DIVFF 0/202 Ram=14
³ ÃÄ@ITOF 0/29 Ram=2
³ ÀÄ@ADDFF 0/321 Ram=16
ÃÄmpl3115_P 1/186 Ram=22
³ ÃÄmpl3115_read 0/90 Ram=2
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÀÄ@I2C_READ_1 0/69 Ram=3
³ ÃÄmpl3115_read 0/90 Ram=2
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÀÄ@I2C_READ_1 0/69 Ram=3
³ ÃÄmpl3115_read 0/90 Ram=2
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ³ ÀÄ@I2C_READ_1 0/69 Ram=3
³ ÃÄ@ITOF 0/29 Ram=2
³ ÃÄ@DIVFF 0/202 Ram=14
³ ÃÄ@DTOF (Inline) Ram=4
³ ÀÄ@ADDFF 0/321 Ram=16
ÃÄmpl3115_setP 1/189 Ram=0
³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ÃÄ@I2C_WRITE_1 0/74 Ram=1
³ ÀÄ@I2C_WRITE_1 0/74 Ram=1
ÃÄ@PRINTF_L32D_98FPFPF 1/212 Ram=13
³ ÃÄ@MULFF 0/117 Ram=13
³ ÃÄ@FTOSD 0/31 Ram=5
³ ÃÄ@DIV3232 0/66 Ram=13
³ ÃÄ@FTOSD 1/31 Ram=5
³ ÃÄ@DIV3232 1/66 Ram=13
³ ÃÄlcd_putc 0/45 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
375,7 → 420,7
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÀÄ@DIV3232 0/66 Ram=13
³ ÀÄ@DIV3232 1/66 Ram=13
ÃÄlcd_putc 0/45 Ram=1
³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
478,10 → 523,10
³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ÀÄlcd_send_nibble 0/44 Ram=1
ÃÄ@PRINTF_L32D_98FPFPF 1/218 Ram=13
ÃÄ@PRINTF_L32D_98FPFPF 1/212 Ram=13
³ ÃÄ@MULFF 0/117 Ram=13
³ ÃÄ@FTOSD 0/31 Ram=5
³ ÃÄ@DIV3232 0/66 Ram=13
³ ÃÄ@FTOSD 1/31 Ram=5
³ ÃÄ@DIV3232 1/66 Ram=13
³ ÃÄlcd_putc 0/45 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
618,7 → 663,7
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÀÄ@DIV3232 0/66 Ram=13
³ ÀÄ@DIV3232 1/66 Ram=13
ÃÄlcd_putc 0/45 Ram=1
³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
653,6 → 698,154
³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ÀÄlcd_send_nibble 0/44 Ram=1
ÃÄlcd_gotoxy 0/18 Ram=4
³ ÀÄlcd_send_byte 0/92 Ram=3
³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ÀÄlcd_send_nibble 0/44 Ram=1
ÃÄ@PRINTF_L32D_98FPFPF 1/212 Ram=13
³ ÃÄ@MULFF 0/117 Ram=13
³ ÃÄ@FTOSD 1/31 Ram=5
³ ÃÄ@DIV3232 1/66 Ram=13
³ ÃÄlcd_putc 0/45 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄ@delay_ms1 0/20 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÃÄlcd_putc 0/45 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄ@delay_ms1 0/20 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÃÄlcd_putc 0/45 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄ@delay_ms1 0/20 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÃÄlcd_putc 0/45 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄ@delay_ms1 0/20 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÀÄ@DIV3232 1/66 Ram=13
ÃÄlcd_putc 0/45 Ram=1
³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
687,7 → 880,34
³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ÀÄlcd_send_nibble 0/44 Ram=1
ÃÄlcd_gotoxy 0/18 Ram=4
ÃÄlcd_putc 0/45 Ram=1
³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÃÄ@delay_ms1 0/20 Ram=1
³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÀÄlcd_send_byte 0/92 Ram=3
³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
728,10 → 948,10
³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ÀÄlcd_send_nibble 0/44 Ram=1
ÃÄ@PRINTF_L32D_98FPFPF 1/218 Ram=13
ÃÄ@PRINTF_L32D_98FPFPF 1/212 Ram=13
³ ÃÄ@MULFF 0/117 Ram=13
³ ÃÄ@FTOSD 0/31 Ram=5
³ ÃÄ@DIV3232 0/66 Ram=13
³ ÃÄ@FTOSD 1/31 Ram=5
³ ÃÄ@DIV3232 1/66 Ram=13
³ ÃÄlcd_putc 0/45 Ram=1
³ ³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ³ ÀÄlcd_send_byte 0/92 Ram=3
868,7 → 1088,7
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÀÄ@DIV3232 0/66 Ram=13
³ ÀÄ@DIV3232 1/66 Ram=13
ÃÄlcd_putc 0/45 Ram=1
³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
937,22 → 1157,66
³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ÀÄlcd_send_nibble 0/44 Ram=1
ÃÄlcd_putc 0/45 Ram=1
³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÃÄ@delay_ms1 0/20 Ram=1
³ ÃÄlcd_gotoxy 0/18 Ram=4
³ ³ ÀÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÃÄlcd_send_byte 0/92 Ram=3
³ ³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ³ ÀÄlcd_send_nibble 0/44 Ram=1
³ ÀÄlcd_send_byte 0/92 Ram=3
³ ÃÄlcd_read_byte (Inline) Ram=3
³ ³ ÃÄlcd_read_nibble 0/49 Ram=2
³ ³ ÀÄlcd_read_nibble 0/49 Ram=2
³ ÃÄlcd_send_nibble 0/44 Ram=1
³ ÀÄlcd_send_nibble 0/44 Ram=1
ÃÄ@PRINTF_LD_9600_62_63 1/118 Ram=9
ÃÄ@PRINTF_L32D_9600_62_63FPFPF 1/214 Ram=13
ÃÄ@PRINTF_L32D_9600_62_63FPFPF 1/208 Ram=13
³ ÃÄ@MULFF 0/117 Ram=13
³ ÃÄ@FTOSD 0/31 Ram=5
³ ÃÄ@DIV3232 0/66 Ram=13
³ ÀÄ@DIV3232 0/66 Ram=13
ÃÄ@PRINTF_L32D_9600_62_63FPFPF 1/214 Ram=13
³ ÃÄ@FTOSD 1/31 Ram=5
³ ÃÄ@DIV3232 1/66 Ram=13
³ ÀÄ@DIV3232 1/66 Ram=13
ÃÄ@PRINTF_L32D_9600_62_63FPFPF 1/208 Ram=13
³ ÃÄ@MULFF 0/117 Ram=13
³ ÃÄ@FTOSD 0/31 Ram=5
³ ÃÄ@DIV3232 0/66 Ram=13
³ ÀÄ@DIV3232 0/66 Ram=13
ÃÄ@PRINTF_L32D_9600_62_63FPFPF 1/214 Ram=13
³ ÃÄ@FTOSD 1/31 Ram=5
³ ÃÄ@DIV3232 1/66 Ram=13
³ ÀÄ@DIV3232 1/66 Ram=13
ÃÄ@PRINTF_L32D_9600_62_63FPFPF 1/208 Ram=13
³ ÃÄ@MULFF 0/117 Ram=13
³ ÃÄ@FTOSD 0/31 Ram=5
³ ÃÄ@DIV3232 0/66 Ram=13
³ ÀÄ@DIV3232 0/66 Ram=13
³ ÃÄ@FTOSD 1/31 Ram=5
³ ÃÄ@DIV3232 1/66 Ram=13
³ ÀÄ@DIV3232 1/66 Ram=13
ÃÄ@PRINTF_L32D_9600_62_63FPFPF 1/208 Ram=13
³ ÃÄ@MULFF 0/117 Ram=13
³ ÃÄ@FTOSD 1/31 Ram=5
³ ÃÄ@DIV3232 1/66 Ram=13
³ ÀÄ@DIV3232 1/66 Ram=13
ÃÄ@PRINTF_L32D_9600_62_63FPFPF 1/208 Ram=13
³ ÃÄ@MULFF 0/117 Ram=13
³ ÃÄ@FTOSD 1/31 Ram=5
³ ÃÄ@DIV3232 1/66 Ram=13
³ ÀÄ@DIV3232 1/66 Ram=13
ÃÄ@PRINTF_LD_9600_62_63 1/118 Ram=9
ÃÄ@PRINTF_LD_9600_62_63 1/118 Ram=9
ÃÄ@PRINTF_LD_9600_62_63 1/118 Ram=9