567 |
kaklik |
1 |
|
|
|
2 |
blik.elf: file format elf32-avr
|
|
|
3 |
|
|
|
4 |
Sections:
|
|
|
5 |
Idx Name Size VMA LMA File off Algn
|
|
|
6 |
|
|
|
7 |
CONTENTS, ALLOC, LOAD, READONLY, CODE
|
|
|
8 |
1 .stab 0000036c 00000000 00000000 00000128 2**2
|
|
|
9 |
CONTENTS, READONLY, DEBUGGING
|
|
|
10 |
2 .stabstr 00000084 00000000 00000000 00000494 2**0
|
|
|
11 |
CONTENTS, READONLY, DEBUGGING
|
|
|
12 |
3 .debug_aranges 00000020 00000000 00000000 00000518 2**0
|
|
|
13 |
CONTENTS, READONLY, DEBUGGING
|
|
|
14 |
4 .debug_pubnames 00000028 00000000 00000000 00000538 2**0
|
|
|
15 |
CONTENTS, READONLY, DEBUGGING
|
|
|
16 |
5 .debug_info 0000013d 00000000 00000000 00000560 2**0
|
|
|
17 |
CONTENTS, READONLY, DEBUGGING
|
|
|
18 |
6 .debug_abbrev 000000d3 00000000 00000000 0000069d 2**0
|
|
|
19 |
CONTENTS, READONLY, DEBUGGING
|
|
|
20 |
7 .debug_line 000000fc 00000000 00000000 00000770 2**0
|
|
|
21 |
CONTENTS, READONLY, DEBUGGING
|
|
|
22 |
8 .debug_frame 00000030 00000000 00000000 0000086c 2**0
|
|
|
23 |
CONTENTS, READONLY, DEBUGGING
|
|
|
24 |
9 .debug_str 000000dd 00000000 00000000 0000089c 2**0
|
|
|
25 |
CONTENTS, READONLY, DEBUGGING
|
|
|
26 |
10 .debug_loc 00000028 00000000 00000000 00000979 2**0
|
|
|
27 |
CONTENTS, READONLY, DEBUGGING
|
|
|
28 |
Disassembly of section .text:
|
|
|
29 |
|
|
|
30 |
00000000 <__vectors>:
|
|
|
31 |
0: 0c 94 34 00 jmp 0x68 ; 0x68 <__ctors_end>
|
|
|
32 |
4: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
33 |
8: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
34 |
c: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
35 |
10: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
36 |
14: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
37 |
18: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
38 |
1c: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
39 |
20: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
40 |
24: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
41 |
28: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
42 |
2c: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
43 |
30: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
44 |
34: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
45 |
38: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
46 |
3c: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
47 |
40: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
48 |
44: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
49 |
48: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
50 |
4c: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
51 |
50: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
52 |
54: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
53 |
58: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
54 |
5c: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
55 |
60: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
56 |
64: 0c 94 4f 00 jmp 0x9e ; 0x9e <__bad_interrupt>
|
|
|
57 |
|
|
|
58 |
00000068 <__ctors_end>:
|
|
|
59 |
68: 11 24 eor r1, r1
|
|
|
60 |
6a: 1f be out 0x3f, r1 ; 63
|
|
|
61 |
6c: cf ef ldi r28, 0xFF ; 255
|
|
|
62 |
6e: d4 e0 ldi r29, 0x04 ; 4
|
|
|
63 |
70: de bf out 0x3e, r29 ; 62
|
|
|
64 |
72: cd bf out 0x3d, r28 ; 61
|
|
|
65 |
|
|
|
66 |
00000074 <__do_copy_data>:
|
|
|
67 |
74: 11 e0 ldi r17, 0x01 ; 1
|
|
|
68 |
76: a0 e0 ldi r26, 0x00 ; 0
|
|
|
69 |
78: b1 e0 ldi r27, 0x01 ; 1
|
|
|
70 |
7a: e4 ed ldi r30, 0xD4 ; 212
|
|
|
71 |
7c: f0 e0 ldi r31, 0x00 ; 0
|
|
|
72 |
7e: 02 c0 rjmp .+4 ; 0x84 <.do_copy_data_start>
|
|
|
73 |
|
|
|
74 |
00000080 <.do_copy_data_loop>:
|
|
|
75 |
80: 05 90 lpm r0, Z+
|
|
|
76 |
82: 0d 92 st X+, r0
|
|
|
77 |
|
|
|
78 |
00000084 <.do_copy_data_start>:
|
|
|
79 |
84: a0 30 cpi r26, 0x00 ; 0
|
|
|
80 |
86: b1 07 cpc r27, r17
|
|
|
81 |
88: d9 f7 brne .-10 ; 0x80 <.do_copy_data_loop>
|
|
|
82 |
|
|
|
83 |
0000008a <__do_clear_bss>:
|
|
|
84 |
8a: 11 e0 ldi r17, 0x01 ; 1
|
|
|
85 |
8c: a0 e0 ldi r26, 0x00 ; 0
|
|
|
86 |
8e: b1 e0 ldi r27, 0x01 ; 1
|
|
|
87 |
90: 01 c0 rjmp .+2 ; 0x94 <.do_clear_bss_start>
|
|
|
88 |
|
|
|
89 |
00000092 <.do_clear_bss_loop>:
|
|
|
90 |
92: 1d 92 st X+, r1
|
|
|
91 |
|
|
|
92 |
00000094 <.do_clear_bss_start>:
|
|
|
93 |
94: a0 30 cpi r26, 0x00 ; 0
|
|
|
94 |
96: b1 07 cpc r27, r17
|
|
|
95 |
98: e1 f7 brne .-8 ; 0x92 <.do_clear_bss_loop>
|
|
|
96 |
9a: 0c 94 5e 00 jmp 0xbc ; 0xbc <main>
|
|
|
97 |
|
|
|
98 |
0000009e <__bad_interrupt>:
|
|
|
99 |
9e: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
|
|
|
100 |
|
|
|
101 |
000000a2 <delay_ms>:
|
|
|
102 |
|
|
|
103 |
|
|
|
104 |
void delay_ms(unsigned int ms)
|
|
|
105 |
/* delay for a minimum of <ms> */
|
|
|
106 |
{
|
|
|
107 |
a2: 9c 01 movw r18, r24
|
|
|
108 |
a4: e0 e8 ldi r30, 0x80 ; 128
|
|
|
109 |
a6: f7 e0 ldi r31, 0x07 ; 7
|
|
|
110 |
a8: 05 c0 rjmp .+10 ; 0xb4 <delay_ms+0x12>
|
|
|
111 |
*/
|
|
|
112 |
void
|
|
|
113 |
_delay_loop_2(uint16_t __count)
|
|
|
114 |
{
|
|
|
115 |
__asm__ volatile (
|
|
|
116 |
aa: cf 01 movw r24, r30
|
|
|
117 |
ac: 01 97 sbiw r24, 0x01 ; 1
|
|
|
118 |
ae: f1 f7 brne .-4 ; 0xac <delay_ms+0xa>
|
|
|
119 |
// we use a calibrated macro. This is more
|
|
|
120 |
// accurate and not so much compiler dependent
|
|
|
121 |
// as self made code.
|
|
|
122 |
while(ms){
|
|
|
123 |
_delay_ms(0.96);
|
|
|
124 |
ms--;
|
|
|
125 |
b0: 21 50 subi r18, 0x01 ; 1
|
|
|
126 |
b2: 30 40 sbci r19, 0x00 ; 0
|
|
|
127 |
b4: 21 15 cp r18, r1
|
|
|
128 |
b6: 31 05 cpc r19, r1
|
|
|
129 |
b8: c1 f7 brne .-16 ; 0xaa <delay_ms+0x8>
|
|
|
130 |
ba: 08 95 ret
|
|
|
131 |
|
|
|
132 |
000000bc <main>:
|
|
|
133 |
}
|
|
|
134 |
}
|
|
|
135 |
|
|
|
136 |
|
|
|
137 |
/* new style */
|
|
|
138 |
int main(void)
|
|
|
139 |
{
|
|
|
140 |
bc: 3d 9a sbi 0x07, 5 ; 7
|
|
|
141 |
/* INITIALIZE */
|
|
|
142 |
/* enable PC5 as output */
|
|
|
143 |
DDRC|= (1<<DDC5);
|
|
|
144 |
|
|
|
145 |
/* PC5 is 5 (see file include/avr/iom8.h) and 1<<PC5 is 00100000
|
|
|
146 |
* This can also be written as _BV(PC5)*/
|
|
|
147 |
while (1) {
|
|
|
148 |
/* led on, pin=0 */
|
|
|
149 |
PORTC &= ~(1<<PC5);
|
|
|
150 |
be: 45 98 cbi 0x08, 5 ; 8
|
|
|
151 |
delay_ms(50);
|
|
|
152 |
c0: 82 e3 ldi r24, 0x32 ; 50
|
|
|
153 |
c2: 90 e0 ldi r25, 0x00 ; 0
|
|
|
154 |
c4: 0e 94 51 00 call 0xa2 ; 0xa2 <delay_ms>
|
|
|
155 |
/* set output to 5V, LED off */
|
|
|
156 |
PORTC|= (1<<PC5);
|
|
|
157 |
c8: 45 9a sbi 0x08, 5 ; 8
|
|
|
158 |
delay_ms(50);
|
|
|
159 |
ca: 82 e3 ldi r24, 0x32 ; 50
|
|
|
160 |
cc: 90 e0 ldi r25, 0x00 ; 0
|
|
|
161 |
ce: 0e 94 51 00 call 0xa2 ; 0xa2 <delay_ms>
|
|
|
162 |
d2: f5 cf rjmp .-22 ; 0xbe <main+0x2>
|