1 | Builds/main.elf: file format elf32-avr
|
2 |
|
3 | Sections:
|
4 | Idx Name Size VMA LMA File off Algn
|
5 | 0 .text 0000007a 00000000 00000000 00000074 2**1
|
6 | CONTENTS, ALLOC, LOAD, READONLY, CODE
|
7 | 1 .data 00000000 00800060 0000007a 000000ee 2**0
|
8 | CONTENTS, ALLOC, LOAD, DATA
|
9 | 2 .stab 0000054c 00000000 00000000 000000f0 2**2
|
10 | CONTENTS, READONLY, DEBUGGING
|
11 | 3 .stabstr 00000c3a 00000000 00000000 0000063c 2**0
|
12 | CONTENTS, READONLY, DEBUGGING
|
13 | 4 .comment 00000011 00000000 00000000 00001276 2**0
|
14 | CONTENTS, READONLY
|
15 | 5 .debug_aranges 00000020 00000000 00000000 00001288 2**3
|
16 | CONTENTS, READONLY, DEBUGGING
|
17 | 6 .debug_info 000000be 00000000 00000000 000012a8 2**0
|
18 | CONTENTS, READONLY, DEBUGGING
|
19 | 7 .debug_abbrev 00000014 00000000 00000000 00001366 2**0
|
20 | CONTENTS, READONLY, DEBUGGING
|
21 | 8 .debug_line 00000058 00000000 00000000 0000137a 2**0
|
22 | CONTENTS, READONLY, DEBUGGING
|
23 |
|
24 | Disassembly of section .text:
|
25 |
|
26 | 00000000 <__vectors>:
|
27 | 0: 12 c0 rjmp .+36 ; 0x26 <__ctors_end>
|
28 | 2: 19 c0 rjmp .+50 ; 0x36 <__bad_interrupt>
|
29 | 4: 18 c0 rjmp .+48 ; 0x36 <__bad_interrupt>
|
30 | 6: 17 c0 rjmp .+46 ; 0x36 <__bad_interrupt>
|
31 | 8: 16 c0 rjmp .+44 ; 0x36 <__bad_interrupt>
|
32 | a: 15 c0 rjmp .+42 ; 0x36 <__bad_interrupt>
|
33 | c: 14 c0 rjmp .+40 ; 0x36 <__bad_interrupt>
|
34 | e: 13 c0 rjmp .+38 ; 0x36 <__bad_interrupt>
|
35 | 10: 12 c0 rjmp .+36 ; 0x36 <__bad_interrupt>
|
36 | 12: 11 c0 rjmp .+34 ; 0x36 <__bad_interrupt>
|
37 | 14: 10 c0 rjmp .+32 ; 0x36 <__bad_interrupt>
|
38 | 16: 0f c0 rjmp .+30 ; 0x36 <__bad_interrupt>
|
39 | 18: 0e c0 rjmp .+28 ; 0x36 <__bad_interrupt>
|
40 | 1a: 0d c0 rjmp .+26 ; 0x36 <__bad_interrupt>
|
41 | 1c: 0c c0 rjmp .+24 ; 0x36 <__bad_interrupt>
|
42 | 1e: 0b c0 rjmp .+22 ; 0x36 <__bad_interrupt>
|
43 | 20: 0a c0 rjmp .+20 ; 0x36 <__bad_interrupt>
|
44 | 22: 09 c0 rjmp .+18 ; 0x36 <__bad_interrupt>
|
45 | 24: 08 c0 rjmp .+16 ; 0x36 <__bad_interrupt>
|
46 |
|
47 | 00000026 <__ctors_end>:
|
48 | 26: 11 24 eor r1, r1
|
49 | 28: 1f be out 0x3f, r1 ; 63
|
50 | 2a: cf e5 ldi r28, 0x5F ; 95
|
51 | 2c: d4 e0 ldi r29, 0x04 ; 4
|
52 | 2e: de bf out 0x3e, r29 ; 62
|
53 | 30: cd bf out 0x3d, r28 ; 61
|
54 | 32: 1e d0 rcall .+60 ; 0x70 <main>
|
55 | 34: 20 c0 rjmp .+64 ; 0x76 <_exit>
|
56 |
|
57 | 00000036 <__bad_interrupt>:
|
58 | 36: e4 cf rjmp .-56 ; 0x0 <__vectors>
|
59 |
|
60 | 00000038 <susi>:
|
61 | #include <avr/io.h>
|
62 | #include <util/delay.h>
|
63 |
|
64 |
|
65 | void susi(void){
|
66 | DDRD |= (1<<PD1)|(1<<PD2)|(1<<PD3)|(1<<PD4)|(1<<PD5)|(1<<PD6)|(1<<PD7);
|
67 | 38: 81 b3 in r24, 0x11 ; 17
|
68 | 3a: 8e 6f ori r24, 0xFE ; 254
|
69 | 3c: 81 bb out 0x11, r24 ; 17
|
70 | DDRC |= (1<<DDC2)|(1<<DDC3)|(1<<DDC4)|(1<<DDC5);
|
71 | 3e: 84 b3 in r24, 0x14 ; 20
|
72 | 40: 8c 63 ori r24, 0x3C ; 60
|
73 | 42: 84 bb out 0x14, r24 ; 20
|
74 | DDRB |= (1<<DDB1)|(1<<DDB2);
|
75 | 44: 87 b3 in r24, 0x17 ; 23
|
76 | 46: 86 60 ori r24, 0x06 ; 6
|
77 | 48: 87 bb out 0x17, r24 ; 23
|
78 | 4a: 08 95 ret
|
79 |
|
80 | 0000004c <test>:
|
81 | #else
|
82 | //round up by default
|
83 | __ticks_dc = (uint32_t)(ceil(fabs(__tmp)));
|
84 | #endif
|
85 |
|
86 | __builtin_avr_delay_cycles(__ticks_dc);
|
87 | 4c: 2f ef ldi r18, 0xFF ; 255
|
88 | 4e: 81 ee ldi r24, 0xE1 ; 225
|
89 | 50: 94 e0 ldi r25, 0x04 ; 4
|
90 | 52: 21 50 subi r18, 0x01 ; 1
|
91 | 54: 80 40 sbci r24, 0x00 ; 0
|
92 | 56: 90 40 sbci r25, 0x00 ; 0
|
93 | 58: e1 f7 brne .-8 ; 0x52 <test+0x6>
|
94 | 5a: 00 c0 rjmp .+0 ; 0x5c <test+0x10>
|
95 | 5c: 00 00 nop
|
96 |
|
97 | }
|
98 |
|
99 | void test(void){
|
100 | _delay_ms(200);
|
101 | PORTD |= (1<<PD7);
|
102 | 5e: 97 9a sbi 0x12, 7 ; 18
|
103 | 60: 8f e1 ldi r24, 0x1F ; 31
|
104 | 62: 9e e4 ldi r25, 0x4E ; 78
|
105 | 64: 01 97 sbiw r24, 0x01 ; 1
|
106 | 66: f1 f7 brne .-4 ; 0x64 <test+0x18>
|
107 | 68: 00 c0 rjmp .+0 ; 0x6a <test+0x1e>
|
108 | 6a: 00 00 nop
|
109 | _delay_ms(10);
|
110 | PORTD &= ~(1<<PD7);
|
111 | 6c: 97 98 cbi 0x12, 7 ; 18
|
112 | 6e: 08 95 ret
|
113 |
|
114 | 00000070 <main>:
|
115 | {
|
116 | //Wenn die folgende Zeile nicht auskommentiert ist, funktionieren die
|
117 | //Pins an PORTD
|
118 | //DDRD |= (1<<PD1)|(1<<PD2)|(1<<PD3)|(1<<PD4)|(1<<PD5)|(1<<PD6)|(1<<PD7);
|
119 |
|
120 | susi(); // <-- Dieser Aufruf funktioniert nicht
|
121 | 70: e3 df rcall .-58 ; 0x38 <susi>
|
122 | while(1)
|
123 | {
|
124 | test();
|
125 | 72: ec df rcall .-40 ; 0x4c <test>
|
126 | 74: fe cf rjmp .-4 ; 0x72 <main+0x2>
|
127 |
|
128 | 00000076 <_exit>:
|
129 | 76: f8 94 cli
|
130 |
|
131 | 00000078 <__stop_program>:
|
132 | 78: ff cf rjmp .-2 ; 0x78 <__stop_program>
|