Hallo,
hier der *.lss Datei-Inhalt:
Funktionierender Code (Ohne Funktion-Definition):
------------------------------------------------
Bandtuner.elf: file format elf32-avr
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 000000dc 00000000 00000000 00000054 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .debug_aranges 00000020 00000000 00000000 00000130 2**0
CONTENTS, READONLY, DEBUGGING
2 .debug_pubnames 0000001b 00000000 00000000 00000150 2**0
CONTENTS, READONLY, DEBUGGING
3 .debug_info 00000076 00000000 00000000 0000016b 2**0
CONTENTS, READONLY, DEBUGGING
4 .debug_abbrev 00000041 00000000 00000000 000001e1 2**0
CONTENTS, READONLY, DEBUGGING
5 .debug_line 00000077 00000000 00000000 00000222 2**0
CONTENTS, READONLY, DEBUGGING
6 .debug_frame 00000020 00000000 00000000 0000029c 2**2
CONTENTS, READONLY, DEBUGGING
7 .debug_str 00000086 00000000 00000000 000002bc 2**0
CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:
00000000 <__vectors>:
0: 0c 94 46 00 jmp 0x8c ; 0x8c <__ctors_end>
4: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
8: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
10: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
14: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
18: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
1c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
20: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
24: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
28: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
2c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
30: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
34: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
38: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
3c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
40: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
44: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
48: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
4c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
50: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
54: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
58: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
5c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
60: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
64: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
68: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
6c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
70: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
74: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
78: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
7c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
80: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
84: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
88: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
0000008c <__ctors_end>:
8c: 11 24 eor r1, r1
8e: 1f be out 0x3f, r1 ; 63
90: cf ef ldi r28, 0xFF ; 255
92: d0 e1 ldi r29, 0x10 ; 16
94: de bf out 0x3e, r29 ; 62
96: cd bf out 0x3d, r28 ; 61
00000098 <__do_copy_data>:
98: 11 e0 ldi r17, 0x01 ; 1
9a: a0 e0 ldi r26, 0x00 ; 0
9c: b1 e0 ldi r27, 0x01 ; 1
9e: ec ed ldi r30, 0xDC ; 220
a0: f0 e0 ldi r31, 0x00 ; 0
a2: 00 e0 ldi r16, 0x00 ; 0
a4: 0b bf out 0x3b, r16 ; 59
a6: 02 c0 rjmp .+4 ; 0xac <__do_copy_data+0x14>
a8: 07 90 elpm r0, Z+
aa: 0d 92 st X+, r0
ac: a0 30 cpi r26, 0x00 ; 0
ae: b1 07 cpc r27, r17
b0: d9 f7 brne .-10 ; 0xa8 <__do_copy_data+0x10>
000000b2 <__do_clear_bss>:
b2: 11 e0 ldi r17, 0x01 ; 1
b4: a0 e0 ldi r26, 0x00 ; 0
b6: b1 e0 ldi r27, 0x01 ; 1
b8: 01 c0 rjmp .+2 ; 0xbc <.do_clear_bss_start>
000000ba <.do_clear_bss_loop>:
ba: 1d 92 st X+, r1
000000bc <.do_clear_bss_start>:
bc: a0 30 cpi r26, 0x00 ; 0
be: b1 07 cpc r27, r17
c0: e1 f7 brne .-8 ; 0xba <.do_clear_bss_loop>
c2: 0e 94 67 00 call 0xce ; 0xce <main>
c6: 0c 94 6c 00 jmp 0xd8 ; 0xd8 <_exit>
000000ca <__bad_interrupt>:
ca: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
000000ce <main>:
#include <avr/io.h>
int main(void) {
ce: 8f ef ldi r24, 0xFF ; 255
d0: 87 bb out 0x17, r24 ; 23
DDRB = 0xff;
PORTB = 0xff;
d2: 88 bb out 0x18, r24 ; 24
PORTB &= ~ (1<<PB0);
d4: c0 98 cbi 0x18, 0 ; 24
d6: ff cf rjmp .-2 ; 0xd6 <main+0x8>
000000d8 <_exit>:
d8: f8 94 cli
000000da <__stop_program>:
da: ff cf rjmp .-2 ; 0xda <__stop_program>
Nicht funktionierender Code (mit Funktions-Definition):
---------------------------------------------------------
Bandtuner.elf: file format elf32-avr
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 000000de 00000000 00000000 00000054 2**1
CONTENTS, ALLOC, LOAD, READONLY, CODE
1 .debug_aranges 00000020 00000000 00000000 00000132 2**0
CONTENTS, READONLY, DEBUGGING
2 .debug_pubnames 0000002e 00000000 00000000 00000152 2**0
CONTENTS, READONLY, DEBUGGING
3 .debug_info 0000008a 00000000 00000000 00000180 2**0
CONTENTS, READONLY, DEBUGGING
4 .debug_abbrev 00000056 00000000 00000000 0000020a 2**0
CONTENTS, READONLY, DEBUGGING
5 .debug_line 00000087 00000000 00000000 00000260 2**0
CONTENTS, READONLY, DEBUGGING
6 .debug_frame 00000030 00000000 00000000 000002e8 2**2
CONTENTS, READONLY, DEBUGGING
7 .debug_str 00000095 00000000 00000000 00000318 2**0
CONTENTS, READONLY, DEBUGGING
Disassembly of section .text:
00000000 <__vectors>:
0: 0c 94 46 00 jmp 0x8c ; 0x8c <__ctors_end>
4: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
8: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
10: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
14: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
18: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
1c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
20: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
24: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
28: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
2c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
30: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
34: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
38: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
3c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
40: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
44: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
48: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
4c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
50: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
54: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
58: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
5c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
60: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
64: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
68: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
6c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
70: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
74: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
78: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
7c: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
80: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
84: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
88: 0c 94 65 00 jmp 0xca ; 0xca <__bad_interrupt>
0000008c <__ctors_end>:
8c: 11 24 eor r1, r1
8e: 1f be out 0x3f, r1 ; 63
90: cf ef ldi r28, 0xFF ; 255
92: d0 e1 ldi r29, 0x10 ; 16
94: de bf out 0x3e, r29 ; 62
96: cd bf out 0x3d, r28 ; 61
00000098 <__do_copy_data>:
98: 11 e0 ldi r17, 0x01 ; 1
9a: a0 e0 ldi r26, 0x00 ; 0
9c: b1 e0 ldi r27, 0x01 ; 1
9e: ee ed ldi r30, 0xDE ; 222
a0: f0 e0 ldi r31, 0x00 ; 0
a2: 00 e0 ldi r16, 0x00 ; 0
a4: 0b bf out 0x3b, r16 ; 59
a6: 02 c0 rjmp .+4 ; 0xac <__do_copy_data+0x14>
a8: 07 90 elpm r0, Z+
aa: 0d 92 st X+, r0
ac: a0 30 cpi r26, 0x00 ; 0
ae: b1 07 cpc r27, r17
b0: d9 f7 brne .-10 ; 0xa8 <__do_copy_data+0x10>
000000b2 <__do_clear_bss>:
b2: 11 e0 ldi r17, 0x01 ; 1
b4: a0 e0 ldi r26, 0x00 ; 0
b6: b1 e0 ldi r27, 0x01 ; 1
b8: 01 c0 rjmp .+2 ; 0xbc <.do_clear_bss_start>
000000ba <.do_clear_bss_loop>:
ba: 1d 92 st X+, r1
000000bc <.do_clear_bss_start>:
bc: a0 30 cpi r26, 0x00 ; 0
be: b1 07 cpc r27, r17
c0: e1 f7 brne .-8 ; 0xba <.do_clear_bss_loop>
c2: 0e 94 68 00 call 0xd0 ; 0xd0 <main>
c6: 0c 94 6d 00 jmp 0xda ; 0xda <_exit>
000000ca <__bad_interrupt>:
ca: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
000000ce <myTestFunction>:
#include <avr/io.h>
void myTestFunction(void) {
ce: 08 95 ret
000000d0 <main>:
}
int main(void) {
d0: 8f ef ldi r24, 0xFF ; 255
d2: 87 bb out 0x17, r24 ; 23
DDRB = 0xff;
PORTB = 0xff;
d4: 88 bb out 0x18, r24 ; 24
PORTB &= ~ (1<<PB0);
d6: c0 98 cbi 0x18, 0 ; 24
d8: ff cf rjmp .-2 ; 0xd8 <main+0x8>
000000da <_exit>:
da: f8 94 cli
000000dc <__stop_program>:
dc: ff cf rjmp .-2 ; 0xdc <__stop_program>