C-HelloWorld.elf: file format elf32-avr Sections: Idx Name Size VMA LMA File off Algn 0 .text 000000ee 00000000 00000000 00000074 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE 1 .bss 00000001 00800060 00800060 00000162 2**0 ALLOC 2 .stab 00000378 00000000 00000000 00000164 2**2 CONTENTS, READONLY, DEBUGGING 3 .stabstr 00000071 00000000 00000000 000004dc 2**0 CONTENTS, READONLY, DEBUGGING 4 .debug_aranges 00000020 00000000 00000000 0000054d 2**0 CONTENTS, READONLY, DEBUGGING 5 .debug_pubnames 0000003e 00000000 00000000 0000056d 2**0 CONTENTS, READONLY, DEBUGGING 6 .debug_info 00000102 00000000 00000000 000005ab 2**0 CONTENTS, READONLY, DEBUGGING 7 .debug_abbrev 000000bf 00000000 00000000 000006ad 2**0 CONTENTS, READONLY, DEBUGGING 8 .debug_line 00000184 00000000 00000000 0000076c 2**0 CONTENTS, READONLY, DEBUGGING 9 .debug_frame 00000040 00000000 00000000 000008f0 2**2 CONTENTS, READONLY, DEBUGGING 10 .debug_str 000000c6 00000000 00000000 00000930 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: 00000000 <__vectors>: 0: 0c 94 2a 00 jmp 0x54 ; 0x54 <__ctors_end> 4: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 8: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 10: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 14: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 18: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 1c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 20: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 24: 0c 94 49 00 jmp 0x92 ; 0x92 <__vector_9> 28: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 2c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 30: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 34: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 38: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 3c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 40: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 44: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 48: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 4c: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 50: 0c 94 47 00 jmp 0x8e ; 0x8e <__bad_interrupt> 00000054 <__ctors_end>: 54: 11 24 eor r1, r1 56: 1f be out 0x3f, r1 ; 63 58: cf e5 ldi r28, 0x5F ; 95 5a: d4 e0 ldi r29, 0x04 ; 4 5c: de bf out 0x3e, r29 ; 62 5e: cd bf out 0x3d, r28 ; 61 00000060 <__do_copy_data>: 60: 10 e0 ldi r17, 0x00 ; 0 62: a0 e6 ldi r26, 0x60 ; 96 64: b0 e0 ldi r27, 0x00 ; 0 66: ee ee ldi r30, 0xEE ; 238 68: f0 e0 ldi r31, 0x00 ; 0 6a: 02 c0 rjmp .+4 ; 0x70 <.do_copy_data_start> 0000006c <.do_copy_data_loop>: 6c: 05 90 lpm r0, Z+ 6e: 0d 92 st X+, r0 00000070 <.do_copy_data_start>: 70: a0 36 cpi r26, 0x60 ; 96 72: b1 07 cpc r27, r17 74: d9 f7 brne .-10 ; 0x6c <.do_copy_data_loop> 00000076 <__do_clear_bss>: 76: 10 e0 ldi r17, 0x00 ; 0 78: a0 e6 ldi r26, 0x60 ; 96 7a: b0 e0 ldi r27, 0x00 ; 0 7c: 01 c0 rjmp .+2 ; 0x80 <.do_clear_bss_start> 0000007e <.do_clear_bss_loop>: 7e: 1d 92 st X+, r1 00000080 <.do_clear_bss_start>: 80: a1 36 cpi r26, 0x61 ; 97 82: b1 07 cpc r27, r17 84: e1 f7 brne .-8 ; 0x7e <.do_clear_bss_loop> 86: 0e 94 60 00 call 0xc0 ; 0xc0
8a: 0c 94 76 00 jmp 0xec ; 0xec <_exit> 0000008e <__bad_interrupt>: 8e: 0c 94 00 00 jmp 0 ; 0x0 <__vectors> 00000092 <__vector_9>: ISR(TIMER0_OVF_vect) { 92: 1f 92 push r1 94: 0f 92 push r0 96: 0f b6 in r0, 0x3f ; 63 98: 0f 92 push r0 9a: 11 24 eor r1, r1 if bit_is_set (PORTB,PIN0) { PORTB &= ~(1 << PIN0);} 9c: c0 9b sbis 0x18, 0 ; 24 9e: 02 c0 rjmp .+4 ; 0xa4 <__vector_9+0x12> a0: c0 98 cbi 0x18, 0 ; 24 a2: 01 c0 rjmp .+2 ; 0xa6 <__vector_9+0x14> else { PORTB |= (1 << PIN0);} a4: c0 9a sbi 0x18, 0 ; 24 a6: 0f 90 pop r0 a8: 0f be out 0x3f, r0 ; 63 aa: 0f 90 pop r0 ac: 1f 90 pop r1 ae: 18 95 reti 000000b0 : } void gen_off(void) { b0: 8f e7 ldi r24, 0x7F ; 127 b2: 82 bb out 0x12, r24 ; 18 PORTD = 127; fA1.bGen = 0; b4: 80 91 60 00 lds r24, 0x0060 b8: 8e 7f andi r24, 0xFE ; 254 ba: 80 93 60 00 sts 0x0060, r24 be: 08 95 ret 000000c0
: } int main (void) { c0: 8f ef ldi r24, 0xFF ; 255 c2: 87 bb out 0x17, r24 ; 23 //--- PORT B --- DDRB = 0xFF; // PortD Datenrichtung setzen PINB = 0; // Pullups off c4: 16 ba out 0x16, r1 ; 22 PORTB = 0xFF; c6: 88 bb out 0x18, r24 ; 24 //--- PORT D --- DDRD = 0xFF; // PortD Datenrichtung setzen c8: 81 bb out 0x11, r24 ; 17 PIND = 0; // Pullups off ca: 10 ba out 0x10, r1 ; 16 PORTD = 0xFF; cc: 82 bb out 0x12, r24 ; 18 //--- Timer 0 ---------------------------------------------------------------- TIMSK |= (1 << TOIE0); // Interupt für Timer0 einschalten ce: 89 b7 in r24, 0x39 ; 57 d0: 81 60 ori r24, 0x01 ; 1 d2: 89 bf out 0x39, r24 ; 57 TCCR0 |= (3< 000000ec <_exit>: ec: ff cf rjmp .-2 ; 0xec <_exit>