From 32318c620a77254bf2ec649af0fcf4b53509fd4a Mon Sep 17 00:00:00 2001 From: sergeyyarkov Date: Tue, 11 Jul 2023 20:48:30 +0300 Subject: [PATCH] ds18b20 lib --- .../6842ec3b8e5e6b0b001addd084df5d184933bbe5 | 1 + .../80d105638d61b31dfb20a22d20c8ded4b921bb3f | 1 + build/default/debug/dstemperature.o | Bin 0 -> 8208 bytes build/default/debug/dstemperature.o.d | 60 +++ build/default/debug/main.o | Bin 0 -> 4756 bytes build/default/debug/main.o.d | 60 +++ build/default/debug/onewire.o | Bin 0 -> 13228 bytes build/default/debug/onewire.o.d | 58 +++ build/default/production/dstemperature.o | Bin 0 -> 1880 bytes build/default/production/dstemperature.o.d | 61 +++ build/default/production/main.o | Bin 2256 -> 1108 bytes build/default/production/main.o.d | 5 +- build/default/production/onewire.o | Bin 2452 -> 2420 bytes .../debug/attiny45v_thermometer.X.debug.elf | Bin 0 -> 15916 bytes .../debug/attiny45v_thermometer.X.debug.map | 472 ++++++++++++++++++ .../attiny45v_thermometer.X.production.elf | Bin 6260 -> 6352 bytes .../attiny45v_thermometer.X.production.hex | 75 ++- .../attiny45v_thermometer.X.production.map | 75 +-- dstemperature.c | 32 ++ dstemperature.h | 36 ++ main.c | 63 +-- nbproject/Makefile-default.mk | 22 +- nbproject/Makefile-genesis.properties | 4 +- nbproject/configurations.xml | 4 + onewire.c | 31 +- onewire.h | 6 +- 26 files changed, 911 insertions(+), 155 deletions(-) create mode 100644 .generated_files/flags/default/6842ec3b8e5e6b0b001addd084df5d184933bbe5 create mode 100644 .generated_files/flags/default/80d105638d61b31dfb20a22d20c8ded4b921bb3f create mode 100644 build/default/debug/dstemperature.o create mode 100644 build/default/debug/dstemperature.o.d create mode 100644 build/default/debug/main.o create mode 100644 build/default/debug/main.o.d create mode 100644 build/default/debug/onewire.o create mode 100644 build/default/debug/onewire.o.d create mode 100644 build/default/production/dstemperature.o create mode 100644 build/default/production/dstemperature.o.d create mode 100755 dist/default/debug/attiny45v_thermometer.X.debug.elf create mode 100644 dist/default/debug/attiny45v_thermometer.X.debug.map create mode 100644 dstemperature.c create mode 100644 dstemperature.h diff --git a/.generated_files/flags/default/6842ec3b8e5e6b0b001addd084df5d184933bbe5 b/.generated_files/flags/default/6842ec3b8e5e6b0b001addd084df5d184933bbe5 new file mode 100644 index 0000000..c008929 --- /dev/null +++ b/.generated_files/flags/default/6842ec3b8e5e6b0b001addd084df5d184933bbe5 @@ -0,0 +1 @@ + $(MP_EXTRA_CC_PRE) -mmcu=attiny45 ${PACK_COMPILER_OPTIONS} ${PACK_COMMON_OPTIONS} -x c -c -D__$(MP_PROCESSOR_OPTION)__ -funsigned-char -funsigned-bitfields -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -Wall -DXPRJ_default=$(CND_CONF) $(COMPARISON_BUILD) -DF_CPU=8000000UL/home/sergeyyarkov/Documents/Projects/Firmwares/AVR/attiny45v_thermometer.X/dstemperature.c \ No newline at end of file diff --git a/.generated_files/flags/default/80d105638d61b31dfb20a22d20c8ded4b921bb3f b/.generated_files/flags/default/80d105638d61b31dfb20a22d20c8ded4b921bb3f new file mode 100644 index 0000000..f17c9bd --- /dev/null +++ b/.generated_files/flags/default/80d105638d61b31dfb20a22d20c8ded4b921bb3f @@ -0,0 +1 @@ + $(MP_EXTRA_CC_PRE) -mmcu=attiny45 ${PACK_COMPILER_OPTIONS} ${PACK_COMMON_OPTIONS} -g -DDEBUG -gdwarf-2 -x c -c -D__$(MP_PROCESSOR_OPTION)__ -funsigned-char -funsigned-bitfields -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -Wall -DXPRJ_default=$(CND_CONF) $(COMPARISON_BUILD) -DF_CPU=8000000UL/home/sergeyyarkov/Documents/Projects/Firmwares/AVR/attiny45v_thermometer.X/dstemperature.c \ No newline at end of file diff --git a/build/default/debug/dstemperature.o b/build/default/debug/dstemperature.o new file mode 100644 index 0000000000000000000000000000000000000000..97e38809862f0539645deb453b82f37a0f128e91 GIT binary patch literal 8208 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 literal 0 HcmV?d00001 diff --git a/build/default/debug/main.o.d b/build/default/debug/main.o.d new file mode 100644 index 0000000..17ede39 --- /dev/null +++ b/build/default/debug/main.o.d @@ -0,0 +1,60 @@ +build/default/debug/main.o.d build/default/debug/main.o: main.c \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/io.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/sfr_defs.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/inttypes.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stdint.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/stdint.h \ + /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/include/avr/iotn45.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/portpins.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/common.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/version.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/fuse.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/lock.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/interrupt.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/util/delay.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/util/delay_basic.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/math.h onewire.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/stdio.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stdarg.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stddef.h \ + dstemperature.h + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/io.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/sfr_defs.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/inttypes.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stdint.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/stdint.h: + +/home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/include/avr/iotn45.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/portpins.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/common.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/version.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/fuse.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/lock.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/interrupt.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/util/delay.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/util/delay_basic.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/math.h: + +onewire.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/stdio.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stdarg.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stddef.h: + +dstemperature.h: diff --git a/build/default/debug/onewire.o b/build/default/debug/onewire.o new file mode 100644 index 0000000000000000000000000000000000000000..413f4b28a25b91537370868eaced201164dbf341 GIT binary patch literal 13228 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 PxZckgw2N3ELA`$fpSmfn literal 0 HcmV?d00001 diff --git a/build/default/production/dstemperature.o.d b/build/default/production/dstemperature.o.d new file mode 100644 index 0000000..44f98c8 --- /dev/null +++ b/build/default/production/dstemperature.o.d @@ -0,0 +1,61 @@ +build/default/production/dstemperature.o.d \ + build/default/production/dstemperature.o: dstemperature.c \ + dstemperature.h onewire.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stdint.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/stdint.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/stdio.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/inttypes.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stdarg.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stddef.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/interrupt.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/io.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/sfr_defs.h \ + /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/include/avr/iotn45.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/portpins.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/common.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/version.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/fuse.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/lock.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/util/delay.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/util/delay_basic.h \ + /opt/avr8-gnu-toolchain-linux_x86_64/avr/include/math.h + +dstemperature.h: + +onewire.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stdint.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/stdint.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/stdio.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/inttypes.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stdarg.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/lib/gcc/avr/7.3.0/include/stddef.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/interrupt.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/io.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/sfr_defs.h: + +/home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/include/avr/iotn45.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/portpins.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/common.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/version.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/fuse.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/avr/lock.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/util/delay.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/util/delay_basic.h: + +/opt/avr8-gnu-toolchain-linux_x86_64/avr/include/math.h: diff --git a/build/default/production/main.o b/build/default/production/main.o index 18ed3fda6cd8e7141ce49e44ea7f957acc6f9cb0..7a5c400021e850b0ccf532d90904eed13d41bf4f 100644 GIT binary patch delta 411 zcmXv~O-sW-5PdNpuGV6d9*QCql%h99Z+a+H@gtN%i3naoiYo+~5Yl+|F9_pBQ1BrB z6|WxrA^rqs*3H11d2i=qXZL&UM?LjAuM5BnfFlO5ixw29@03&qir$^ip>Gn6bFqjM zD-_3dcsR4VZ?umqt0jbtTiSD@>1cSJTozf4Jk1J>3w@JSI+^J7ZZaO>G@Z@Td93p? zIoGvBU8VIyrP1LD?y}4RHW==zq38*h@oYN`w?+5 zS{@^dH`df0^MS`0*hH8AX`lHLL%u|ED~yOCJ(3ffG7by_MQY2x;J%o0wcUQ^(~wK$ SEp2*Jo81pq^?$AL&E0>!i!PG@ literal 2256 zcma)7Uu+a*5TET(>oNCpX{BZ)U!k z*>AqxJ9D`Ih+!C_$dDmfM}bJTu(h3qBk5e2?c%dpe(= zm2#_nU_ih&`OoXVc@UOwR7Ix~)!oclX|xUufyJx~xwBXhVxWgGO0h)7|EV z35l4}pu2%hiNNw|-MYHg1pO5aKL!1OhTG~omDRO4*7Y93^&2-to3bf{S$&;Md1M_x zGi6H%ZYZ$-vZ3eo6+xb zfOq8~lt!+pNuP895-^Nz27;1u%#IF!m}Q>9@C z-lUTn8%h^bZhE|s8k2#Xb23wO?4frvh2+5TIzCy?$`6}1fXA$%J(GU Uv1Hbz+zi(9^#J@0n_1F*YbtV*G#!VFa~7O0jXHPz1q+-SiifuDa+#Q80CpA}BiC z8I(YwyL4Ad+_a=H8+ZB-vKUcHtqOud+m)XC3=Z5m=bd}by^ooo`#QayQw#n;X0=h> zI^$UFsB4OdKGu7FRL`oRoGSI>b;B4S!10SLi z;2r!k@ib$|shubX)GlzFEpupf63TF^YXUu#fo=gPyMz~k&rmYqIZ#S?FHkZGEPD*p zlfm!zgLgnrqYUtIV7A4d0P{p#GrJxo!ADUtC&~Nf@{CMMbP^2$9h3ns3E3h#jMUfS zvLS~OkK7tlwI^NotsSK%_*=4@CsU3JcrN8yZ_zGkZ39}9KSBEft*Esov<1F^)`aG0 z&9fb~$1iNxI)^r{wH0V5ya_F<@X@q(U^|v)5xwLidq~Z))#j@AJc9QMziLAof1xJM ETU&CXYXATM delta 706 zcmYL@F=!KE6vy9pmowMc+G}b|kgBPzenqs#Sha*=Gh}d3NWrmCT*RS*1&4x^rXYbj z^>}xrgOeaC2rAiHhjVjr5(KxCQc*h?F+=I1|Mz+7aqs^B`@Q%6-`C9sgKI@~*B{O; z`*CaY`_9k!TuXH+BFb;>-JtQy^bJSf%pp0F-GN#Mx4OGJh#e-SPhEV;|K+e^syJhHlu1`HHHwAE=BPC=*eZQdEb^ zGsTasX;tHG>qV{?|5k%!?>Vn1o7+FF<9-M&u!=Nyg{j`S2e2L6ikAImN^ug^m$1rw005_!3HTTz-|h zHzTQ5KT#E$l@7d2$ce(`#zP60^y7(_Ta2S*<}!3D;fLD`PD`mWuc$#DN_*-lpGj-y zri>Ui57yx&ut#7MhP?*6#qYpAfO&@Xx}JK=M_lcE2K$pY3%1L*!3v6~X6Bx|o>O&* duJaprM9uQHt5v{#JzA~tg&ysYP4q-2e*@Mbs2KnN diff --git a/dist/default/debug/attiny45v_thermometer.X.debug.elf b/dist/default/debug/attiny45v_thermometer.X.debug.elf new file mode 100755 index 0000000000000000000000000000000000000000..bdaec6d26f0e63e24ab83c8544367917394542be GIT binary patch literal 15916 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 z zvupg?6^j2Oie52DPb%JC1W3P#!bP|D3@MuME)m4vLQw%YbeY@HG<@#Yuh6Zg@bIBK zJ|SG^ld!P|MLADmuftd*_B)K9#7zzpAaTH9f+P+(Oa_T39EJ}a>R=O}MbRB5{kY<< z9g~qUNt#M_hqV@;Vg3{a)0LO6DzZ=4J_Pp9?OF{T1$zR8`Nt~_1hHfuFc!^f2-iA= z`Kpgr$Z{XkyN1Ro!$pFHivSB(Oct*EEL@yf*iC(qW|vqv-Ygu&-}A80YaZ8$L+Waw zQ|4h|xXi;s?99Uw0h5KayI(2X5_m{54y*25ue}p15p}ZPYI= zOwr;7SLni29_Y&rz6kV2gD-Pw5*McUJM@&z3sdWj`agvI&3|C~S9$C+wYuG5P4$#w z>>q#n)8p1(m^uiaFK>C2A~Lt(%Jf@-E8YzVZZbMx)1m*DDHhMv7p9(Ky>pQNA!w%U za$KqZ8m{x*dMW+`v~GVo>I0B9+vl%nG|zh8_@v}7O!0?}x}N^72ai8>u>H+o%=UJ9 z9}b#wWt=Sdo`v7WivXw+4m&mxEU-O8&ysYD1p>Z3b_)|54UE)0+M3 z2XDsfM(|wDIL~PRX7F6vmN@(|@TR>};IDJm6WZg?!%Tl31+R}%)bn?drv5V?p1+JV z{d*g{>7Ruq%H(swN1O&}zYu)NAAB%DoypHfz1e;Pc)f&{`lMI}UUz`~sWM^WA9)hg7-R}NBKykv96;o0w3^BA=1*ceM^V!-?rA4y81|CQ~k~@(C=v4)uDxU zv^8&O-VQglE%UJ)&&u#&Xb_)mV#B(5Jaz9iy;uQ@UGNSM&#^>eWQcVspJM}jK6gA` z1G2fHaYb9*Hc+PRG_jSx^~t##eIJh43N1StuGBp-x~l_JgI3~vRdKNgdhJxr%9Mj^ z-7x6489FSfcM$rupyPtwR_aBA`wAlxv7=tUv$>@))dW7ZbdK~H0bGr`_U0|y)jOh# zbcSQCgYUk3;R~9S%~c@Hk#`3burubpvCg41k0Y0+^f`n(+nd^cs~>jUbq?BI*`oj~ zdcBCmIO-{*wIG|CTJcKg!<}NTrzG(M9%Fz!@B7^3si}s>X1Mubb7>jv=7AnM_tlT6 z9NyQT?CiodnXs?Dno>z!sd`Wu9qi|uHBmV*n2c583uYx=VpVp>_Qa#H_(0E~0F76S zk3QzmHG9SEDq3tcjv+lV6JU z^g$BNq3d>m*EFl1hMdn?hso=@Zi6QNclb0vX56-Fxr9gVlk@O2sDotG9WZE+;#?W} zp^bodwqkL+M=rcrh(o&4sJq*sL5kzcuw@v5(x$)Qk$WFOK1v1W&~m(gMkw6l-`5H8 o7cQ5I3+2rry%|3=n84#eE^u^7^@HJLs7!l}YlZlR0qA!B6TuCI$N&HU literal 0 HcmV?d00001 diff --git a/dist/default/debug/attiny45v_thermometer.X.debug.map b/dist/default/debug/attiny45v_thermometer.X.debug.map new file mode 100644 index 0000000..bdcf646 --- /dev/null +++ b/dist/default/debug/attiny45v_thermometer.X.debug.map @@ -0,0 +1,472 @@ +Archive member included to satisfy reference by file (symbol) + +/opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o (exit) + +Discarded input sections + + .data 0x0000000000000000 0x0 /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + .bss 0x0000000000000000 0x0 /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + .text 0x0000000000000000 0x0 build/default/debug/main.o + .data 0x0000000000000000 0x0 build/default/debug/main.o + .bss 0x0000000000000000 0x0 build/default/debug/main.o + .text 0x0000000000000000 0x0 build/default/debug/onewire.o + .data 0x0000000000000000 0x0 build/default/debug/onewire.o + .bss 0x0000000000000000 0x0 build/default/debug/onewire.o + .text 0x0000000000000000 0x0 build/default/debug/dstemperature.o + .data 0x0000000000000000 0x0 build/default/debug/dstemperature.o + .bss 0x0000000000000000 0x0 build/default/debug/dstemperature.o + .text 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .data 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .bss 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .text.libgcc.mul + 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .text.libgcc.div + 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .text.libgcc 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .text.libgcc.prologue + 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .text.libgcc.builtins + 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .text.libgcc.fmul + 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .text.libgcc.fixed + 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + +Memory Configuration + +Name Origin Length Attributes +text 0x0000000000000000 0x0000000000001000 xr +data 0x0000000000800060 0x0000000000000100 rw !x +eeprom 0x0000000000810000 0x0000000000000100 rw !x +fuse 0x0000000000820000 0x0000000000000003 rw !x +lock 0x0000000000830000 0x0000000000000400 rw !x +signature 0x0000000000840000 0x0000000000000400 rw !x +user_signatures 0x0000000000850000 0x0000000000000400 rw !x +*default* 0x0000000000000000 0xffffffffffffffff + +Linker script and memory map + +LOAD /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o +LOAD build/default/debug/main.o +LOAD build/default/debug/onewire.o +LOAD build/default/debug/dstemperature.o + 0x0000000000000001 __MPLAB_BUILD = 0x1 + 0x0000000000000001 __ICD2RAM = 0x1 + 0x0000000000000001 __MPLAB_DEBUG = 0x1 + 0x0000000000000001 __DEBUG = 0x1 +START GROUP +LOAD /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/../../../../avr/lib/avr25/libm.a +END GROUP +START GROUP +LOAD /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a +LOAD /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/../../../../avr/lib/avr25/libm.a +LOAD /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/../../../../avr/lib/avr25/libc.a +LOAD /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/libattiny45.a +END GROUP + 0x0000000000000000 __TEXT_REGION_ORIGIN__ = DEFINED (__TEXT_REGION_ORIGIN__)?__TEXT_REGION_ORIGIN__:0x0 + [0x0000000000800060] __DATA_REGION_ORIGIN__ = DEFINED (__DATA_REGION_ORIGIN__)?__DATA_REGION_ORIGIN__:0x800060 + [0x0000000000001000] __TEXT_REGION_LENGTH__ = DEFINED (__TEXT_REGION_LENGTH__)?__TEXT_REGION_LENGTH__:0x2000 + [0x0000000000000100] __DATA_REGION_LENGTH__ = DEFINED (__DATA_REGION_LENGTH__)?__DATA_REGION_LENGTH__:0xffa0 + [0x0000000000000100] __EEPROM_REGION_LENGTH__ = DEFINED (__EEPROM_REGION_LENGTH__)?__EEPROM_REGION_LENGTH__:0x10000 + [0x0000000000000003] __FUSE_REGION_LENGTH__ = DEFINED (__FUSE_REGION_LENGTH__)?__FUSE_REGION_LENGTH__:0x400 + 0x0000000000000400 __LOCK_REGION_LENGTH__ = DEFINED (__LOCK_REGION_LENGTH__)?__LOCK_REGION_LENGTH__:0x400 + 0x0000000000000400 __SIGNATURE_REGION_LENGTH__ = DEFINED (__SIGNATURE_REGION_LENGTH__)?__SIGNATURE_REGION_LENGTH__:0x400 + 0x0000000000000400 __USER_SIGNATURE_REGION_LENGTH__ = DEFINED (__USER_SIGNATURE_REGION_LENGTH__)?__USER_SIGNATURE_REGION_LENGTH__:0x400 + +.hash + *(.hash) + +.dynsym + *(.dynsym) + +.dynstr + *(.dynstr) + +.gnu.version + *(.gnu.version) + +.gnu.version_d + *(.gnu.version_d) + +.gnu.version_r + *(.gnu.version_r) + +.rel.init + *(.rel.init) + +.rela.init + *(.rela.init) + +.rel.text + *(.rel.text) + *(.rel.text.*) + *(.rel.gnu.linkonce.t*) + +.rela.text + *(.rela.text) + *(.rela.text.*) + *(.rela.gnu.linkonce.t*) + +.rel.fini + *(.rel.fini) + +.rela.fini + *(.rela.fini) + +.rel.rodata + *(.rel.rodata) + *(.rel.rodata.*) + *(.rel.gnu.linkonce.r*) + +.rela.rodata + *(.rela.rodata) + *(.rela.rodata.*) + *(.rela.gnu.linkonce.r*) + +.rel.data + *(.rel.data) + *(.rel.data.*) + *(.rel.gnu.linkonce.d*) + +.rela.data + *(.rela.data) + *(.rela.data.*) + *(.rela.gnu.linkonce.d*) + +.rel.ctors + *(.rel.ctors) + +.rela.ctors + *(.rela.ctors) + +.rel.dtors + *(.rel.dtors) + +.rela.dtors + *(.rela.dtors) + +.rel.got + *(.rel.got) + +.rela.got + *(.rela.got) + +.rel.bss + *(.rel.bss) + +.rela.bss + *(.rela.bss) + +.rel.plt + *(.rel.plt) + +.rela.plt + *(.rela.plt) + +.text 0x0000000000000000 0x266 + *(.vectors) + .vectors 0x0000000000000000 0x1e /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + 0x0000000000000000 __vectors + 0x0000000000000000 __vector_default + *(.vectors) + *(.progmem.gcc*) + 0x000000000000001e . = ALIGN (0x2) + 0x000000000000001e __trampolines_start = . + *(.trampolines) + .trampolines 0x000000000000001e 0x0 linker stubs + *(.trampolines*) + 0x000000000000001e __trampolines_end = . + *libprintf_flt.a:*(.progmem.data) + *libc.a:*(.progmem.data) + *(.progmem*) + 0x000000000000001e . = ALIGN (0x2) + *(.jumptables) + *(.jumptables*) + *(.lowtext) + *(.lowtext*) + 0x000000000000001e __ctors_start = . + *(.ctors) + 0x000000000000001e __ctors_end = . + 0x000000000000001e __dtors_start = . + *(.dtors) + 0x000000000000001e __dtors_end = . + SORT(*)(.ctors) + SORT(*)(.dtors) + *(.init0) + .init0 0x000000000000001e 0x0 /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + 0x000000000000001e __init + *(.init0) + *(.init1) + *(.init1) + *(.init2) + .init2 0x000000000000001e 0xc /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + *(.init2) + *(.init3) + *(.init3) + *(.init4) + *(.init4) + *(.init5) + *(.init5) + *(.init6) + *(.init6) + *(.init7) + *(.init7) + *(.init8) + *(.init8) + *(.init9) + .init9 0x000000000000002a 0x4 /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + *(.init9) + *(.text) + .text 0x000000000000002e 0x2 /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + 0x000000000000002e __vector_1 + 0x000000000000002e __vector_12 + 0x000000000000002e __bad_interrupt + 0x000000000000002e __vector_6 + 0x000000000000002e __vector_3 + 0x000000000000002e __vector_11 + 0x000000000000002e __vector_13 + 0x000000000000002e __vector_7 + 0x000000000000002e __vector_5 + 0x000000000000002e __vector_4 + 0x000000000000002e __vector_9 + 0x000000000000002e __vector_2 + 0x000000000000002e __vector_8 + 0x000000000000002e __vector_14 + 0x000000000000002e __vector_10 + 0x0000000000000030 . = ALIGN (0x2) + *(.text.*) + .text.MCU_Init + 0x0000000000000030 0x8 build/default/debug/main.o + 0x0000000000000030 MCU_Init + .text.main 0x0000000000000038 0x26 build/default/debug/main.o + 0x0000000000000038 main + .text.OneWire_Presence + 0x000000000000005e 0x36 build/default/debug/onewire.o + 0x000000000000005e OneWire_Presence + .text.OneWire_WriteByte + 0x0000000000000094 0x3e build/default/debug/onewire.o + 0x0000000000000094 OneWire_WriteByte + .text.OneWire_ReadByte + 0x00000000000000d2 0x34 build/default/debug/onewire.o + 0x00000000000000d2 OneWire_ReadByte + .text.OneWire_SkipROM + 0x0000000000000106 0x10 build/default/debug/onewire.o + 0x0000000000000106 OneWire_SkipROM + .text.OneWire_ReadROM + 0x0000000000000116 0x32 build/default/debug/onewire.o + 0x0000000000000116 OneWire_ReadROM + .text.OneWire_CRC8_Update + 0x0000000000000148 0x2c build/default/debug/onewire.o + 0x0000000000000148 OneWire_CRC8_Update + .text.DallasTemp_ReadScratchpad + 0x0000000000000174 0x48 build/default/debug/dstemperature.o + 0x0000000000000174 DallasTemp_ReadScratchpad + .text.DallasTemp_Convert + 0x00000000000001bc 0x14 build/default/debug/dstemperature.o + 0x00000000000001bc DallasTemp_Convert + .text.DallasTemp_GetTemperature + 0x00000000000001d0 0x92 build/default/debug/dstemperature.o + 0x00000000000001d0 DallasTemp_GetTemperature + 0x0000000000000262 . = ALIGN (0x2) + *(.fini9) + .fini9 0x0000000000000262 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + 0x0000000000000262 exit + 0x0000000000000262 _exit + *(.fini9) + *(.fini8) + *(.fini8) + *(.fini7) + *(.fini7) + *(.fini6) + *(.fini6) + *(.fini5) + *(.fini5) + *(.fini4) + *(.fini4) + *(.fini3) + *(.fini3) + *(.fini2) + *(.fini2) + *(.fini1) + *(.fini1) + *(.fini0) + .fini0 0x0000000000000262 0x4 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + *(.fini0) + 0x0000000000000266 _etext = . + +.data 0x0000000000800060 0x0 load address 0x0000000000000266 + [!provide] PROVIDE (__data_start, .) + *(.data) + *(.data*) + *(.gnu.linkonce.d*) + *(.rodata) + *(.rodata*) + *(.gnu.linkonce.r*) + 0x0000000000800060 . = ALIGN (0x2) + 0x0000000000800060 _edata = . + [!provide] PROVIDE (__data_end, .) + +.bss 0x0000000000800060 0x0 + [!provide] PROVIDE (__bss_start, .) + *(.bss) + *(.bss*) + *(COMMON) + [!provide] PROVIDE (__bss_end, .) + 0x0000000000000266 __data_load_start = LOADADDR (.data) + 0x0000000000000266 __data_load_end = (__data_load_start + SIZEOF (.data)) + +.noinit 0x0000000000800060 0x0 + [!provide] PROVIDE (__noinit_start, .) + *(.noinit*) + [!provide] PROVIDE (__noinit_end, .) + 0x0000000000800060 _end = . + [!provide] PROVIDE (__heap_start, .) + +.eeprom 0x0000000000810000 0x0 + *(.eeprom*) + 0x0000000000810000 __eeprom_end = . + +.fuse + *(.fuse) + *(.lfuse) + *(.hfuse) + *(.efuse) + +.lock + *(.lock*) + +.signature + *(.signature*) + +.user_signatures + *(.user_signatures*) + +.stab + *(.stab) + +.stabstr + *(.stabstr) + +.stab.excl + *(.stab.excl) + +.stab.exclstr + *(.stab.exclstr) + +.stab.index + *(.stab.index) + +.stab.indexstr + *(.stab.indexstr) + +.comment 0x0000000000000000 0x30 + *(.comment) + .comment 0x0000000000000000 0x30 build/default/debug/main.o + 0x31 (size before relaxing) + .comment 0x0000000000000030 0x31 build/default/debug/onewire.o + .comment 0x0000000000000030 0x31 build/default/debug/dstemperature.o + +.note.gnu.avr.deviceinfo + 0x0000000000000000 0x3c + .note.gnu.avr.deviceinfo + 0x0000000000000000 0x3c /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + +.note.gnu.build-id + *(.note.gnu.build-id) + +.debug + *(.debug) + +.line + *(.line) + +.debug_srcinfo + *(.debug_srcinfo) + +.debug_sfnames + *(.debug_sfnames) + +.debug_aranges 0x0000000000000000 0xa0 + *(.debug_aranges) + .debug_aranges + 0x0000000000000000 0x28 build/default/debug/main.o + .debug_aranges + 0x0000000000000028 0x48 build/default/debug/onewire.o + .debug_aranges + 0x0000000000000070 0x30 build/default/debug/dstemperature.o + +.debug_pubnames + *(.debug_pubnames) + +.debug_info 0x0000000000000000 0x1002 + *(.debug_info .gnu.linkonce.wi.*) + .debug_info 0x0000000000000000 0x420 /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + .debug_info 0x0000000000000420 0x24d build/default/debug/main.o + .debug_info 0x000000000000066d 0x59b build/default/debug/onewire.o + .debug_info 0x0000000000000c08 0x3fa build/default/debug/dstemperature.o + +.debug_abbrev 0x0000000000000000 0x993 + *(.debug_abbrev) + .debug_abbrev 0x0000000000000000 0x3e8 /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + .debug_abbrev 0x00000000000003e8 0x152 build/default/debug/main.o + .debug_abbrev 0x000000000000053a 0x238 build/default/debug/onewire.o + .debug_abbrev 0x0000000000000772 0x221 build/default/debug/dstemperature.o + +.debug_line 0x0000000000000000 0x672 + *(.debug_line .debug_line.* .debug_line_end) + .debug_line 0x0000000000000000 0xf2 /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + .debug_line 0x00000000000000f2 0xe2 build/default/debug/main.o + .debug_line 0x00000000000001d4 0x30a build/default/debug/onewire.o + .debug_line 0x00000000000004de 0x194 build/default/debug/dstemperature.o + +.debug_frame 0x0000000000000000 0x13c + *(.debug_frame) + .debug_frame 0x0000000000000000 0x44 build/default/debug/main.o + .debug_frame 0x0000000000000044 0x88 build/default/debug/onewire.o + .debug_frame 0x00000000000000cc 0x70 build/default/debug/dstemperature.o + +.debug_str 0x0000000000000000 0x480 + *(.debug_str) + .debug_str 0x0000000000000000 0x169 /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o + .debug_str 0x0000000000000169 0x1d7 build/default/debug/main.o + 0x218 (size before relaxing) + .debug_str 0x0000000000000340 0xda build/default/debug/onewire.o + 0x278 (size before relaxing) + .debug_str 0x000000000000041a 0x66 build/default/debug/dstemperature.o + 0x2ef (size before relaxing) + +.debug_loc 0x0000000000000000 0x76d + *(.debug_loc) + .debug_loc 0x0000000000000000 0x47 build/default/debug/main.o + .debug_loc 0x0000000000000047 0x57b build/default/debug/onewire.o + .debug_loc 0x00000000000005c2 0x1ab build/default/debug/dstemperature.o + +.debug_macinfo + *(.debug_macinfo) + +.debug_weaknames + *(.debug_weaknames) + +.debug_funcnames + *(.debug_funcnames) + +.debug_typenames + *(.debug_typenames) + +.debug_varnames + *(.debug_varnames) + +.debug_pubtypes + *(.debug_pubtypes) + +.debug_ranges 0x0000000000000000 0x88 + *(.debug_ranges) + .debug_ranges 0x0000000000000000 0x18 build/default/debug/main.o + .debug_ranges 0x0000000000000018 0x50 build/default/debug/onewire.o + .debug_ranges 0x0000000000000068 0x20 build/default/debug/dstemperature.o + +.debug_macro + *(.debug_macro) +OUTPUT(dist/default/debug/attiny45v_thermometer.X.debug.elf elf32-avr) +LOAD linker stubs diff --git a/dist/default/production/attiny45v_thermometer.X.production.elf b/dist/default/production/attiny45v_thermometer.X.production.elf index 3aaf39a909cfe6377b6f90ade57e7c2e90d8f757..b58df07ec6e6c1a29f821c1d7f9034f9f857577b 100755 GIT binary patch delta 1484 zcmZ9KUuY9a9LIl?8XKv#u@$$R)WindDy3FY(HHSvq{o5g<$Unrw0CVOXra{>6ogGw zqLrfEPS!sWNWo+$U?N>p7dgpe1`%Yfuhpx2$#gcqaN`J9IK4w!an@>1Wd^O^x>z zmeL73Z$RPfI|@fj`bQ(AAUt7J>W%NcAT@ptAt}ut(ByGFGjovZ(p2TEV$#YRUs-p} zxk$oNnrEwY(dV{8!v12UvU> zV zlwVb`W@T~Nysg53cL^YR+sz0{(R@bCny2$@{Mt@I~0ndqq}7Rf0pqh z5#Vd+CD`9ku8i~G4K!7&Gx6Jr_#T9;oz~6DKg6KEwi4hGjS_Ag(P+Vc7 z&mV@r3G9#G4bGy-2*Sh@94_-81LH^3fGHC82@((PEcmFv{}NBt#;ZEc^mq33cAjqU z9~hmgwJTT`pV}A;j*0g8gjC1ZN?|s}8zea}AK-_it*nXnNOG{Pl4zE<*Vpm;5VZ0q klFSUz0)sG2AqB&tH52>-EuQ*gSL=(dRX4k;sF2><{9 delta 1464 zcmZ9KTWkzb7{|Xe)pQf8)sopp(r#V4AyKQTOI#!2!6j708`kooaepgTW|yW?M0R?1 zT;hIt@*qTrATlI^5HsRI`m{$%T9)oELX~9w&umA>p3FJt`+c|bo$ri2<9jF(U`f4x zVrf(%it5W|Zr1F{kNT`kSH7!)*Kv!dc$9V9$I}<=UUr!I!gZ_f+MV1~Uzc_N+$wg9 zrz~whn||GXrY_FLL`t{xI=w>ACo&12K@=B1tX4ZdhM7L&*yjUw`}_Si4=7XF1HMAp zrngVfHrlTkJ8?NhG++%Rb#d~3CjCv!IGOuNCXsq?Fg<8Ux#Lz(&#=BN*%^%Q_8F%{ zy(l+>_d}oN!b`n3_nq9yY)f_+dP{3|AQ{VNE!Z7B?2aFq8B4~-M7<`;%%+cSklwNf zAsxnWz#J#=#+ffxY-<`p*Hi9g9;f2sx8*kJ7`p^Zsp&SrXB_Iend);I_9EprEG{zE z9~K$6r}SO61;>ZPtbkbAH`j60~~)WJivIqwpPzDHEPA^1oKZx4~aA zD~J4_Kt6~$U$TY-Zvpt{Q$4BCR_cw@{dWs9JEV zsd})4Mfo&!BD47#HHdYu8dRu+UsfB~eEuA&^*o1l39s=7*(|;oYYlJp2g@&(6J^oM Xk;q)b&-usu6IDc=ZZXh0_r(4e>l<6! diff --git a/dist/default/production/attiny45v_thermometer.X.production.hex b/dist/default/production/attiny45v_thermometer.X.production.hex index 6c09106..030282a 100644 --- a/dist/default/production/attiny45v_thermometer.X.production.hex +++ b/dist/default/production/attiny45v_thermometer.X.production.hex @@ -1,41 +1,40 @@ :100000000EC015C014C013C012C011C010C00FC064 :100010000EC00DC00CC00BC00AC009C008C011241E -:100020001FBECFE5D1E0DEBFCDBF7FD025C1E8CF79 -:10003000EF92FF920F931F93CF93DF937C01D9D060 -:100040008EEB9FD0E7018701085F1F4FB8D08993DF -:10005000C017D107D9F768E070E0C701EBD0C82F0F -:10006000AED0C81741F080E0DF91CF911F910F9182 -:10007000FF90EF900895000081E0F6CF69D08111E4 -:1000800001C008958CEC7DD084E47BD081E0F9CF71 -:10009000CF93DF93EC01F2DF811103C0DF91CF91A9 -:1000A00008952FE78FE492E1215080409040E1F7DE -:1000B00000C00000CE01BCDF882381F38881498124 -:1000C000542F482F9A0133234CF1359527953595B8 -:1000D00027953595279535952795398B288B8F70E2 -:1000E000282F30E0C901880F991F820F931FAC01A0 -:1000F000440F551F42955295507F5427407F5427F7 -:10010000840F951F820F931F9595879595958795D9 -:1001100095958795959587958A8BC0CF215F3F4FA1 -:10012000D4CF86E087BB18BA0895CF93DF93CDB7BD -:10013000DEB763970FB6F894DEBF0FBECDBFF1DF19 -:10014000CE0109965ED0CE010196A2DF0000F8CF65 -:10015000F89491E097BBEFEBF3E03197F1F700C033 -:10016000000017BAFAEBFA95F1F700C086B3E3E3A3 -:10017000F3E03197F1F700C000007894892781708F -:10018000089598E021E00DC027BB30EA3A95F1F7D9 -:1001900017BA3AE13A95F1F700C0789486959150F4 -:1001A00069F0F89480FFF0CF27BB30E13A95F1F782 -:1001B00017BA3AEA3A95F1F700C0EFCF089598E000 -:1001C00080E021E007C032E93A95F1F700C0789469 -:1001D000915071F0F894869527BB30E13A95F1F78C -:1001E00017BA38E13A95F1F7B09BEDCF8068EBCFC5 -:1001F0000895AEDF811101C008958CECC2DF81E06B -:10020000FBCF0F931F93CF93DF938C01A1DF81115D -:1002100005C0DF91CF911F910F91089583E3B1DF66 -:10022000E801085F1F4FCBDF8993C017D107D9F7CB -:1002300081E0EFCFFC0161157105E1F050E080E055 -:1002400030E020E04CE80EC08695915029F080FF08 -:10025000FBCF86958427F9CF5F5F252F30E02617E7 -:10026000370738F42E0F3F1FD9019C91892798E05A -:0C027000EECF089580E00895F894FFCFD1 +:100020001FBECFE5D1E0DEBFCDBF06D01AC1E8CFFD +:1000300086E087BB18BA0895CF93DF93CDB7DEB7BC +:1000400063970FB6F894DEBF0FBECDBFF1DFCE01D0 +:10005000099661D0CE010196BBD00000F8CFF8948C +:10006000BC9A8FEB93E00197F1F700C0000087B3D3 +:1000700017BA9AEB9A95F1F700C086B3E3E3F3E081 +:100080003197F1F700C0000078948295817091E07B +:100090008927089598E00EC0BC9A20EA2A95F1F7C6 +:1000A00027B317BA2AE12A95F1F700C0789486950C +:1000B000915071F0F89480FFEFCFBC9A20E12A951F +:1000C000F1F727B317BA2AEA2A95F1F700C0EECF65 +:1000D000089598E080E007C022E92A95F1F700C072 +:1000E0007894915079F0F8948695BC9A20E12A95FD +:1000F000F1F727B317BA28E12A95F1F7B49BECCFB3 +:100100008068EACF0895ABDF811101C008958CECBF +:10011000C1DF81E0FBCF0F931F93CF93DF938C015F +:100120009EDF811105C0DF91CF911F910F9108953E +:1001300083E3B0DFE801085F1F4FCBDF8993C0176F +:10014000D107D9F781E0EFCFFC01680F791F80E07C +:100150002CE80BC08695915029F080FFFBCF869547 +:100160008227F9CFE617F70721F09191892798E0C8 +:10017000F4CF0895EF92FF920F931F93CF93DF93E5 +:100180007C01C1DF8EEB86DFE7018701085F1F4F2F +:10019000A0DF8993C017D107D9F768E070E0C701E5 +:1001A000D3DFC82F96DF91E0C81390E0892FDF914D +:1001B000CF911F910F91FF90EF90089550DF811123 +:1001C00001C008958CEC66DF84E464DF81E0F9CF40 +:1001D000CF93DF93EC01F2DF811103C0DF91CF9168 +:1001E00008952FE78FE492E1215080409040E1F79D +:1001F00000C00000CE01BEDF882381F388814981E1 +:10020000542F482F9A0133234CF135952795359576 +:1002100027953595279535952795398B288B8F70A0 +:10022000282F30E0C901880F991F820F931FAC015E +:10023000440F551F42955295507F5427407F5427B5 +:10024000840F951F820F931F959587959595879598 +:1002500095958795959587958A8BC0CF215F3F4F60 +:06026000D4CFF894FFCF9B :00000001FF diff --git a/dist/default/production/attiny45v_thermometer.X.production.map b/dist/default/production/attiny45v_thermometer.X.production.map index bdbbe81..56fbac0 100644 --- a/dist/default/production/attiny45v_thermometer.X.production.map +++ b/dist/default/production/attiny45v_thermometer.X.production.map @@ -13,6 +13,9 @@ Discarded input sections .text 0x0000000000000000 0x0 build/default/production/onewire.o .data 0x0000000000000000 0x0 build/default/production/onewire.o .bss 0x0000000000000000 0x0 build/default/production/onewire.o + .text 0x0000000000000000 0x0 build/default/production/dstemperature.o + .data 0x0000000000000000 0x0 build/default/production/dstemperature.o + .bss 0x0000000000000000 0x0 build/default/production/dstemperature.o .text 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) .data 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) .bss 0x0000000000000000 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) @@ -47,6 +50,7 @@ Linker script and memory map LOAD /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o LOAD build/default/production/main.o LOAD build/default/production/onewire.o +LOAD build/default/production/dstemperature.o 0x0000000000000001 __MPLAB_BUILD = 0x1 START GROUP LOAD /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/../../../../avr/lib/avr25/libm.a @@ -157,7 +161,7 @@ END GROUP .rela.plt *(.rela.plt) -.text 0x0000000000000000 0x27c +.text 0x0000000000000000 0x266 *(.vectors) .vectors 0x0000000000000000 0x1e /home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151/gcc/dev/attiny45/avr25/crtattiny45.o 0x0000000000000000 __vectors @@ -229,43 +233,43 @@ END GROUP 0x000000000000002e __vector_10 0x0000000000000030 . = ALIGN (0x2) *(.text.*) - .text.DallasTemp_ReadScratchpad - 0x0000000000000030 0x4c build/default/production/main.o - 0x0000000000000030 DallasTemp_ReadScratchpad - .text.DallasTemp_Convert - 0x000000000000007c 0x14 build/default/production/main.o - 0x000000000000007c DallasTemp_Convert - .text.DallasTemp_GetTemperature - 0x0000000000000090 0x92 build/default/production/main.o - 0x0000000000000090 DallasTemp_GetTemperature .text.MCU_Init - 0x0000000000000122 0x8 build/default/production/main.o - 0x0000000000000122 MCU_Init - .text.main 0x000000000000012a 0x26 build/default/production/main.o - 0x000000000000012a main + 0x0000000000000030 0x8 build/default/production/main.o + 0x0000000000000030 MCU_Init + .text.main 0x0000000000000038 0x26 build/default/production/main.o + 0x0000000000000038 main .text.OneWire_Presence - 0x0000000000000150 0x32 build/default/production/onewire.o - 0x0000000000000150 OneWire_Presence + 0x000000000000005e 0x36 build/default/production/onewire.o + 0x000000000000005e OneWire_Presence .text.OneWire_WriteByte - 0x0000000000000182 0x3c build/default/production/onewire.o - 0x0000000000000182 OneWire_WriteByte + 0x0000000000000094 0x3e build/default/production/onewire.o + 0x0000000000000094 OneWire_WriteByte .text.OneWire_ReadByte - 0x00000000000001be 0x34 build/default/production/onewire.o - 0x00000000000001be OneWire_ReadByte + 0x00000000000000d2 0x34 build/default/production/onewire.o + 0x00000000000000d2 OneWire_ReadByte .text.OneWire_SkipROM - 0x00000000000001f2 0x10 build/default/production/onewire.o - 0x00000000000001f2 OneWire_SkipROM + 0x0000000000000106 0x10 build/default/production/onewire.o + 0x0000000000000106 OneWire_SkipROM .text.OneWire_ReadROM - 0x0000000000000202 0x32 build/default/production/onewire.o - 0x0000000000000202 OneWire_ReadROM + 0x0000000000000116 0x32 build/default/production/onewire.o + 0x0000000000000116 OneWire_ReadROM .text.OneWire_CRC8_Update - 0x0000000000000234 0x44 build/default/production/onewire.o - 0x0000000000000234 OneWire_CRC8_Update - 0x0000000000000278 . = ALIGN (0x2) + 0x0000000000000148 0x2c build/default/production/onewire.o + 0x0000000000000148 OneWire_CRC8_Update + .text.DallasTemp_ReadScratchpad + 0x0000000000000174 0x48 build/default/production/dstemperature.o + 0x0000000000000174 DallasTemp_ReadScratchpad + .text.DallasTemp_Convert + 0x00000000000001bc 0x14 build/default/production/dstemperature.o + 0x00000000000001bc DallasTemp_Convert + .text.DallasTemp_GetTemperature + 0x00000000000001d0 0x92 build/default/production/dstemperature.o + 0x00000000000001d0 DallasTemp_GetTemperature + 0x0000000000000262 . = ALIGN (0x2) *(.fini9) - .fini9 0x0000000000000278 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) - 0x0000000000000278 exit - 0x0000000000000278 _exit + .fini9 0x0000000000000262 0x0 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + 0x0000000000000262 exit + 0x0000000000000262 _exit *(.fini9) *(.fini8) *(.fini8) @@ -284,11 +288,11 @@ END GROUP *(.fini1) *(.fini1) *(.fini0) - .fini0 0x0000000000000278 0x4 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) + .fini0 0x0000000000000262 0x4 /opt/avr8-gnu-toolchain-linux_x86_64/bin/../lib/gcc/avr/7.3.0/avr25/libgcc.a(_exit.o) *(.fini0) - 0x000000000000027c _etext = . + 0x0000000000000266 _etext = . -.data 0x0000000000800060 0x0 load address 0x000000000000027c +.data 0x0000000000800060 0x0 load address 0x0000000000000266 [!provide] PROVIDE (__data_start, .) *(.data) *(.data*) @@ -306,8 +310,8 @@ END GROUP *(.bss*) *(COMMON) [!provide] PROVIDE (__bss_end, .) - 0x000000000000027c __data_load_start = LOADADDR (.data) - 0x000000000000027c __data_load_end = (__data_load_start + SIZEOF (.data)) + 0x0000000000000266 __data_load_start = LOADADDR (.data) + 0x0000000000000266 __data_load_end = (__data_load_start + SIZEOF (.data)) .noinit 0x0000000000800060 0x0 [!provide] PROVIDE (__noinit_start, .) @@ -358,6 +362,7 @@ END GROUP .comment 0x0000000000000000 0x30 build/default/production/main.o 0x31 (size before relaxing) .comment 0x0000000000000030 0x31 build/default/production/onewire.o + .comment 0x0000000000000030 0x31 build/default/production/dstemperature.o .note.gnu.avr.deviceinfo 0x0000000000000000 0x3c diff --git a/dstemperature.c b/dstemperature.c new file mode 100644 index 0000000..75f865a --- /dev/null +++ b/dstemperature.c @@ -0,0 +1,32 @@ +#include "dstemperature.h" + +uint8_t DallasTemp_ReadScratchpad(uint8_t *scratchpad) { + OneWire_SkipROM(); + OneWire_WriteByte(DS18B20_CMD_RSCRATCHPAD); + + for (uint8_t i = 0; i < 8; i++) { + scratchpad[i] = OneWire_ReadByte(); + } + + uint8_t calculated_crc = OneWire_CRC8_Update(scratchpad, 8); + uint8_t crc = OneWire_ReadByte(); + + if (calculated_crc != crc) return 0; + + return 1; +} + +uint8_t DallasTemp_Convert(void) { + if (!OneWire_Presence()) return 0; + OneWire_WriteByte(ONE_WIRE_SKIPROM); + OneWire_WriteByte(DS18B20_CMD_CONVERTTEMP); + return 1; +} + +void DallasTemp_GetTemperature(DallasSensor *Sensor) { + if (!DallasTemp_Convert()) return; + _delay_ms(750); + if (!DallasTemp_ReadScratchpad(Sensor->SCRATCHPAD)) return; + Sensor->TEMPERATURE = ((Sensor->SCRATCHPAD[1] << 8) | Sensor->SCRATCHPAD[0]) / 16; + Sensor->TEMPERATURE_FRACTION = ((Sensor->SCRATCHPAD[0] & 0x0f) * 100) / 16; +} \ No newline at end of file diff --git a/dstemperature.h b/dstemperature.h new file mode 100644 index 0000000..9ec9ea6 --- /dev/null +++ b/dstemperature.h @@ -0,0 +1,36 @@ +#include "onewire.h" + +#define DS18B20_CMD_CONVERTTEMP 0x44 +#define DS18B20_CMD_RSCRATCHPAD 0xbe + +#ifndef DSTEMPERATURE_H +#define DSTEMPERATURE_H + +typedef struct DallasSensor { + uint8_t SCRATCHPAD[8]; // ОЗУ + uint8_t ROM[8]; // ПЗУ + int16_t TEMPERATURE; // Температура в градусах цельсия (целая часть) + uint8_t TEMPERATURE_FRACTION; // Дробная часть +} DallasSensor; + +/** + * Читает ОЗУ датчика + * @param scratchpad - первые 8 байт. + * @return "1" - если данные успешно прочитались, "0" - если данные искажены + */ +uint8_t DallasTemp_ReadScratchpad(uint8_t *scratchpad); + +/** + * Отправляет команду для оцифровки температуры. + * @return "1" - если команда отправлена, "0" - если не было ответа от датчика + */ +uint8_t DallasTemp_Convert(void); + +/** + * Получает оцифрованное значение датчика и конвертирует занчение в читаемый вид. + * @param Sensor - структура датчика + */ +void DallasTemp_GetTemperature(DallasSensor *Sensor); + +#endif /* DSTEMPERATURE_H */ + diff --git a/main.c b/main.c index d35ee55..0254160 100644 --- a/main.c +++ b/main.c @@ -2,62 +2,15 @@ #include #include #include "onewire.h" +#include "dstemperature.h" -#define DS18B20_CMD_CONVERTTEMP 0x44 -#define DS18B20_CMD_RSCRATCHPAD 0xbe - -typedef struct DallasSensor { - uint8_t SCRATCHPAD[8]; // ОЗУ - uint8_t ROM[8]; // ПЗУ - int16_t TEMPERATURE; // Температура в градусах цельсия (целая часть) - uint8_t TEMPERATURE_FRACTION; // Дробная часть -} DallasSensor; - -/** - * Читает ОЗУ датчика - * @param scratchpad - первые 8 байт. - * @return "1" - если данные успешно прочитались, "0" - если данные искажены - */ -uint8_t DallasTemp_ReadScratchpad(uint8_t *scratchpad) { - OneWire_SkipROM(); - OneWire_WriteByte(DS18B20_CMD_RSCRATCHPAD); - - for (uint8_t i = 0; i < 8; i++) { - scratchpad[i] = OneWire_ReadByte(); - } - - uint8_t calculated_crc = OneWire_CRC8_Update(scratchpad, 8); - uint8_t crc = OneWire_ReadByte(); - - if (calculated_crc != crc) return 0; - - asm("nop"); - - return 1; -} - -/** - * Отправляет команду для оцифровки температуры. - * @return "1" - если команда отправлена, "0" - если не было ответа от датчика - */ -uint8_t DallasTemp_Convert() { - if (!OneWire_Presence()) return 0; - OneWire_WriteByte(ONE_WIRE_SKIPROM); - OneWire_WriteByte(DS18B20_CMD_CONVERTTEMP); - return 1; -} - -/** - * Получает оцифрованное значение датчика и конвертирует занчение в читаемый вид. - * @param Sensor - структура датчика - */ -void DallasTemp_GetTemperature(DallasSensor *Sensor) { - if (!DallasTemp_Convert()) return; - _delay_ms(750); - if (!DallasTemp_ReadScratchpad(Sensor->SCRATCHPAD)) return; - Sensor->TEMPERATURE = ((Sensor->SCRATCHPAD[1] << 8) | Sensor->SCRATCHPAD[0]) / 16; - Sensor->TEMPERATURE_FRACTION = ((Sensor->SCRATCHPAD[0] & 0x0f) * 100) / 16; -} +#define DDR_USI DDRB +#define PORT_USI PORTB +#define PIN_USI PINB +#define PORT_USI_SDA PB0 +#define PORT_USI_SCL PB2 +#define PIN_USI_SDA PINB0 +#define PIN_USI_SCL PINB2 void MCU_Init(void) { DDRB = _BV(PB1) | _BV(PB2); diff --git a/nbproject/Makefile-default.mk b/nbproject/Makefile-default.mk index d3f9320..7074e8c 100644 --- a/nbproject/Makefile-default.mk +++ b/nbproject/Makefile-default.mk @@ -57,17 +57,17 @@ OBJECTDIR=build/${CND_CONF}/${IMAGE_TYPE} DISTDIR=dist/${CND_CONF}/${IMAGE_TYPE} # Source Files Quoted if spaced -SOURCEFILES_QUOTED_IF_SPACED=main.c onewire.c +SOURCEFILES_QUOTED_IF_SPACED=main.c onewire.c dstemperature.c # Object Files Quoted if spaced -OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.o ${OBJECTDIR}/onewire.o -POSSIBLE_DEPFILES=${OBJECTDIR}/main.o.d ${OBJECTDIR}/onewire.o.d +OBJECTFILES_QUOTED_IF_SPACED=${OBJECTDIR}/main.o ${OBJECTDIR}/onewire.o ${OBJECTDIR}/dstemperature.o +POSSIBLE_DEPFILES=${OBJECTDIR}/main.o.d ${OBJECTDIR}/onewire.o.d ${OBJECTDIR}/dstemperature.o.d # Object Files -OBJECTFILES=${OBJECTDIR}/main.o ${OBJECTDIR}/onewire.o +OBJECTFILES=${OBJECTDIR}/main.o ${OBJECTDIR}/onewire.o ${OBJECTDIR}/dstemperature.o # Source Files -SOURCEFILES=main.c onewire.c +SOURCEFILES=main.c onewire.c dstemperature.c # Pack Options PACK_COMPILER_OPTIONS=-I "${DFP_DIR}/include" @@ -122,6 +122,12 @@ ${OBJECTDIR}/onewire.o: onewire.c .generated_files/flags/default/f032a224192bd1 @${RM} ${OBJECTDIR}/onewire.o ${MP_CC} $(MP_EXTRA_CC_PRE) -mmcu=attiny45 ${PACK_COMPILER_OPTIONS} ${PACK_COMMON_OPTIONS} -g -DDEBUG -gdwarf-2 -x c -c -D__$(MP_PROCESSOR_OPTION)__ -funsigned-char -funsigned-bitfields -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -Wall -MD -MP -MF "${OBJECTDIR}/onewire.o.d" -MT "${OBJECTDIR}/onewire.o.d" -MT ${OBJECTDIR}/onewire.o -o ${OBJECTDIR}/onewire.o onewire.c -DXPRJ_default=$(CND_CONF) $(COMPARISON_BUILD) -DF_CPU=8000000UL +${OBJECTDIR}/dstemperature.o: dstemperature.c .generated_files/flags/default/80d105638d61b31dfb20a22d20c8ded4b921bb3f .generated_files/flags/default/12c67fe6cdcd6963bda122da91f9033805394b5f + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/dstemperature.o.d + @${RM} ${OBJECTDIR}/dstemperature.o + ${MP_CC} $(MP_EXTRA_CC_PRE) -mmcu=attiny45 ${PACK_COMPILER_OPTIONS} ${PACK_COMMON_OPTIONS} -g -DDEBUG -gdwarf-2 -x c -c -D__$(MP_PROCESSOR_OPTION)__ -funsigned-char -funsigned-bitfields -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -Wall -MD -MP -MF "${OBJECTDIR}/dstemperature.o.d" -MT "${OBJECTDIR}/dstemperature.o.d" -MT ${OBJECTDIR}/dstemperature.o -o ${OBJECTDIR}/dstemperature.o dstemperature.c -DXPRJ_default=$(CND_CONF) $(COMPARISON_BUILD) -DF_CPU=8000000UL + else ${OBJECTDIR}/main.o: main.c .generated_files/flags/default/852a931b512b8c8a6143655dd7f5022a6cb025f5 .generated_files/flags/default/12c67fe6cdcd6963bda122da91f9033805394b5f @${MKDIR} "${OBJECTDIR}" @@ -135,6 +141,12 @@ ${OBJECTDIR}/onewire.o: onewire.c .generated_files/flags/default/5312daf68dcab5 @${RM} ${OBJECTDIR}/onewire.o ${MP_CC} $(MP_EXTRA_CC_PRE) -mmcu=attiny45 ${PACK_COMPILER_OPTIONS} ${PACK_COMMON_OPTIONS} -x c -c -D__$(MP_PROCESSOR_OPTION)__ -funsigned-char -funsigned-bitfields -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -Wall -MD -MP -MF "${OBJECTDIR}/onewire.o.d" -MT "${OBJECTDIR}/onewire.o.d" -MT ${OBJECTDIR}/onewire.o -o ${OBJECTDIR}/onewire.o onewire.c -DXPRJ_default=$(CND_CONF) $(COMPARISON_BUILD) -DF_CPU=8000000UL +${OBJECTDIR}/dstemperature.o: dstemperature.c .generated_files/flags/default/6842ec3b8e5e6b0b001addd084df5d184933bbe5 .generated_files/flags/default/12c67fe6cdcd6963bda122da91f9033805394b5f + @${MKDIR} "${OBJECTDIR}" + @${RM} ${OBJECTDIR}/dstemperature.o.d + @${RM} ${OBJECTDIR}/dstemperature.o + ${MP_CC} $(MP_EXTRA_CC_PRE) -mmcu=attiny45 ${PACK_COMPILER_OPTIONS} ${PACK_COMMON_OPTIONS} -x c -c -D__$(MP_PROCESSOR_OPTION)__ -funsigned-char -funsigned-bitfields -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -Wall -MD -MP -MF "${OBJECTDIR}/dstemperature.o.d" -MT "${OBJECTDIR}/dstemperature.o.d" -MT ${OBJECTDIR}/dstemperature.o -o ${OBJECTDIR}/dstemperature.o dstemperature.c -DXPRJ_default=$(CND_CONF) $(COMPARISON_BUILD) -DF_CPU=8000000UL + endif # ------------------------------------------------------------------------------------ diff --git a/nbproject/Makefile-genesis.properties b/nbproject/Makefile-genesis.properties index f4280b4..767bbd8 100644 --- a/nbproject/Makefile-genesis.properties +++ b/nbproject/Makefile-genesis.properties @@ -1,12 +1,12 @@ # -#Tue Jul 11 13:27:22 MSK 2023 +#Tue Jul 11 20:36:00 MSK 2023 default.languagetoolchain.version=7.3.0 default.Pack.dfplocation=/home/sergeyyarkov/.mchp_packs/Microchip/ATtiny_DFP/3.0.151 default.com-microchip-mplab-nbide-toolchain-avr-AVRLanguageToolchain.md5=f7c8f2a9c7d7748a6cb97af5c32efadd conf.ids=default default.languagetoolchain.dir=/opt/avr8-gnu-toolchain-linux_x86_64/bin host.id=15hy-mk8g-4c -configurations-xml=737ac09162ca74e2d83ec8c785f6d965 +configurations-xml=2b0c7179faec1e60ead4f769c1eac108 default.com-microchip-mplab-mdbcore-snap-SnapToolImpl.md5=eaa336cefb7fc46db8b50b7b2b6e54ca com-microchip-mplab-nbide-embedded-makeproject-MakeProject.md5=6e02ca5e9f5042ffd365b42ab82d3a9b user-defined-mime-resolver-xml=none diff --git a/nbproject/configurations.xml b/nbproject/configurations.xml index c50f96f..f62afcd 100644 --- a/nbproject/configurations.xml +++ b/nbproject/configurations.xml @@ -5,6 +5,7 @@ displayName="Header Files" projectFiles="true"> onewire.h + dstemperature.h main.c onewire.c + dstemperature.c + diff --git a/onewire.c b/onewire.c index 16684d6..a354a00 100644 --- a/onewire.c +++ b/onewire.c @@ -17,7 +17,7 @@ uint8_t OneWire_Presence(void) { void OneWire_WriteByte(uint8_t byte) { uint8_t i = 8; - while (i--) { + do { cli(); if (byte & 0x01) { ow_pull(); @@ -32,14 +32,14 @@ void OneWire_WriteByte(uint8_t byte) { } sei(); byte >>= 1; - } + } while (--i); } uint8_t OneWire_ReadByte() { uint8_t byte = 0; uint8_t i = 8; - - while (i--) { + + do { cli(); byte >>= 1; ow_pull(); @@ -49,7 +49,7 @@ uint8_t OneWire_ReadByte() { if (bit_is_set(OW_PIN, OW_LINE)) byte |= (1<<7); _delay_us(55); sei(); - } + } while (--i); return byte; } @@ -63,30 +63,29 @@ uint8_t OneWire_SkipROM() { uint8_t OneWire_ReadROM(uint8_t *buffer) { if (!OneWire_Presence()) return 0; - uint8_t p = 0; + uint8_t i = 8; OneWire_WriteByte(ONE_WIRE_READROM); - while (p < 8) { + do { *(buffer++) = OneWire_ReadByte(); - p++; - } + } while (--i); return 1; } uint8_t OneWire_CRC8_Update(uint8_t *buffer, size_t len) { - uint8_t crc = 0, i = 0, j = 0; + uint8_t crc = 0; - for (i = 0; i < len; i++) { - crc ^= buffer[i]; - for (j = 0; j < 8; j++) { + do { + uint8_t i = 8; + crc ^= *(buffer++); + do { if (crc & 0x01) { crc = (crc >> 1) ^ 0x8c; } else { crc >>= 1; } - } - } - + } while (--i); + } while (--len); return crc; } \ No newline at end of file diff --git a/onewire.h b/onewire.h index cbbb176..9d88737 100644 --- a/onewire.h +++ b/onewire.h @@ -3,13 +3,13 @@ #include #include -#define OW_LINE PB0 +#define OW_LINE PB4 #define OW_PIN PINB #define OW_PORT PORTB #define OW_DDR DDRB -#define ow_pull() (OW_DDR = _BV(OW_LINE)) -#define ow_release() (OW_DDR = !_BV(OW_LINE)) +#define ow_pull() (OW_DDR |= _BV(OW_LINE)) +#define ow_release() (OW_DDR &= !_BV(OW_LINE)) #define ONE_WIRE_READROM 0x33 #define ONE_WIRE_SKIPROM 0xcc