This commit is contained in:
Lucas Pleß 2013-06-12 00:31:41 +02:00
parent b8402e32fc
commit 6cd0a6371a
16 changed files with 9 additions and 2116 deletions

View File

@ -1,24 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="9fad4545-a424-4a82-86dc-76602cf3eef3" name="Default" comment="- added 3rd party uart lib&#10;- added measurements for voltage and current">
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/../.gitignore" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/powerboard/src/uart.c" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/powerboard/src/uart.h" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/powerboard/main.elf" afterPath="$PROJECT_DIR$/powerboard/main.elf" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/powerboard/.dep/main.o.d" afterPath="$PROJECT_DIR$/powerboard/.dep/main.o.d" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/powerboard/Makefile" afterPath="$PROJECT_DIR$/powerboard/Makefile" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/powerboard/src/main.c" afterPath="$PROJECT_DIR$/powerboard/src/main.c" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/powerboard/main.hex" afterPath="$PROJECT_DIR$/powerboard/main.hex" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/powerboard/src/main.lst" afterPath="$PROJECT_DIR$/powerboard/src/main.lst" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/powerboard/main.map" afterPath="$PROJECT_DIR$/powerboard/main.map" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/vcs.xml" afterPath="$PROJECT_DIR$/.idea/vcs.xml" />
<list default="true" id="9fad4545-a424-4a82-86dc-76602cf3eef3" name="Default" comment="">
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
</list>
<ignored path="bikegenerator.iws" />
<ignored path=".idea/workspace.xml" />
<file path="/Makefile" changelist="9fad4545-a424-4a82-86dc-76602cf3eef3" time="1370979337668" ignored="false" />
<file path="/Dummy.txt" changelist="9fad4545-a424-4a82-86dc-76602cf3eef3" time="1370989786703" ignored="false" />
<file path="/Dummy.txt" changelist="9fad4545-a424-4a82-86dc-76602cf3eef3" time="1370989840314" ignored="false" />
<option name="TRACKING_ENABLED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -348,6 +337,11 @@
<created>1370952913198</created>
<updated>1370952913198</updated>
</task>
<task id="LOCAL-00001" summary="- added 3rd party uart lib&#10;- added measurements for voltage and current">
<created>1370989849092</created>
<updated>1370989849092</updated>
</task>
<option name="localTasksCounter" value="2" />
<servers />
</component>
<component name="ToolWindowManager">
@ -420,7 +414,7 @@
<option name="WRAP_WHEN_TYPING_REACHES_RIGHT_MARGIN" value="false" />
<option name="FORCE_NON_EMPTY_COMMENT" value="false" />
<option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="false" />
<option name="LAST_COMMIT_MESSAGE" />
<option name="LAST_COMMIT_MESSAGE" value="- added 3rd party uart lib&#10;- added measurements for voltage and current" />
<option name="MAKE_NEW_CHANGELIST_ACTIVE" value="false" />
<option name="OPTIMIZE_IMPORTS_BEFORE_PROJECT_COMMIT" value="false" />
<option name="CHECK_FILES_UP_TO_DATE_BEFORE_COMMIT" value="false" />
@ -434,6 +428,7 @@
<option name="UPDATE_FILTER_BY_SCOPE" value="false" />
<option name="SHOW_FILE_HISTORY_AS_TREE" value="false" />
<option name="FILE_HISTORY_SPLITTER_PROPORTION" value="0.6" />
<MESSAGE value="- added 3rd party uart lib&#10;- added measurements for voltage and current" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager />

View File

@ -1,33 +0,0 @@
src/adc.o: src/adc.c /usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/io.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/sfr_defs.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/inttypes.h \
/usr/lib/gcc/avr/4.5.3/include/stdint.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/stdint.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/iom8.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/portpins.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/common.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/version.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/fuse.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/lock.h
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/io.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/sfr_defs.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/inttypes.h:
/usr/lib/gcc/avr/4.5.3/include/stdint.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/stdint.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/iom8.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/portpins.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/common.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/version.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/fuse.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/lock.h:

View File

@ -1,49 +0,0 @@
src/main.o: src/main.c \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/io.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/sfr_defs.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/inttypes.h \
/usr/lib/gcc/avr/4.5.3/include/stdint.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/stdint.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/iom8.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/portpins.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/common.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/version.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/fuse.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/lock.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/interrupt.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/pgmspace.h \
/usr/lib/gcc/avr/4.5.3/include/stddef.h src/utils.h src/adc.h src/uart.h
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/io.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/sfr_defs.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/inttypes.h:
/usr/lib/gcc/avr/4.5.3/include/stdint.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/stdint.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/iom8.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/portpins.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/common.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/version.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/fuse.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/lock.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/interrupt.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/pgmspace.h:
/usr/lib/gcc/avr/4.5.3/include/stddef.h:
src/utils.h:
src/adc.h:
src/uart.h:

View File

@ -1,43 +0,0 @@
src/utils.o: src/utils.c \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/io.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/sfr_defs.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/inttypes.h \
/usr/lib/gcc/avr/4.5.3/include/stdint.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/stdint.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/iom8.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/portpins.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/common.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/version.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/fuse.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/lock.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/util/delay.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/util/delay_basic.h \
/usr/lib/gcc/avr/4.5.3/../../../avr/include/math.h
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/io.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/sfr_defs.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/inttypes.h:
/usr/lib/gcc/avr/4.5.3/include/stdint.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/stdint.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/iom8.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/portpins.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/common.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/version.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/fuse.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/avr/lock.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/util/delay.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/util/delay_basic.h:
/usr/lib/gcc/avr/4.5.3/../../../avr/include/math.h:

View File

@ -1 +0,0 @@
:00000001FF

Binary file not shown.

View File

@ -1,126 +0,0 @@
:1000000030C03FC03EC03DC03CC03BC02AC139C02B
:1000100038C037C036C08CC1B7C133C032C031C060
:1000200030C02FC02EC0570D0A006D412020004760
:10003000656E657261746F723A2000570D0A006D2B
:10004000412020004C6F61643A20202020202000B5
:1000500064560D0A00566F6C746167653A20202063
:10006000000011241FBECFE5D4E0DEBFCDBF10E0FD
:10007000A0E6B0E001C01D92AD3AB107E1F75FD054
:10008000A1C3BECF8EB58B608EBD82EE94E09BBDCA
:100090008ABD80E189BF7894089587B3876087BB64
:1000A00088B3887F88BB0895CF93DF9382E064E0B4
:1000B00006D1BC0180E090E07FD223E333E343ED3F
:1000C00050E4E6D14DD2709363006093620081E00A
:1000D00064E0F5D09C012E5F3140C8E4D0E02C9F55
:1000E000C0012D9F900D3C9F900D112490936500B1
:1000F0008093640080E064E0E2D09C012F5F314097
:100100002C9FC0012D9F900D3C9F900D112490932A
:10011000670080936600DF91CF910895FC01CB01C9
:1001200024E630E0B901EAD26E9FC0016F9F900DC6
:100130007E9F900D1124B901CDD2862F0895EF92A4
:10014000FF920F931F93DF93CF93CDB7DEB72A971C
:100150000FB6F894DEBF0FBECDBF9FDF99D092DF00
:1001600083E390E036D1C09AC19AC2988E010F5FA6
:100170001F4F84E6E82EF12C97DF85E590E07BD1D8
:100180008091620090916300B8014AE050E0EBD2A8
:100190005FD180E590E06FD184E490E06CD18091F4
:1001A000660090916700B8014AE050E0DCD250D17F
:1001B0008FE390E060D18091660090916700B70175
:1001C0009DD22091620030916300629FC001639FC5
:1001D000900D729F900D1124B7017CD2862F90E074
:1001E000B8014AE050E0BFD233D18BE390E043D175
:1001F0008FE290E040D18091640090916500B80159
:100200004AE050E0B0D224D18AE290E034D180912B
:10021000640090916500B70171D220916200309125
:100220006300629FC001639F900D729F900D112427
:10023000B70150D2862F90E0B8014AE050E093D247
:1002400007D186E290E017D184E663D084E661D0DE
:1002500084E65FD084E65DD084E65BD084E659D046
:100260008BCF1F920F920FB60F9211248F939F93F3
:10027000809160009091610001969093610080935D
:1002800060009F918F910F900FBE0F901F90189557
:1002900080E487B983E086B9379A369A3699FECFDB
:1002A00084B195B1089597B18F71907E892B87B9EC
:1002B000369A3699FECF24B135B1C9010895BF925F
:1002C000CF92DF92EF92FF920F931F93D82EB62E0C
:1002D000CC24EE24FF2487010AC08D2DE4DFAC017D
:1002E00060E070E0E40EF51E061F171FC394CB14E8
:1002F000A0F32B2D30E040E050E0C801B70111D24F
:10030000C9011F910F91FF90EF90DF90CF90BF90A8
:100310000895882309F484E690E007C0E3ECF9E04F
:100320003197F1F700C000009F5F9817B8F3089568
:100330001F920F920FB60F9211242F938F939F93BA
:10034000EF93FF939BB18CB1E0918A00EF5FEF7167
:1003500020918B00E21741F09871E0938A00F0E061
:10036000E457FF4F808301C092E08091AC00892B5D
:100370008093AC00FF91EF919F918F912F910F90FF
:100380000FBE0F901F9018951F920F920FB60F92ED
:1003900011248F939F93EF93FF9390916800809126
:1003A0006900981761F0E0916900EF5FEF71E093E9
:1003B0006900F0E0E659FF4F80818CB901C0559883
:1003C000FF91EF919F918F910F900FBE0F901F9013
:1003D0001895109268001092690010928A0010928D
:1003E0008B0097FF03C022E02BB99F7790BD89B99E
:1003F00088E98AB986E880BD089590918A00809145
:100400008B00981781F0E0918B00EF5FEF71E09324
:100410008B00F0E0E457FF4F20818091AC001092F8
:10042000AC0030E002C020E031E0C90108959091B5
:1004300068009F5F9F71209169009217E1F3E92F97
:10044000F0E0E659FF4F808390936800559A089535
:10045000EF92FF92CF93DF93E82EE7017E01F92E12
:10046000E70101C0E4DF89918823E1F7DF91CF91B3
:10047000FF90EF900895CF93DF93EC0101C0D7DF99
:10048000FE01219684918823D1F7DF91CF910895C1
:100490000CD0E6C0DED040F0D5D030F021F45F3F84
:1004A00019F0C7C0511110C1CAC0EBD098F39923FD
:1004B000C9F35523B1F3951B550BBB27AA27621728
:1004C0007307840738F09F5F5F4F220F331F441F6D
:1004D000AA1FA9F333D00E2E3AF0E0E830D09150A5
:1004E0005040E695001CCAF729D0FE2F27D0660F92
:1004F000771F881FBB1F261737074807AB07B0E8D1
:1005000009F0BB0B802DBF01FF2793585F4F2AF0E6
:100510009E3F510568F08DC0D7C05F3FECF3983E19
:10052000DCF3869577956795B795F7959F5FC9F743
:10053000880F911D9695879597F90895E1E0660FCC
:10054000771F881FBB1F621773078407BA0720F045
:10055000621B730B840BBA0BEE1F88F7E0950895AE
:1005600098D088F09F5790F0B92F9927B751A0F0F5
:10057000D1F0660F771F881F991F1AF0BA95C9F737
:1005800012C0B13081F09FD0B1E008959CC0672FB8
:10059000782F8827B85F39F0B93FCCF386957795E7
:1005A0006795B395D9F73EF49095809570956195D0
:1005B0007F4F8F4F9F4F0895E89409C097FB3EF4FB
:1005C00090958095709561957F4F8F4F9F4F9923A0
:1005D000A9F0F92F96E9BB279395F695879577951E
:1005E0006795B795F111F8CFFAF4BB0F11F460FFDE
:1005F0001BC06F5F7F4F8F4F9F4F16C0882311F036
:1006000096E911C0772321F09EE8872F762F05C049
:10061000662371F096E8862F70E060E02AF09A95E4
:10062000660F771F881FDAF7880F9695879597F9D9
:10063000089597F99F6780E870E060E008959FEF64
:1006400080EC089500240A94161617061806090669
:10065000089500240A941216130614060506089538
:10066000092E0394000C11F4882352F0BB0F40F4C0
:10067000BF2B11F460FF04C06F5F7F4F8F4F9F4F00
:10068000089557FD9058440F551F59F05F3F71F082
:100690004795880F97FB991F61F09F3F79F08795E9
:1006A0000895121613061406551FF2CF4695F1DF72
:1006B00008C0161617061806991FF1CF8695710502
:1006C000610508940895E894BB2766277727CB0136
:1006D00097F90895AA1BBB1B51E107C0AA1FBB1FB6
:1006E000A617B70710F0A61BB70B881F991F5A95BE
:1006F000A9F780959095BC01CD01089597FB092E2F
:1007000007260AD077FD04D0E5DF06D000201AF4D2
:10071000709561957F4F0895F6F7909581959F4F5D
:100720000895A1E21A2EAA1BBB1BFD010DC0AA1F32
:10073000BB1FEE1FFF1FA217B307E407F50720F04A
:10074000A21BB30BE40BF50B661F771F881F991FC5
:100750001A9469F760957095809590959B01AC010E
:10076000BD01CF010895FB019F01E8944230BCF028
:100770004532ACF44A3029F497FB1EF490958195EC
:100780009F4F642F7727A6DF805D8A330CF0895D49
:100790008193CB010097A9F716F45DE25193108283
:1007A000C90100C0DC01FC01672F71917723E1F7DB
:1007B000329704C07C916D9370836291AE17BF072E
:0807C000C8F30895F894FFCF7F
:00000001FF

View File

@ -1,399 +0,0 @@
main.elf: file format elf32-avr
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 000001a0 00000000 00000000 00000074 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .bss 00000002 00800060 00800060 00000214 2**0
ALLOC
2 .stab 000006cc 00000000 00000000 00000214 2**2
CONTENTS, READONLY, DEBUGGING
3 .stabstr 00000054 00000000 00000000 000008e0 2**0
CONTENTS, READONLY, DEBUGGING
4 .debug_aranges 00000060 00000000 00000000 00000934 2**0
CONTENTS, READONLY, DEBUGGING
5 .debug_pubnames 000000d4 00000000 00000000 00000994 2**0
CONTENTS, READONLY, DEBUGGING
6 .debug_info 0000040e 00000000 00000000 00000a68 2**0
CONTENTS, READONLY, DEBUGGING
7 .debug_abbrev 000002a5 00000000 00000000 00000e76 2**0
CONTENTS, READONLY, DEBUGGING
8 .debug_line 00000384 00000000 00000000 0000111b 2**0
CONTENTS, READONLY, DEBUGGING
9 .debug_frame 000000d0 00000000 00000000 000014a0 2**2
CONTENTS, READONLY, DEBUGGING
10 .debug_str 000001cd 00000000 00000000 00001570 2**0
CONTENTS, READONLY, DEBUGGING
11 .debug_loc 0000017b 00000000 00000000 0000173d 2**0
CONTENTS, READONLY, DEBUGGING
12 .debug_pubtypes 000000ac 00000000 00000000 000018b8 2**0
CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:
00000000 <__vectors>:
0: 12 c0 rjmp .+36 ; 0x26 <__ctors_end>
2: 21 c0 rjmp .+66 ; 0x46 <__bad_interrupt>
4: 20 c0 rjmp .+64 ; 0x46 <__bad_interrupt>
6: 1f c0 rjmp .+62 ; 0x46 <__bad_interrupt>
8: 1e c0 rjmp .+60 ; 0x46 <__bad_interrupt>
a: 1d c0 rjmp .+58 ; 0x46 <__bad_interrupt>
c: 3e c0 rjmp .+124 ; 0x8a <__vector_6>
e: 1b c0 rjmp .+54 ; 0x46 <__bad_interrupt>
10: 1a c0 rjmp .+52 ; 0x46 <__bad_interrupt>
12: 19 c0 rjmp .+50 ; 0x46 <__bad_interrupt>
14: 18 c0 rjmp .+48 ; 0x46 <__bad_interrupt>
16: 17 c0 rjmp .+46 ; 0x46 <__bad_interrupt>
18: 16 c0 rjmp .+44 ; 0x46 <__bad_interrupt>
1a: 15 c0 rjmp .+42 ; 0x46 <__bad_interrupt>
1c: 14 c0 rjmp .+40 ; 0x46 <__bad_interrupt>
1e: 13 c0 rjmp .+38 ; 0x46 <__bad_interrupt>
20: 12 c0 rjmp .+36 ; 0x46 <__bad_interrupt>
22: 11 c0 rjmp .+34 ; 0x46 <__bad_interrupt>
24: 10 c0 rjmp .+32 ; 0x46 <__bad_interrupt>
00000026 <__ctors_end>:
26: 11 24 eor r1, r1
28: 1f be out 0x3f, r1 ; 63
2a: cf e5 ldi r28, 0x5F ; 95
2c: d4 e0 ldi r29, 0x04 ; 4
2e: de bf out 0x3e, r29 ; 62
30: cd bf out 0x3d, r28 ; 61
00000032 <__do_clear_bss>:
32: 10 e0 ldi r17, 0x00 ; 0
34: a0 e6 ldi r26, 0x60 ; 96
36: b0 e0 ldi r27, 0x00 ; 0
38: 01 c0 rjmp .+2 ; 0x3c <.do_clear_bss_start>
0000003a <.do_clear_bss_loop>:
3a: 1d 92 st X+, r1
0000003c <.do_clear_bss_start>:
3c: a2 36 cpi r26, 0x62 ; 98
3e: b1 07 cpc r27, r17
40: e1 f7 brne .-8 ; 0x3a <.do_clear_bss_loop>
42: 1f d0 rcall .+62 ; 0x82 <main>
44: ab c0 rjmp .+342 ; 0x19c <_exit>
00000046 <__bad_interrupt>:
46: dc cf rjmp .-72 ; 0x0 <__vectors>
00000048 <timer_init>:
volatile uint16_t syscounter = 0;
void timer_init(void) {
// clock is 8MHz
TCCR1B |= _BV(WGM12) | _BV(CS11) | _BV(CS10) ; // CTC Mode for Timer 1 (16Bit) with prescale of 64
48: 8e b5 in r24, 0x2e ; 46
4a: 8b 60 ori r24, 0x0B ; 11
4c: 8e bd out 0x2e, r24 ; 46
OCR1A = 1250; // 100Hz
4e: 82 ee ldi r24, 0xE2 ; 226
50: 94 e0 ldi r25, 0x04 ; 4
52: 9b bd out 0x2b, r25 ; 43
54: 8a bd out 0x2a, r24 ; 42
TIMSK = _BV(OCIE1A);
56: 80 e1 ldi r24, 0x10 ; 16
58: 89 bf out 0x39, r24 ; 57
sei(); // enable interrupts
5a: 78 94 sei
}
5c: 08 95 ret
0000005e <ports_init>:
void ports_init(void) {
DDR_SW |= _BV(LOADSW) | _BV(GENSW) | _BV(DUMPSW);
5e: 87 b3 in r24, 0x17 ; 23
60: 87 60 ori r24, 0x07 ; 7
62: 87 bb out 0x17, r24 ; 23
PORT_SW &= ~(_BV(LOADSW) | _BV(GENSW) | _BV(DUMPSW));
64: 88 b3 in r24, 0x18 ; 24
66: 88 7f andi r24, 0xF8 ; 248
68: 88 bb out 0x18, r24 ; 24
}
6a: 08 95 ret
0000006c <get_voltage>:
// voltage has a divider (12V - 56k - ADC - 27k - GND)
// so
uint8_t voltage = 0;
return voltage;
}
6c: 80 e0 ldi r24, 0x00 ; 0
6e: 08 95 ret
00000070 <get_power>:
uint8_t get_power(power_source source) {
uint16_t voltage = get_voltage();
uint16_t amperes;
if(source == generated) {
70: 88 23 and r24, r24
72: 11 f4 brne .+4 ; 0x78 <get_power+0x8>
amperes = adc_read_avg(AD_I_GEN, 4);
74: 81 e0 ldi r24, 0x01 ; 1
76: 01 c0 rjmp .+2 ; 0x7a <get_power+0xa>
} else {
amperes = adc_read_avg(AD_I_LOAD, 4);
78: 80 e0 ldi r24, 0x00 ; 0
7a: 64 e0 ldi r22, 0x04 ; 4
7c: 34 d0 rcall .+104 ; 0xe6 <adc_read_avg>
}
return 0;
}
7e: 80 e0 ldi r24, 0x00 ; 0
80: 08 95 ret
00000082 <main>:
int main(void) {
ports_init();
82: ed df rcall .-38 ; 0x5e <ports_init>
adc_init();
84: 19 d0 rcall .+50 ; 0xb8 <adc_init>
timer_init();
86: e0 df rcall .-64 ; 0x48 <timer_init>
88: ff cf rjmp .-2 ; 0x88 <main+0x6>
0000008a <__vector_6>:
return(0);
}
// system timer
SIGNAL(TIMER1_COMPA_vect) {
8a: 1f 92 push r1
8c: 0f 92 push r0
8e: 0f b6 in r0, 0x3f ; 63
90: 0f 92 push r0
92: 11 24 eor r1, r1
94: 8f 93 push r24
96: 9f 93 push r25
syscounter++;
98: 80 91 60 00 lds r24, 0x0060
9c: 90 91 61 00 lds r25, 0x0061
a0: 01 96 adiw r24, 0x01 ; 1
a2: 90 93 61 00 sts 0x0061, r25
a6: 80 93 60 00 sts 0x0060, r24
}
aa: 9f 91 pop r25
ac: 8f 91 pop r24
ae: 0f 90 pop r0
b0: 0f be out 0x3f, r0 ; 63
b2: 0f 90 pop r0
b4: 1f 90 pop r1
b6: 18 95 reti
000000b8 <adc_init>:
void adc_init(void) {
uint16_t dummyResult;
// AVCC with external capacitor at AREF pin
ADMUX = _BV(REFS0);
b8: 80 e4 ldi r24, 0x40 ; 64
ba: 87 b9 out 0x07, r24 ; 7
// set frequency prescaler to 8
ADCSRA = _BV(ADPS1) | _BV(ADPS0);
bc: 83 e0 ldi r24, 0x03 ; 3
be: 86 b9 out 0x06, r24 ; 6
// enable ADC
ADCSRA |= _BV(ADEN);
c0: 37 9a sbi 0x06, 7 ; 6
// make a dummy read out
ADCSRA |= _BV(ADSC);
c2: 36 9a sbi 0x06, 6 ; 6
while (ADCSRA & _BV(ADSC) ) {
c4: 36 99 sbic 0x06, 6 ; 6
c6: fe cf rjmp .-4 ; 0xc4 <adc_init+0xc>
}
// we have to read, otherwise the next result is not available
dummyResult = ADCW;
c8: 84 b1 in r24, 0x04 ; 4
ca: 95 b1 in r25, 0x05 ; 5
}
cc: 08 95 ret
000000ce <adc_read_single>:
uint16_t adc_read_single(uint8_t channel) {
ADMUX = (ADMUX & ~(0x1F)) | (channel & 0x1F);
ce: 97 b1 in r25, 0x07 ; 7
d0: 8f 71 andi r24, 0x1F ; 31
d2: 90 7e andi r25, 0xE0 ; 224
d4: 89 2b or r24, r25
d6: 87 b9 out 0x07, r24 ; 7
ADCSRA |= _BV(ADSC);
d8: 36 9a sbi 0x06, 6 ; 6
while (ADCSRA & (1<<ADSC) ) {
da: 36 99 sbic 0x06, 6 ; 6
dc: fe cf rjmp .-4 ; 0xda <adc_read_single+0xc>
}
return ADCW;
de: 24 b1 in r18, 0x04 ; 4
e0: 35 b1 in r19, 0x05 ; 5
}
e2: c9 01 movw r24, r18
e4: 08 95 ret
000000e6 <adc_read_avg>:
uint16_t adc_read_avg(uint8_t channel, uint8_t nsamples) {
e6: bf 92 push r11
e8: cf 92 push r12
ea: df 92 push r13
ec: ef 92 push r14
ee: ff 92 push r15
f0: 0f 93 push r16
f2: 1f 93 push r17
f4: d8 2e mov r13, r24
f6: b6 2e mov r11, r22
uint32_t sum = 0;
for (uint8_t i=0; i<nsamples;++i ) {
f8: cc 24 eor r12, r12
}
return ADCW;
}
uint16_t adc_read_avg(uint8_t channel, uint8_t nsamples) {
uint32_t sum = 0;
fa: ee 24 eor r14, r14
fc: ff 24 eor r15, r15
fe: 87 01 movw r16, r14
for (uint8_t i=0; i<nsamples;++i ) {
100: 0a c0 rjmp .+20 ; 0x116 <adc_read_avg+0x30>
sum += adc_read_single(channel);
102: 8d 2d mov r24, r13
104: e4 df rcall .-56 ; 0xce <adc_read_single>
106: ac 01 movw r20, r24
108: 60 e0 ldi r22, 0x00 ; 0
10a: 70 e0 ldi r23, 0x00 ; 0
10c: e4 0e add r14, r20
10e: f5 1e adc r15, r21
110: 06 1f adc r16, r22
112: 17 1f adc r17, r23
}
uint16_t adc_read_avg(uint8_t channel, uint8_t nsamples) {
uint32_t sum = 0;
for (uint8_t i=0; i<nsamples;++i ) {
114: c3 94 inc r12
116: cb 14 cp r12, r11
118: a0 f3 brcs .-24 ; 0x102 <adc_read_avg+0x1c>
sum += adc_read_single(channel);
}
return (uint16_t)(sum / nsamples);
11a: 2b 2d mov r18, r11
11c: 30 e0 ldi r19, 0x00 ; 0
11e: 40 e0 ldi r20, 0x00 ; 0
120: 50 e0 ldi r21, 0x00 ; 0
122: c8 01 movw r24, r16
124: b7 01 movw r22, r14
126: 18 d0 rcall .+48 ; 0x158 <__udivmodsi4>
}
128: c9 01 movw r24, r18
12a: 1f 91 pop r17
12c: 0f 91 pop r16
12e: ff 90 pop r15
130: ef 90 pop r14
132: df 90 pop r13
134: cf 90 pop r12
136: bf 90 pop r11
138: 08 95 ret
0000013a <wait>:
#include <util/delay.h>
void wait(uint8_t count) {
uint8_t i;
if(count == 0) count = 100;
13a: 88 23 and r24, r24
13c: 09 f4 brne .+2 ; 0x140 <wait+0x6>
13e: 84 e6 ldi r24, 0x64 ; 100
for(i=0;i<count;i++) {
140: 90 e0 ldi r25, 0x00 ; 0
142: 07 c0 rjmp .+14 ; 0x152 <wait+0x18>
#else
//round up by default
__ticks_dc = (uint32_t)(ceil(fabs(__tmp)));
#endif
__builtin_avr_delay_cycles(__ticks_dc);
144: e3 ec ldi r30, 0xC3 ; 195
146: f9 e0 ldi r31, 0x09 ; 9
148: 31 97 sbiw r30, 0x01 ; 1
14a: f1 f7 brne .-4 ; 0x148 <wait+0xe>
14c: 00 c0 rjmp .+0 ; 0x14e <wait+0x14>
14e: 00 00 nop
150: 9f 5f subi r25, 0xFF ; 255
152: 98 17 cp r25, r24
154: b8 f3 brcs .-18 ; 0x144 <wait+0xa>
_delay_ms(10);
}
}
156: 08 95 ret
00000158 <__udivmodsi4>:
158: a1 e2 ldi r26, 0x21 ; 33
15a: 1a 2e mov r1, r26
15c: aa 1b sub r26, r26
15e: bb 1b sub r27, r27
160: fd 01 movw r30, r26
162: 0d c0 rjmp .+26 ; 0x17e <__udivmodsi4_ep>
00000164 <__udivmodsi4_loop>:
164: aa 1f adc r26, r26
166: bb 1f adc r27, r27
168: ee 1f adc r30, r30
16a: ff 1f adc r31, r31
16c: a2 17 cp r26, r18
16e: b3 07 cpc r27, r19
170: e4 07 cpc r30, r20
172: f5 07 cpc r31, r21
174: 20 f0 brcs .+8 ; 0x17e <__udivmodsi4_ep>
176: a2 1b sub r26, r18
178: b3 0b sbc r27, r19
17a: e4 0b sbc r30, r20
17c: f5 0b sbc r31, r21
0000017e <__udivmodsi4_ep>:
17e: 66 1f adc r22, r22
180: 77 1f adc r23, r23
182: 88 1f adc r24, r24
184: 99 1f adc r25, r25
186: 1a 94 dec r1
188: 69 f7 brne .-38 ; 0x164 <__udivmodsi4_loop>
18a: 60 95 com r22
18c: 70 95 com r23
18e: 80 95 com r24
190: 90 95 com r25
192: 9b 01 movw r18, r22
194: ac 01 movw r20, r24
196: bd 01 movw r22, r26
198: cf 01 movw r24, r30
19a: 08 95 ret
0000019c <_exit>:
19c: f8 94 cli
0000019e <__stop_program>:
19e: ff cf rjmp .-2 ; 0x19e <__stop_program>

View File

@ -1,691 +0,0 @@
Archive member included because of file (symbol)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o)
src/main.o (__divsf3)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o) (__divsf3x)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o)
src/main.o (__fixunssfsi)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(floatsisf.o)
src/main.o (__floatunsisf)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_inf.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o) (__fp_inf)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_nan.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o) (__fp_nan)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscA.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o) (__fp_pscA)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscB.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o) (__fp_pscB)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_round.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o) (__fp_round)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_split3.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o) (__fp_split3)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_zero.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o) (__fp_zero)
/usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodhi4.o)
src/main.o (__udivmodhi4)
/usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_divmodhi4.o)
src/main.o (__divmodhi4)
/usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodsi4.o)
src/adc.o (__udivmodsi4)
/usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_exit.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o (exit)
/usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_clear_bss.o)
src/main.o (__do_clear_bss)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o)
src/main.o (itoa)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(strrev.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o) (strrev)
Memory Configuration
Name Origin Length Attributes
text 0x0000000000000000 0x0000000000002000 xr
data 0x0000000000800060 0x000000000000ffa0 rw !x
eeprom 0x0000000000810000 0x0000000000010000 rw !x
fuse 0x0000000000820000 0x0000000000000400 rw !x
lock 0x0000000000830000 0x0000000000000400 rw !x
signature 0x0000000000840000 0x0000000000000400 rw !x
*default* 0x0000000000000000 0xffffffffffffffff
Linker script and memory map
LOAD /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
LOAD src/main.o
LOAD src/adc.o
LOAD src/utils.o
LOAD src/uart.o
LOAD /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a
LOAD /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a
LOAD /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a
LOAD /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a
.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 0x7c8
*(.vectors)
.vectors 0x0000000000000000 0x26 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
0x0000000000000000 __vectors
0x0000000000000000 __vector_default
*(.vectors)
*(.progmem.gcc*)
*(.progmem*)
.progmem.data 0x0000000000000026 0x3b src/main.o
0x0000000000000062 . = ALIGN (0x2)
*fill* 0x0000000000000061 0x1 00
0x0000000000000062 __trampolines_start = .
*(.trampolines)
.trampolines 0x0000000000000062 0x0 linker stubs
*(.trampolines*)
0x0000000000000062 __trampolines_end = .
*(.jumptables)
*(.jumptables*)
*(.lowtext)
*(.lowtext*)
0x0000000000000062 __ctors_start = .
*(.ctors)
0x0000000000000062 __ctors_end = .
0x0000000000000062 __dtors_start = .
*(.dtors)
0x0000000000000062 __dtors_end = .
SORT(*)(.ctors)
SORT(*)(.dtors)
*(.init0)
.init0 0x0000000000000062 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
0x0000000000000062 __init
*(.init0)
*(.init1)
*(.init1)
*(.init2)
.init2 0x0000000000000062 0xc /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
*(.init2)
*(.init3)
*(.init3)
*(.init4)
.init4 0x000000000000006e 0x10 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_clear_bss.o)
0x000000000000006e __do_clear_bss
*(.init4)
*(.init5)
*(.init5)
*(.init6)
*(.init6)
*(.init7)
*(.init7)
*(.init8)
*(.init8)
*(.init9)
.init9 0x000000000000007e 0x4 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
*(.init9)
*(.text)
.text 0x0000000000000082 0x2 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
0x0000000000000082 __vector_1
0x0000000000000082 __bad_interrupt
0x0000000000000082 __vector_3
0x0000000000000082 __vector_13
0x0000000000000082 __vector_17
0x0000000000000082 __vector_7
0x0000000000000082 __vector_5
0x0000000000000082 __vector_4
0x0000000000000082 __vector_9
0x0000000000000082 __vector_2
0x0000000000000082 __vector_15
0x0000000000000082 __vector_8
0x0000000000000082 __vector_14
0x0000000000000082 __vector_10
0x0000000000000082 __vector_16
0x0000000000000082 __vector_18
.text 0x0000000000000084 0x20c src/main.o
0x0000000000000084 timer_init
0x000000000000009a ports_init
0x00000000000000a8 measure
0x000000000000011c get_power
0x000000000000013e main
0x0000000000000262 __vector_6
.text 0x0000000000000290 0x82 src/adc.o
0x0000000000000290 adc_init
0x00000000000002a6 adc_read_single
0x00000000000002be adc_read_avg
.text 0x0000000000000312 0x1e src/utils.o
0x0000000000000312 wait
.text 0x0000000000000330 0x160 src/uart.o
0x0000000000000330 __vector_11
0x0000000000000388 __vector_12
0x00000000000003d2 uart_init
0x00000000000003fa uart_getc
0x000000000000042e uart_putc
0x0000000000000450 uart_puts
0x0000000000000476 uart_puts_p
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(floatsisf.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_inf.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_nan.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscA.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscB.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_round.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_split3.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_zero.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodhi4.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_divmodhi4.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodsi4.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_exit.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_clear_bss.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o)
.text 0x0000000000000490 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(strrev.o)
0x0000000000000490 . = ALIGN (0x2)
*(.text.*)
.text.avr-libc.fplib
0x0000000000000490 0x4 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o)
0x0000000000000490 __divsf3
.text.avr-libc.fplib
0x0000000000000494 0xcc /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
0x00000000000004aa __divsf3x
0x00000000000004ae __divsf3_pse
.text.avr-libc.fplib
0x0000000000000560 0x58 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o)
0x0000000000000560 __fixunssfsi
.text.avr-libc.fplib
0x00000000000005b8 0x7a /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(floatsisf.o)
0x00000000000005b8 __floatunsisf
0x00000000000005bc __floatsisf
.text.avr-libc.fplib
0x0000000000000632 0xc /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_inf.o)
0x0000000000000632 __fp_inf
.text.avr-libc.fplib
0x000000000000063e 0x6 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_nan.o)
0x000000000000063e __fp_nan
.text.avr-libc.fplib
0x0000000000000644 0xe /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscA.o)
0x0000000000000644 __fp_pscA
.text.avr-libc.fplib
0x0000000000000652 0xe /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscB.o)
0x0000000000000652 __fp_pscB
.text.avr-libc.fplib
0x0000000000000660 0x22 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_round.o)
0x0000000000000660 __fp_round
.text.avr-libc.fplib
0x0000000000000682 0x44 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_split3.o)
0x0000000000000682 __fp_split3
0x0000000000000692 __fp_splitA
.text.avr-libc.fplib
0x00000000000006c6 0xe /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_zero.o)
0x00000000000006c6 __fp_zero
0x00000000000006c8 __fp_szero
.text.libgcc 0x00000000000006d4 0x28 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodhi4.o)
0x00000000000006d4 __udivmodhi4
.text.libgcc 0x00000000000006fc 0x26 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_divmodhi4.o)
0x00000000000006fc __divmodhi4
0x00000000000006fc _div
.text.libgcc 0x0000000000000722 0x44 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodsi4.o)
0x0000000000000722 __udivmodsi4
.text.libgcc 0x0000000000000766 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_exit.o)
.text.libgcc 0x0000000000000766 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_clear_bss.o)
.text.avr-libc
0x0000000000000766 0x3e /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o)
0x0000000000000766 itoa
.text.avr-libc
0x00000000000007a4 0x20 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(strrev.o)
0x00000000000007a4 strrev
0x00000000000007c4 . = ALIGN (0x2)
*(.fini9)
.fini9 0x00000000000007c4 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_exit.o)
0x00000000000007c4 exit
0x00000000000007c4 _exit
*(.fini9)
*(.fini8)
*(.fini8)
*(.fini7)
*(.fini7)
*(.fini6)
*(.fini6)
*(.fini5)
*(.fini5)
*(.fini4)
*(.fini4)
*(.fini3)
*(.fini3)
*(.fini2)
*(.fini2)
*(.fini1)
*(.fini1)
*(.fini0)
.fini0 0x00000000000007c4 0x4 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_exit.o)
*(.fini0)
0x00000000000007c8 _etext = .
.data 0x0000000000800060 0x0 load address 0x00000000000007c8
0x0000000000800060 PROVIDE (__data_start, .)
*(.data)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
.data 0x0000000000800060 0x0 src/main.o
.data 0x0000000000800060 0x0 src/adc.o
.data 0x0000000000800060 0x0 src/utils.o
.data 0x0000000000800060 0x0 src/uart.o
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(floatsisf.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_inf.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_nan.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscA.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscB.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_round.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_split3.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_zero.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodhi4.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_divmodhi4.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodsi4.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_exit.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_clear_bss.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o)
.data 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(strrev.o)
*(.data*)
*(.rodata)
*(.rodata*)
*(.gnu.linkonce.d*)
0x0000000000800060 . = ALIGN (0x2)
0x0000000000800060 _edata = .
0x0000000000800060 PROVIDE (__data_end, .)
.bss 0x0000000000800060 0x4d
0x0000000000800060 PROVIDE (__bss_start, .)
*(.bss)
.bss 0x0000000000800060 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
.bss 0x0000000000800060 0x8 src/main.o
0x0000000000800060 syscounter
0x0000000000800062 voltage
0x0000000000800064 ampere_in
0x0000000000800066 ampere_out
.bss 0x0000000000800068 0x0 src/adc.o
.bss 0x0000000000800068 0x0 src/utils.o
.bss 0x0000000000800068 0x45 src/uart.o
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(floatsisf.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_inf.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_nan.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscA.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscB.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_round.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_split3.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_zero.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodhi4.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_divmodhi4.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodsi4.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_exit.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_clear_bss.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o)
.bss 0x00000000008000ad 0x0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(strrev.o)
*(.bss*)
*(COMMON)
0x00000000008000ad PROVIDE (__bss_end, .)
0x00000000000007c8 __data_load_start = LOADADDR (.data)
0x00000000000007c8 __data_load_end = (__data_load_start + SIZEOF (.data))
.noinit 0x00000000008000ad 0x0
0x00000000008000ad PROVIDE (__noinit_start, .)
*(.noinit*)
0x00000000008000ad PROVIDE (__noinit_end, .)
0x00000000008000ad _end = .
0x00000000008000ad PROVIDE (__heap_start, .)
.eeprom 0x0000000000810000 0x0
*(.eeprom*)
0x0000000000810000 __eeprom_end = .
.fuse
*(.fuse)
*(.lfuse)
*(.hfuse)
*(.efuse)
.lock
*(.lock*)
.signature
*(.signature*)
.stab 0x0000000000000000 0x1938
*(.stab)
.stab 0x0000000000000000 0x6cc /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
.stab 0x00000000000006cc 0x48 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o)
0x54 (size before relaxing)
.stab 0x0000000000000714 0x510 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
0x51c (size before relaxing)
.stab 0x0000000000000c24 0x240 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o)
0x24c (size before relaxing)
.stab 0x0000000000000e64 0x318 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(floatsisf.o)
0x324 (size before relaxing)
.stab 0x000000000000117c 0x78 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_inf.o)
0x84 (size before relaxing)
.stab 0x00000000000011f4 0x54 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_nan.o)
0x60 (size before relaxing)
.stab 0x0000000000001248 0x84 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscA.o)
0x90 (size before relaxing)
.stab 0x00000000000012cc 0x84 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscB.o)
0x90 (size before relaxing)
.stab 0x0000000000001350 0xfc /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_round.o)
0x108 (size before relaxing)
.stab 0x000000000000144c 0x1d4 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_split3.o)
0x1e0 (size before relaxing)
.stab 0x0000000000001620 0x90 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_zero.o)
0x9c (size before relaxing)
.stab 0x00000000000016b0 0x1b0 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o)
0x1bc (size before relaxing)
.stab 0x0000000000001860 0xd8 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(strrev.o)
0xe4 (size before relaxing)
.stabstr 0x0000000000000000 0x2b3
*(.stabstr)
.stabstr 0x0000000000000000 0x2b3 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
.stab.excl
*(.stab.excl)
.stab.exclstr
*(.stab.exclstr)
.stab.index
*(.stab.index)
.stab.indexstr
*(.stab.indexstr)
.comment
*(.comment)
.debug
*(.debug)
.line
*(.line)
.debug_srcinfo
*(.debug_srcinfo)
.debug_sfnames
*(.debug_sfnames)
.debug_aranges 0x0000000000000000 0x80
*(.debug_aranges)
.debug_aranges
0x0000000000000000 0x20 src/main.o
.debug_aranges
0x0000000000000020 0x20 src/adc.o
.debug_aranges
0x0000000000000040 0x20 src/utils.o
.debug_aranges
0x0000000000000060 0x20 src/uart.o
.debug_pubnames
0x0000000000000000 0x173
*(.debug_pubnames)
.debug_pubnames
0x0000000000000000 0x9a src/main.o
.debug_pubnames
0x000000000000009a 0x44 src/adc.o
.debug_pubnames
0x00000000000000de 0x1b src/utils.o
.debug_pubnames
0x00000000000000f9 0x7a src/uart.o
.debug_info 0x0000000000000000 0x7a7
*(.debug_info)
.debug_info 0x0000000000000000 0x259 src/main.o
.debug_info 0x0000000000000259 0x136 src/adc.o
.debug_info 0x000000000000038f 0x13c src/utils.o
.debug_info 0x00000000000004cb 0x2dc src/uart.o
*(.gnu.linkonce.wi.*)
.debug_abbrev 0x0000000000000000 0x3d5
*(.debug_abbrev)
.debug_abbrev 0x0000000000000000 0x12a src/main.o
.debug_abbrev 0x000000000000012a 0xb4 src/adc.o
.debug_abbrev 0x00000000000001de 0xde src/utils.o
.debug_abbrev 0x00000000000002bc 0x119 src/uart.o
.debug_line 0x0000000000000000 0x6fb
*(.debug_line)
.debug_line 0x0000000000000000 0x252 src/main.o
.debug_line 0x0000000000000252 0x13b src/adc.o
.debug_line 0x000000000000038d 0x105 src/utils.o
.debug_line 0x0000000000000492 0x269 src/uart.o
.debug_frame 0x0000000000000000 0x150
*(.debug_frame)
.debug_frame 0x0000000000000000 0x70 src/main.o
.debug_frame 0x0000000000000070 0x40 src/adc.o
.debug_frame 0x00000000000000b0 0x20 src/utils.o
.debug_frame 0x00000000000000d0 0x80 src/uart.o
.debug_str 0x0000000000000000 0x2bf
*(.debug_str)
.debug_str 0x0000000000000000 0x114 src/main.o
0x155 (size before relaxing)
.debug_str 0x0000000000000114 0x56 src/adc.o
0x11a (size before relaxing)
.debug_str 0x000000000000016a 0x61 src/utils.o
0x12e (size before relaxing)
.debug_str 0x00000000000001cb 0xf4 src/uart.o
0x1c9 (size before relaxing)
.debug_loc 0x0000000000000000 0x3f3
*(.debug_loc)
.debug_loc 0x0000000000000000 0xac src/main.o
.debug_loc 0x00000000000000ac 0xcf src/adc.o
.debug_loc 0x000000000000017b 0x8e src/utils.o
.debug_loc 0x0000000000000209 0x1ea src/uart.o
.debug_macinfo
*(.debug_macinfo)
OUTPUT(main.elf elf32-avr)
LOAD linker stubs
.debug_pubtypes
0x0000000000000000 0xd2
.debug_pubtypes
0x0000000000000000 0x37 src/main.o
.debug_pubtypes
0x0000000000000037 0x38 src/adc.o
.debug_pubtypes
0x000000000000006f 0x38 src/utils.o
.debug_pubtypes
0x00000000000000a7 0x2b src/uart.o
.debug_ranges 0x0000000000000000 0x18
.debug_ranges 0x0000000000000000 0x18 src/main.o
Cross Reference Table
Symbol File
__bad_interrupt /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__bss_end /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_clear_bss.o)
__bss_start /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_clear_bss.o)
__divmodhi4 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_divmodhi4.o)
src/main.o
__divsf3 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o)
src/main.o
__divsf3_pse /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
__divsf3x /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o)
__do_clear_bss /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_clear_bss.o)
src/uart.o
src/main.o
__fixunssfsi /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o)
src/main.o
__floatsisf /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(floatsisf.o)
__floatunsisf /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(floatsisf.o)
src/main.o
__fp_inf /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_inf.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
__fp_nan /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_nan.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
__fp_pscA /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscA.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
__fp_pscB /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_pscB.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
__fp_round /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_round.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3.o)
__fp_split3 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_split3.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
__fp_splitA /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_split3.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o)
__fp_szero /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_zero.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(divsf3x.o)
__fp_zero /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fp_zero.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libm.a(fixunssfsi.o)
__heap_end /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__init /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__stack /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__udivmodhi4 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodhi4.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o)
/usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_divmodhi4.o)
src/main.o
__udivmodsi4 /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_udivmodsi4.o)
src/adc.o
__vector_1 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_10 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_11 src/uart.o
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_12 src/uart.o
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_13 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_14 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_15 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_16 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_17 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_18 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_2 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_3 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_4 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_5 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_6 src/main.o
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_7 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_8 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_9 /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vector_default /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
__vectors /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
_div /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_divmodhi4.o)
_exit /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_exit.o)
adc_init src/adc.o
src/main.o
adc_read_avg src/adc.o
src/main.o
adc_read_single src/adc.o
ampere_in src/main.o
ampere_out src/main.o
exit /usr/lib/gcc/avr/4.5.3/avr4/libgcc.a(_exit.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
get_power src/main.o
itoa /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o)
src/main.o
main src/main.o
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/crtm8.o
measure src/main.o
ports_init src/main.o
strrev /usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(strrev.o)
/usr/lib/gcc/avr/4.5.3/../../../avr/lib/avr4/libc.a(itoa.o)
syscounter src/main.o
timer_init src/main.o
uart_getc src/uart.o
uart_init src/uart.o
src/main.o
uart_putc src/uart.o
uart_puts src/uart.o
src/main.o
uart_puts_p src/uart.o
src/main.o
voltage src/main.o
wait src/utils.o
src/main.o

View File

@ -1,75 +0,0 @@
00000000 W __heap_end
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 a __tmp_reg__
00000000 W __vector_default
00000000 T __vectors
00000001 a __zero_reg__
00000001 a __zero_reg__
00000001 a __zero_reg__
00000026 T __ctors_end
00000026 T __ctors_start
00000026 T __dtors_end
00000026 T __dtors_start
00000026 W __init
00000026 T __trampolines_end
00000026 T __trampolines_start
00000032 T __do_clear_bss
00000034 a __CCP__
00000034 a __CCP__
00000034 a __CCP__
0000003a t .do_clear_bss_loop
0000003c t .do_clear_bss_start
0000003d a __SP_L__
0000003d a __SP_L__
0000003d a __SP_L__
0000003e a __SP_H__
0000003e a __SP_H__
0000003e a __SP_H__
0000003f a __SREG__
0000003f a __SREG__
0000003f a __SREG__
00000046 T __bad_interrupt
00000046 W __vector_1
00000046 W __vector_10
00000046 W __vector_11
00000046 W __vector_12
00000046 W __vector_13
00000046 W __vector_14
00000046 W __vector_15
00000046 W __vector_16
00000046 W __vector_17
00000046 W __vector_18
00000046 W __vector_2
00000046 W __vector_3
00000046 W __vector_4
00000046 W __vector_5
00000046 W __vector_7
00000046 W __vector_8
00000046 W __vector_9
00000048 T timer_init
0000005e T ports_init
0000006c T get_voltage
00000070 T get_power
00000082 T main
0000008a T __vector_6
000000b8 T adc_init
000000ce T adc_read_single
000000e6 T adc_read_avg
0000013a T wait
00000158 T __udivmodsi4
00000164 t __udivmodsi4_loop
0000017e t __udivmodsi4_ep
0000019c T _exit
0000019c W exit
0000019e t __stop_program
000001a0 A __data_load_end
000001a0 A __data_load_start
000001a0 T _etext
0000045f W __stack
00800060 B __bss_start
00800060 T _edata
00800060 B syscounter
00800062 B __bss_end
00800062 N _end
00810000 N __eeprom_end

View File

@ -1,155 +0,0 @@
1 .file "adc.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __CCP__ = 0x34
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
15 .Ltext0:
16 .global adc_init
18 adc_init:
19 .LFB0:
20 .LM1:
21 /* prologue: function */
22 /* frame size = 0 */
23 /* stack size = 0 */
24 .L__stack_usage = 0
25 .LM2:
26 0000 80E4 ldi r24,lo8(64)
27 0002 87B9 out 39-32,r24
28 .LM3:
29 0004 83E0 ldi r24,lo8(3)
30 0006 86B9 out 38-32,r24
31 .LM4:
32 0008 379A sbi 38-32,7
33 .LM5:
34 000a 369A sbi 38-32,6
35 .L2:
36 .LM6:
37 000c 3699 sbic 38-32,6
38 000e 00C0 rjmp .L2
39 .LM7:
40 0010 84B1 in r24,36-32
41 0012 95B1 in r25,36+1-32
42 /* epilogue start */
43 .LM8:
44 0014 0895 ret
45 .LFE0:
47 .global adc_read_single
49 adc_read_single:
50 .LFB1:
51 .LM9:
52 .LVL0:
53 /* prologue: function */
54 /* frame size = 0 */
55 /* stack size = 0 */
56 .L__stack_usage = 0
57 .LM10:
58 0016 97B1 in r25,39-32
59 0018 8F71 andi r24,lo8(31)
60 .LVL1:
61 001a 907E andi r25,lo8(-32)
62 001c 892B or r24,r25
63 001e 87B9 out 39-32,r24
64 .LM11:
65 0020 369A sbi 38-32,6
66 .L5:
67 .LM12:
68 0022 3699 sbic 38-32,6
69 0024 00C0 rjmp .L5
70 .LM13:
71 0026 24B1 in r18,36-32
72 0028 35B1 in r19,36+1-32
73 .LM14:
74 002a C901 movw r24,r18
75 /* epilogue start */
76 002c 0895 ret
77 .LFE1:
79 .global adc_read_avg
81 adc_read_avg:
82 .LFB2:
83 .LM15:
84 .LVL2:
85 002e BF92 push r11
86 0030 CF92 push r12
87 0032 DF92 push r13
88 0034 EF92 push r14
89 0036 FF92 push r15
90 0038 0F93 push r16
91 003a 1F93 push r17
92 /* prologue: function */
93 /* frame size = 0 */
94 /* stack size = 7 */
95 .L__stack_usage = 7
96 003c D82E mov r13,r24
97 003e B62E mov r11,r22
98 .LVL3:
99 .LBB2:
100 .LM16:
101 0040 CC24 clr r12
102 .LM17:
103 0042 EE24 clr r14
104 0044 FF24 clr r15
105 0046 8701 movw r16,r14
106 .LM18:
107 0048 00C0 rjmp .L8
108 .LVL4:
109 .L9:
110 .LM19:
111 004a 8D2D mov r24,r13
112 004c 00D0 rcall adc_read_single
113 004e AC01 movw r20,r24
114 0050 60E0 ldi r22,lo8(0)
115 0052 70E0 ldi r23,hi8(0)
116 0054 E40E add r14,r20
117 0056 F51E adc r15,r21
118 0058 061F adc r16,r22
119 005a 171F adc r17,r23
120 .LVL5:
121 .LM20:
122 005c C394 inc r12
123 .LVL6:
124 .L8:
125 .LM21:
126 005e CB14 cp r12,r11
127 0060 00F0 brlo .L9
128 .LBE2:
129 .LM22:
130 0062 2B2D mov r18,r11
131 0064 30E0 ldi r19,lo8(0)
132 0066 40E0 ldi r20,lo8(0)
133 0068 50E0 ldi r21,hi8(0)
134 006a C801 movw r24,r16
135 006c B701 movw r22,r14
136 006e 00D0 rcall __udivmodsi4
137 .LM23:
138 0070 C901 movw r24,r18
139 /* epilogue start */
140 0072 1F91 pop r17
141 0074 0F91 pop r16
142 0076 FF90 pop r15
143 0078 EF90 pop r14
144 .LVL7:
145 007a DF90 pop r13
146 .LVL8:
147 007c CF90 pop r12
148 .LVL9:
149 007e BF90 pop r11
150 .LVL10:
151 0080 0895 ret
152 .LFE2:
194 .Letext0:
DEFINED SYMBOLS
*ABS*:0000000000000000 adc.c
/tmp/cccUykaz.s:2 *ABS*:000000000000003f __SREG__
/tmp/cccUykaz.s:3 *ABS*:000000000000003e __SP_H__
/tmp/cccUykaz.s:4 *ABS*:000000000000003d __SP_L__
/tmp/cccUykaz.s:5 *ABS*:0000000000000034 __CCP__
/tmp/cccUykaz.s:6 *ABS*:0000000000000000 __tmp_reg__
/tmp/cccUykaz.s:7 *ABS*:0000000000000001 __zero_reg__
/tmp/cccUykaz.s:18 .text:0000000000000000 adc_init
/tmp/cccUykaz.s:49 .text:0000000000000016 adc_read_single
/tmp/cccUykaz.s:81 .text:000000000000002e adc_read_avg
UNDEFINED SYMBOLS
__udivmodsi4

View File

@ -1,468 +0,0 @@
1 .file "main.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __CCP__ = 0x34
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
15 .Ltext0:
16 .global timer_init
18 timer_init:
19 .LFB0:
20 .LM1:
21 /* prologue: function */
22 /* frame size = 0 */
23 /* stack size = 0 */
24 .L__stack_usage = 0
25 .LM2:
26 0000 8EB5 in r24,78-32
27 0002 8B60 ori r24,lo8(11)
28 0004 8EBD out 78-32,r24
29 .LM3:
30 0006 82EE ldi r24,lo8(1250)
31 0008 94E0 ldi r25,hi8(1250)
32 000a 9BBD out 74+1-32,r25
33 000c 8ABD out 74-32,r24
34 .LM4:
35 000e 80E1 ldi r24,lo8(16)
36 0010 89BF out 89-32,r24
37 .LM5:
38 /* #APP */
39 ; 41 "src/main.c" 1
40 0012 7894 sei
41 ; 0 "" 2
42 /* epilogue start */
43 .LM6:
44 /* #NOAPP */
45 0014 0895 ret
46 .LFE0:
48 .global ports_init
50 ports_init:
51 .LFB1:
52 .LM7:
53 /* prologue: function */
54 /* frame size = 0 */
55 /* stack size = 0 */
56 .L__stack_usage = 0
57 .LM8:
58 0016 87B3 in r24,55-32
59 0018 8760 ori r24,lo8(7)
60 001a 87BB out 55-32,r24
61 .LM9:
62 001c 88B3 in r24,56-32
63 001e 887F andi r24,lo8(-8)
64 0020 88BB out 56-32,r24
65 /* epilogue start */
66 .LM10:
67 0022 0895 ret
68 .LFE1:
70 .global measure
72 measure:
73 .LFB2:
74 .LM11:
75 0024 CF93 push r28
76 0026 DF93 push r29
77 /* prologue: function */
78 /* frame size = 0 */
79 /* stack size = 2 */
80 .L__stack_usage = 2
81 .LM12:
82 0028 82E0 ldi r24,lo8(2)
83 002a 64E0 ldi r22,lo8(4)
84 002c 00D0 rcall adc_read_avg
85 002e BC01 movw r22,r24
86 0030 80E0 ldi r24,lo8(0)
87 0032 90E0 ldi r25,hi8(0)
88 0034 00D0 rcall __floatunsisf
89 0036 23E3 ldi r18,lo8(0x40d33333)
90 0038 33E3 ldi r19,hi8(0x40d33333)
91 003a 43ED ldi r20,hlo8(0x40d33333)
92 003c 50E4 ldi r21,hhi8(0x40d33333)
93 003e 00D0 rcall __divsf3
94 0040 00D0 rcall __fixunssfsi
95 0042 7093 0000 sts voltage+1,r23
96 0046 6093 0000 sts voltage,r22
97 .LM13:
98 004a 81E0 ldi r24,lo8(1)
99 004c 64E0 ldi r22,lo8(4)
100 004e 00D0 rcall adc_read_avg
101 .LM14:
102 0050 9C01 movw r18,r24
103 0052 2E5F subi r18,lo8(-(-510))
104 0054 3140 sbci r19,hi8(-(-510))
105 .LM15:
106 0056 C8E4 ldi r28,lo8(72)
107 0058 D0E0 ldi r29,hi8(72)
108 005a 2C9F mul r18,r28
109 005c C001 movw r24,r0
110 005e 2D9F mul r18,r29
111 0060 900D add r25,r0
112 0062 3C9F mul r19,r28
113 0064 900D add r25,r0
114 0066 1124 clr r1
115 0068 9093 0000 sts ampere_in+1,r25
116 006c 8093 0000 sts ampere_in,r24
117 .LM16:
118 0070 80E0 ldi r24,lo8(0)
119 0072 64E0 ldi r22,lo8(4)
120 0074 00D0 rcall adc_read_avg
121 .LM17:
122 0076 9C01 movw r18,r24
123 0078 2F5F subi r18,lo8(-(-511))
124 007a 3140 sbci r19,hi8(-(-511))
125 .LM18:
126 007c 2C9F mul r18,r28
127 007e C001 movw r24,r0
128 0080 2D9F mul r18,r29
129 0082 900D add r25,r0
130 0084 3C9F mul r19,r28
131 0086 900D add r25,r0
132 0088 1124 clr r1
133 008a 9093 0000 sts ampere_out+1,r25
134 008e 8093 0000 sts ampere_out,r24
135 /* epilogue start */
136 .LM19:
137 0092 DF91 pop r29
138 0094 CF91 pop r28
139 0096 0895 ret
140 .LFE2:
142 .global get_power
144 get_power:
145 .LFB3:
146 .LM20:
147 .LVL0:
148 /* prologue: function */
149 /* frame size = 0 */
150 /* stack size = 0 */
151 .L__stack_usage = 0
152 0098 FC01 movw r30,r24
153 009a CB01 movw r24,r22
154 .LVL1:
155 .LM21:
156 009c 24E6 ldi r18,lo8(100)
157 009e 30E0 ldi r19,hi8(100)
158 00a0 B901 movw r22,r18
159 .LVL2:
160 00a2 00D0 rcall __divmodhi4
161 .LVL3:
162 00a4 6E9F mul r22,r30
163 00a6 C001 movw r24,r0
164 00a8 6F9F mul r22,r31
165 00aa 900D add r25,r0
166 00ac 7E9F mul r23,r30
167 00ae 900D add r25,r0
168 00b0 1124 clr r1
169 00b2 B901 movw r22,r18
170 00b4 00D0 rcall __udivmodhi4
171 .LM22:
172 00b6 862F mov r24,r22
173 /* epilogue start */
174 00b8 0895 ret
175 .LFE3:
177 .global main
179 main:
180 .LFB4:
181 .LM23:
182 00ba EF92 push r14
183 00bc FF92 push r15
184 00be 0F93 push r16
185 00c0 1F93 push r17
186 00c2 DF93 push r29
187 00c4 CF93 push r28
188 00c6 CDB7 in r28,__SP_L__
189 00c8 DEB7 in r29,__SP_H__
190 00ca 2A97 sbiw r28,10
191 00cc 0FB6 in __tmp_reg__,__SREG__
192 00ce F894 cli
193 00d0 DEBF out __SP_H__,r29
194 00d2 0FBE out __SREG__,__tmp_reg__
195 00d4 CDBF out __SP_L__,r28
196 /* prologue: function */
197 /* frame size = 10 */
198 /* stack size = 16 */
199 .L__stack_usage = 16
200 .LM24:
201 00d6 00D0 rcall ports_init
202 .LM25:
203 00d8 00D0 rcall adc_init
204 .LM26:
205 00da 00D0 rcall timer_init
206 .LM27:
207 00dc 83E3 ldi r24,lo8(51)
208 00de 90E0 ldi r25,hi8(51)
209 00e0 00D0 rcall uart_init
210 .LM28:
211 00e2 C09A sbi 56-32,0
212 .LM29:
213 00e4 C19A sbi 56-32,1
214 .LM30:
215 00e6 C298 cbi 56-32,2
216 .LBB15:
217 .LM31:
218 00e8 8E01 movw r16,r28
219 00ea 0F5F subi r16,lo8(-(1))
220 00ec 1F4F sbci r17,hi8(-(1))
221 .LBB16:
222 .LBB17:
223 .LM32:
224 00ee 84E6 ldi r24,lo8(100)
225 00f0 E82E mov r14,r24
226 00f2 F12C mov r15,__zero_reg__
227 .L6:
228 .LBE17:
229 .LBE16:
230 .LM33:
231 00f4 00D0 rcall measure
232 .LM34:
233 00f6 80E0 ldi r24,lo8(__c.1470)
234 00f8 90E0 ldi r25,hi8(__c.1470)
235 00fa 00D0 rcall uart_puts_p
236 .LM35:
237 00fc 8091 0000 lds r24,voltage
238 0100 9091 0000 lds r25,voltage+1
239 0104 B801 movw r22,r16
240 0106 4AE0 ldi r20,lo8(10)
241 0108 50E0 ldi r21,hi8(10)
242 010a 00D0 rcall itoa
243 010c 00D0 rcall uart_puts
244 .LM36:
245 010e 80E0 ldi r24,lo8(__c.1473)
246 0110 90E0 ldi r25,hi8(__c.1473)
247 0112 00D0 rcall uart_puts_p
248 .LM37:
249 0114 80E0 ldi r24,lo8(__c.1475)
250 0116 90E0 ldi r25,hi8(__c.1475)
251 0118 00D0 rcall uart_puts_p
252 .LM38:
253 011a 8091 0000 lds r24,ampere_out
254 011e 9091 0000 lds r25,ampere_out+1
255 0122 B801 movw r22,r16
256 0124 4AE0 ldi r20,lo8(10)
257 0126 50E0 ldi r21,hi8(10)
258 0128 00D0 rcall itoa
259 012a 00D0 rcall uart_puts
260 .LM39:
261 012c 80E0 ldi r24,lo8(__c.1477)
262 012e 90E0 ldi r25,hi8(__c.1477)
263 0130 00D0 rcall uart_puts_p
264 .LVL4:
265 .LBB19:
266 .LBB18:
267 .LM40:
268 0132 8091 0000 lds r24,ampere_out
269 0136 9091 0000 lds r25,ampere_out+1
270 013a B701 movw r22,r14
271 013c 00D0 rcall __divmodhi4
272 013e 2091 0000 lds r18,voltage
273 0142 3091 0000 lds r19,voltage+1
274 0146 629F mul r22,r18
275 0148 C001 movw r24,r0
276 014a 639F mul r22,r19
277 014c 900D add r25,r0
278 014e 729F mul r23,r18
279 0150 900D add r25,r0
280 0152 1124 clr r1
281 0154 B701 movw r22,r14
282 0156 00D0 rcall __udivmodhi4
283 .LBE18:
284 .LBE19:
285 .LM41:
286 0158 862F mov r24,r22
287 015a 90E0 ldi r25,lo8(0)
288 015c B801 movw r22,r16
289 015e 4AE0 ldi r20,lo8(10)
290 0160 50E0 ldi r21,hi8(10)
291 0162 00D0 rcall itoa
292 .LVL5:
293 0164 00D0 rcall uart_puts
294 .LM42:
295 0166 80E0 ldi r24,lo8(__c.1479)
296 0168 90E0 ldi r25,hi8(__c.1479)
297 016a 00D0 rcall uart_puts_p
298 .LM43:
299 016c 80E0 ldi r24,lo8(__c.1481)
300 016e 90E0 ldi r25,hi8(__c.1481)
301 0170 00D0 rcall uart_puts_p
302 .LM44:
303 0172 8091 0000 lds r24,ampere_in
304 0176 9091 0000 lds r25,ampere_in+1
305 017a B801 movw r22,r16
306 017c 4AE0 ldi r20,lo8(10)
307 017e 50E0 ldi r21,hi8(10)
308 0180 00D0 rcall itoa
309 0182 00D0 rcall uart_puts
310 .LM45:
311 0184 80E0 ldi r24,lo8(__c.1483)
312 0186 90E0 ldi r25,hi8(__c.1483)
313 0188 00D0 rcall uart_puts_p
314 .LVL6:
315 .LBB20:
316 .LBB21:
317 .LM46:
318 018a 8091 0000 lds r24,ampere_in
319 018e 9091 0000 lds r25,ampere_in+1
320 0192 B701 movw r22,r14
321 0194 00D0 rcall __divmodhi4
322 0196 2091 0000 lds r18,voltage
323 019a 3091 0000 lds r19,voltage+1
324 019e 629F mul r22,r18
325 01a0 C001 movw r24,r0
326 01a2 639F mul r22,r19
327 01a4 900D add r25,r0
328 01a6 729F mul r23,r18
329 01a8 900D add r25,r0
330 01aa 1124 clr r1
331 01ac B701 movw r22,r14
332 01ae 00D0 rcall __udivmodhi4
333 .LBE21:
334 .LBE20:
335 .LM47:
336 01b0 862F mov r24,r22
337 01b2 90E0 ldi r25,lo8(0)
338 01b4 B801 movw r22,r16
339 01b6 4AE0 ldi r20,lo8(10)
340 01b8 50E0 ldi r21,hi8(10)
341 01ba 00D0 rcall itoa
342 .LVL7:
343 01bc 00D0 rcall uart_puts
344 .LM48:
345 01be 80E0 ldi r24,lo8(__c.1485)
346 01c0 90E0 ldi r25,hi8(__c.1485)
347 01c2 00D0 rcall uart_puts_p
348 .LM49:
349 01c4 84E6 ldi r24,lo8(100)
350 01c6 00D0 rcall wait
351 .LM50:
352 01c8 84E6 ldi r24,lo8(100)
353 01ca 00D0 rcall wait
354 .LM51:
355 01cc 84E6 ldi r24,lo8(100)
356 01ce 00D0 rcall wait
357 .LM52:
358 01d0 84E6 ldi r24,lo8(100)
359 01d2 00D0 rcall wait
360 .LM53:
361 01d4 84E6 ldi r24,lo8(100)
362 01d6 00D0 rcall wait
363 .LM54:
364 01d8 84E6 ldi r24,lo8(100)
365 01da 00D0 rcall wait
366 01dc 00C0 rjmp .L6
367 .LBE15:
368 .LFE4:
370 .global __vector_6
372 __vector_6:
373 .LFB5:
374 .LM55:
375 01de 1F92 push __zero_reg__
376 01e0 0F92 push r0
377 01e2 0FB6 in r0,__SREG__
378 01e4 0F92 push r0
379 01e6 1124 clr __zero_reg__
380 01e8 8F93 push r24
381 01ea 9F93 push r25
382 /* prologue: Signal */
383 /* frame size = 0 */
384 /* stack size = 5 */
385 .L__stack_usage = 5
386 .LM56:
387 01ec 8091 0000 lds r24,syscounter
388 01f0 9091 0000 lds r25,syscounter+1
389 01f4 0196 adiw r24,1
390 01f6 9093 0000 sts syscounter+1,r25
391 01fa 8093 0000 sts syscounter,r24
392 /* epilogue start */
393 .LM57:
394 01fe 9F91 pop r25
395 0200 8F91 pop r24
396 0202 0F90 pop r0
397 0204 0FBE out __SREG__,r0
398 0206 0F90 pop r0
399 0208 1F90 pop __zero_reg__
400 020a 1895 reti
401 .LFE5:
403 .global syscounter
404 .global syscounter
405 .section .bss
408 syscounter:
409 0000 0000 .skip 2,0
410 .global voltage
411 .global voltage
414 voltage:
415 0002 0000 .skip 2,0
416 .global ampere_in
417 .global ampere_in
420 ampere_in:
421 0004 0000 .skip 2,0
422 .global ampere_out
423 .global ampere_out
426 ampere_out:
427 0006 0000 .skip 2,0
428 .section .progmem.data,"a",@progbits
431 __c.1485:
432 0000 570D 0A00 .string "W\r\n"
435 __c.1483:
436 0004 6D41 2020 .string "mA "
436 00
439 __c.1481:
440 0009 4765 6E65 .string "Generator: "
440 7261 746F
440 723A 2000
443 __c.1479:
444 0015 570D 0A00 .string "W\r\n"
447 __c.1477:
448 0019 6D41 2020 .string "mA "
448 00
451 __c.1475:
452 001e 4C6F 6164 .string "Load: "
452 3A20 2020
452 2020 2000
455 __c.1473:
456 002a 6456 0D0A .string "dV\r\n"
456 00
459 __c.1470:
460 002f 566F 6C74 .string "Voltage: "
460 6167 653A
460 2020 2000
525 .Letext0:
DEFINED SYMBOLS
*ABS*:0000000000000000 main.c
/tmp/ccTFX6lH.s:2 *ABS*:000000000000003f __SREG__
/tmp/ccTFX6lH.s:3 *ABS*:000000000000003e __SP_H__
/tmp/ccTFX6lH.s:4 *ABS*:000000000000003d __SP_L__
/tmp/ccTFX6lH.s:5 *ABS*:0000000000000034 __CCP__
/tmp/ccTFX6lH.s:6 *ABS*:0000000000000000 __tmp_reg__
/tmp/ccTFX6lH.s:7 *ABS*:0000000000000001 __zero_reg__
/tmp/ccTFX6lH.s:18 .text:0000000000000000 timer_init
/tmp/ccTFX6lH.s:50 .text:0000000000000016 ports_init
/tmp/ccTFX6lH.s:72 .text:0000000000000024 measure
/tmp/ccTFX6lH.s:414 .bss:0000000000000002 voltage
/tmp/ccTFX6lH.s:420 .bss:0000000000000004 ampere_in
/tmp/ccTFX6lH.s:426 .bss:0000000000000006 ampere_out
/tmp/ccTFX6lH.s:144 .text:0000000000000098 get_power
/tmp/ccTFX6lH.s:179 .text:00000000000000ba main
/tmp/ccTFX6lH.s:459 .progmem.data:000000000000002f __c.1470
/tmp/ccTFX6lH.s:455 .progmem.data:000000000000002a __c.1473
/tmp/ccTFX6lH.s:451 .progmem.data:000000000000001e __c.1475
/tmp/ccTFX6lH.s:447 .progmem.data:0000000000000019 __c.1477
/tmp/ccTFX6lH.s:443 .progmem.data:0000000000000015 __c.1479
/tmp/ccTFX6lH.s:439 .progmem.data:0000000000000009 __c.1481
/tmp/ccTFX6lH.s:435 .progmem.data:0000000000000004 __c.1483
/tmp/ccTFX6lH.s:431 .progmem.data:0000000000000000 __c.1485
/tmp/ccTFX6lH.s:372 .text:00000000000001de __vector_6
/tmp/ccTFX6lH.s:408 .bss:0000000000000000 syscounter
UNDEFINED SYMBOLS
adc_read_avg
__floatunsisf
__divsf3
__fixunssfsi
__divmodhi4
__udivmodhi4
adc_init
uart_init
uart_puts_p
itoa
uart_puts
wait
__do_clear_bss

View File

@ -1,62 +0,0 @@
1 .file "utils.c"
2 __SREG__ = 0x3f
3 __SP_H__ = 0x3e
4 __SP_L__ = 0x3d
5 __CCP__ = 0x34
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
15 .Ltext0:
16 .global wait
18 wait:
19 .LFB6:
20 .LM1:
21 .LVL0:
22 /* prologue: function */
23 /* frame size = 0 */
24 /* stack size = 0 */
25 .L__stack_usage = 0
26 .LM2:
27 0000 8823 tst r24
28 0002 01F4 brne .L2
29 0004 84E6 ldi r24,lo8(100)
30 .LVL1:
31 .L2:
32 .LM3:
33 0006 90E0 ldi r25,lo8(0)
34 0008 00C0 rjmp .L3
35 .LVL2:
36 .L4:
37 .LBB4:
38 .LBB5:
39 .LM4:
40 000a E3EC ldi r30,lo8(2499)
41 000c F9E0 ldi r31,hi8(2499)
42 000e 3197 1:sbiw r30,1
43 0010 01F4 brne 1b
44 0012 00C0 rjmp .
45 0014 0000 nop
46 .LBE5:
47 .LBE4:
48 .LM5:
49 0016 9F5F subi r25,lo8(-(1))
50 .LVL3:
51 .L3:
52 .LM6:
53 0018 9817 cp r25,r24
54 001a 00F0 brlo .L4
55 /* epilogue start */
56 .LM7:
57 001c 0895 ret
58 .LFE6:
84 .Letext0:
DEFINED SYMBOLS
*ABS*:0000000000000000 utils.c
/tmp/cctzSRIE.s:2 *ABS*:000000000000003f __SREG__
/tmp/cctzSRIE.s:3 *ABS*:000000000000003e __SP_H__
/tmp/cctzSRIE.s:4 *ABS*:000000000000003d __SP_L__
/tmp/cctzSRIE.s:5 *ABS*:0000000000000034 __CCP__
/tmp/cctzSRIE.s:6 *ABS*:0000000000000000 __tmp_reg__
/tmp/cctzSRIE.s:7 *ABS*:0000000000000001 __zero_reg__
/tmp/cctzSRIE.s:18 .text:0000000000000000 wait
NO UNDEFINED SYMBOLS