📄 main.lst
字号:
1 .file "main.c"
2 .arch atmega16
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
17 .Ltext0:
18 .global uart_init
20 uart_init:
21 .LFB7:
22 .LM1:
23 /* prologue: frame size=0 */
24 /* prologue end (size=0) */
25 .LM2:
26 0000 8FE2 ldi r24,lo8(47)
27 0002 89B9 out 41-0x20,r24
28 .LM3:
29 0004 10BC out 64-0x20,__zero_reg__
30 .LM4:
31 0006 1BB8 out 43-0x20,__zero_reg__
32 .LM5:
33 0008 86E8 ldi r24,lo8(-122)
34 000a 80BD out 64-0x20,r24
35 .LM6:
36 000c 88E9 ldi r24,lo8(-104)
37 000e 8AB9 out 42-0x20,r24
38 /* epilogue: frame size=0 */
39 0010 0895 ret
40 /* epilogue end (size=1) */
41 /* function uart_init size 9 (8) */
42 .LFE7:
44 .global put_c
46 put_c:
47 .LFB8:
48 .LM7:
49 /* prologue: frame size=0 */
50 /* prologue end (size=0) */
51 .L3:
52 .LM8:
53 0012 5D9B sbis 43-0x20,5
54 0014 FECF rjmp .L3
55 .LM9:
56 0016 8CB9 out 44-0x20,r24
57 /* epilogue: frame size=0 */
58 0018 0895 ret
59 /* epilogue end (size=1) */
60 /* function put_c size 4 (3) */
61 .LFE8:
63 .global put_s
65 put_s:
66 .LFB9:
67 .LM10:
68 /* prologue: frame size=0 */
69 001a CF93 push r28
70 001c DF93 push r29
71 /* prologue end (size=2) */
72 001e EC01 movw r28,r24
73 .L12:
74 .LM11:
75 0020 8881 ld r24,Y
76 0022 8823 tst r24
77 0024 21F0 breq .L11
78 0026 8991 ld r24,Y+
79 0028 0E94 0000 call put_c
80 002c F9CF rjmp .L12
81 .L11:
82 .LM12:
83 002e 8DE0 ldi r24,lo8(13)
84 0030 0E94 0000 call put_c
85 .LM13:
86 0034 8AE0 ldi r24,lo8(10)
87 0036 0E94 0000 call put_c
88 /* epilogue: frame size=0 */
89 003a DF91 pop r29
90 003c CF91 pop r28
91 003e 0895 ret
92 /* epilogue end (size=3) */
93 /* function put_s size 19 (14) */
94 .LFE9:
96 .data
97 .LC0:
98 0000 D3C3 BBA7 .string "\323\303\273\247\312\344\310\3530#\326\270\301\356"
98 CAE4 C8EB
98 3023 D6B8
98 C1EE 00
99 .LC1:
100 000f D3C3 BBA7 .string "\323\303\273\247\312\344\310\3531#\326\270\301\356"
100 CAE4 C8EB
100 3123 D6B8
100 C1EE 00
101 .LC2:
102 001e D3C3 BBA7 .string "\323\303\273\247\312\344\310\3532#\326\270\301\356"
102 CAE4 C8EB
102 3223 D6B8
102 C1EE 00
103 .LC3:
104 002d D3C3 BBA7 .string "\323\303\273\247\312\344\310\353\265\304\326\270\301\356\316\336\320\247!"
104 CAE4 C8EB
104 B5C4 D6B8
104 C1EE CEDE
104 D0A7 2100
105 .text
106 .global __vector_11
108 __vector_11:
109 .LFB10:
110 .LM14:
111 /* prologue: frame size=0 */
112 0040 1F92 push __zero_reg__
113 0042 0F92 push __tmp_reg__
114 0044 0FB6 in __tmp_reg__,__SREG__
115 0046 0F92 push __tmp_reg__
116 0048 1124 clr __zero_reg__
117 004a 2F93 push r18
118 004c 3F93 push r19
119 004e 4F93 push r20
120 0050 5F93 push r21
121 0052 6F93 push r22
122 0054 7F93 push r23
123 0056 8F93 push r24
124 0058 9F93 push r25
125 005a AF93 push r26
126 005c BF93 push r27
127 005e EF93 push r30
128 0060 FF93 push r31
129 /* prologue end (size=17) */
130 .LM15:
131 0062 8CB1 in r24,44-0x20
132 0064 8093 0000 sts PC_COMMAND,r24
133 .LM16:
134 0068 8091 0000 lds r24,PC_COMMAND
135 006c 9927 clr r25
136 006e 8133 cpi r24,49
137 0070 9105 cpc r25,__zero_reg__
138 0072 69F0 breq .L16
139 .LM17:
140 0074 8233 cpi r24,50
141 0076 9105 cpc r25,__zero_reg__
142 0078 1CF4 brge .L19
143 007a C097 sbiw r24,48
144 007c 21F0 breq .L15
145 007e 0EC0 rjmp .L18
146 .L19:
147 0080 C297 sbiw r24,50
148 0082 49F0 breq .L17
149 0084 0BC0 rjmp .L18
150 .L15:
151 .LM18:
152 0086 D89A sbi 59-0x20,0
153 .LM19:
154 0088 80E0 ldi r24,lo8(.LC0)
155 008a 90E0 ldi r25,hi8(.LC0)
156 008c 09C0 rjmp .L21
157 .L16:
158 .LM20:
159 008e D898 cbi 59-0x20,0
160 .LM21:
161 0090 80E0 ldi r24,lo8(.LC1)
162 0092 90E0 ldi r25,hi8(.LC1)
163 0094 05C0 rjmp .L21
164 .L17:
165 .LM22:
166 0096 80E0 ldi r24,lo8(.LC2)
167 0098 90E0 ldi r25,hi8(.LC2)
168 009a 02C0 rjmp .L21
169 .L18:
170 .LM23:
171 009c 80E0 ldi r24,lo8(.LC3)
172 009e 90E0 ldi r25,hi8(.LC3)
173 .L21:
174 00a0 0E94 0000 call put_s
175 .LM24:
176 00a4 8091 0000 lds r24,RX_index
177 00a8 E82F mov r30,r24
178 00aa FF27 clr r31
179 00ac E050 subi r30,lo8(-(RX_BUFFER))
180 00ae F040 sbci r31,hi8(-(RX_BUFFER))
181 00b0 8091 0000 lds r24,PC_COMMAND
182 00b4 8083 st Z,r24
183 .LM25:
184 00b6 8091 0000 lds r24,RX_index
185 00ba 8F5F subi r24,lo8(-(1))
186 00bc 8093 0000 sts RX_index,r24
187 .LM26:
188 00c0 8091 0000 lds r24,RX_index
189 00c4 8031 cpi r24,lo8(16)
190 00c6 10F0 brlo .L13
191 00c8 1092 0000 sts RX_index,__zero_reg__
192 .L13:
193 /* epilogue: frame size=0 */
194 00cc FF91 pop r31
195 00ce EF91 pop r30
196 00d0 BF91 pop r27
197 00d2 AF91 pop r26
198 00d4 9F91 pop r25
199 00d6 8F91 pop r24
200 00d8 7F91 pop r23
201 00da 6F91 pop r22
202 00dc 5F91 pop r21
203 00de 4F91 pop r20
204 00e0 3F91 pop r19
205 00e2 2F91 pop r18
206 00e4 0F90 pop __tmp_reg__
207 00e6 0FBE out __SREG__,__tmp_reg__
208 00e8 0F90 pop __tmp_reg__
209 00ea 1F90 pop __zero_reg__
210 00ec 1895 reti
211 /* epilogue end (size=17) */
212 /* function __vector_11 size 89 (55) */
213 .LFE10:
215 .data
216 .LC4:
217 0041 4865 6C6C .string "Hello\243\241 \304\343\326\256\307\260\312\344\310\353\265\304\303\374\301\356\301\320\26
217 6FA3 A120
217 C4E3 D6AE
217 C7B0 CAE4
217 C8EB B5C4
218 .text
219 .global pro_coammand
221 pro_coammand:
222 .LFB11:
223 .LM27:
224 /* prologue: frame size=0 */
225 00ee CF93 push r28
226 /* prologue end (size=1) */
227 .LM28:
228 00f0 8091 0000 lds r24,RX_index
229 00f4 8A30 cpi r24,lo8(10)
230 00f6 40F1 brlo .L22
231 .LM29:
232 00f8 5798 cbi 42-0x20,7
233 .LM30:
234 00fa 8DE0 ldi r24,lo8(13)
235 00fc 0E94 0000 call put_c
236 .LM31:
237 0100 8AE0 ldi r24,lo8(10)
238 0102 0E94 0000 call put_c
239 .LM32:
240 0106 80E0 ldi r24,lo8(.LC4)
241 0108 90E0 ldi r25,hi8(.LC4)
242 010a 0E94 0000 call put_s
243 .LM33:
244 010e C0E0 ldi r28,lo8(0)
245 .L30:
246 0110 8091 0000 lds r24,RX_index
247 0114 C817 cp r28,r24
248 0116 48F4 brsh .L29
249 0118 EC2F mov r30,r28
250 011a FF27 clr r31
251 011c E050 subi r30,lo8(-(RX_BUFFER))
252 011e F040 sbci r31,hi8(-(RX_BUFFER))
253 0120 8081 ld r24,Z
254 0122 0E94 0000 call put_c
255 0126 CF5F subi r28,lo8(-(1))
256 0128 F3CF rjmp .L30
257 .L29:
258 .LM34:
259 012a 8DE0 ldi r24,lo8(13)
260 012c 0E94 0000 call put_c
261 .LM35:
262 0130 8AE0 ldi r24,lo8(10)
263 0132 0E94 0000 call put_c
264 .LM36:
265 0136 8DE0 ldi r24,lo8(13)
266 0138 0E94 0000 call put_c
267 .LM37:
268 013c 8AE0 ldi r24,lo8(10)
269 013e 0E94 0000 call put_c
270 .LM38:
271 0142 1092 0000 sts RX_index,__zero_reg__
272 .LM39:
273 0146 579A sbi 42-0x20,7
274 .L22:
275 /* epilogue: frame size=0 */
276 0148 CF91 pop r28
277 014a 0895 ret
278 /* epilogue end (size=2) */
279 /* function pro_coammand size 47 (44) */
280 .LFE11:
282 .global main
284 main:
285 .LFB12:
286 .LM40:
287 /* prologue: frame size=0 */
288 014c C0E0 ldi r28,lo8(__stack - 0)
289 014e D0E0 ldi r29,hi8(__stack - 0)
290 0150 DEBF out __SP_H__,r29
291 0152 CDBF out __SP_L__,r28
292 /* prologue end (size=4) */
293 .LM41:
294 0154 9FEF ldi r25,lo8(-1)
295 0156 9BBB out 59-0x20,r25
296 .LM42:
297 0158 98BB out 56-0x20,r25
298 .LM43:
299 015a 95BB out 53-0x20,r25
300 .LM44:
301 015c 82E0 ldi r24,lo8(2)
302 015e 81BB out 49-0x20,r24
303 .LM45:
304 0160 92BB out 50-0x20,r25
305 .LM46:
306 0162 D09A sbi 58-0x20,0
307 .LM47:
308 0164 0E94 0000 call uart_init
309 .LM48:
310 /* #APP */
311 0168 7894 sei
312 /* #NOAPP */
313 .L32:
314 .LM49:
315 016a FFCF rjmp .L32
316 /* epilogue: frame size=0 */
317 /* epilogue: noreturn */
318 /* epilogue end (size=0) */
319 /* function main size 17 (13) */
320 .LFE12:
322 .comm PC_COMMAND,1,1
323 .comm RX_BUFFER,16,1
324 .comm RX_index,1,1
325 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 main.c
*ABS*:0000003f __SREG__
*ABS*:0000003e __SP_H__
*ABS*:0000003d __SP_L__
*ABS*:00000000 __tmp_reg__
*ABS*:00000001 __zero_reg__
C:\DOCUME~1\Jevin\LOCALS~1\Temp/cco5aaaa.s:20 .text:00000000 uart_init
C:\DOCUME~1\Jevin\LOCALS~1\Temp/cco5aaaa.s:46 .text:00000012 put_c
C:\DOCUME~1\Jevin\LOCALS~1\Temp/cco5aaaa.s:65 .text:0000001a put_s
C:\DOCUME~1\Jevin\LOCALS~1\Temp/cco5aaaa.s:108 .text:00000040 __vector_11
*COM*:00000001 PC_COMMAND
*COM*:00000001 RX_index
*COM*:00000010 RX_BUFFER
C:\DOCUME~1\Jevin\LOCALS~1\Temp/cco5aaaa.s:221 .text:000000ee pro_coammand
C:\DOCUME~1\Jevin\LOCALS~1\Temp/cco5aaaa.s:284 .text:0000014c main
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__stack
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -