📄 main.lst
字号:
1 .file "main.c"
2 .arch atmega64
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 UartTaskTcb
19 .section .progmem.data,"a",@progbits
22 UartTaskTcb:
23 0000 0000 .word UartTaskStk+74
24 0002 0000 .word pm(UartTask)
25 0004 0000 .word UartTaskPid
26 0006 01 .byte 1
27 .global MainTaskTcb
30 MainTaskTcb:
31 0007 0000 .word MainTaskStk+74
32 0009 0000 .word pm(MainTask)
33 000b 0000 .word MainTaskPid
34 000d 00 .byte 0
35 .text
36 .global __vector_15
38 __vector_15:
39 .LFB2:
40 .LM1:
41 /* prologue: frame size=0 */
42 /* prologue: naked */
43 /* prologue end (size=0) */
44 .LM2:
45 0000 0E94 0000 call IntProlog
46 .LM3:
47 0004 0E94 0000 call AvrXTimerHandler
48 .LM4:
49 0008 0E94 0000 call Epilog
50 /* epilogue: frame size=0 */
51 /* epilogue: naked */
52 /* epilogue end (size=0) */
53 /* function __vector_15 size 6 (6) */
54 .LFE2:
56 .global __vector_9
58 __vector_9:
59 .LFB3:
60 .LM5:
61 /* prologue: frame size=0 */
62 /* prologue: naked */
63 /* prologue end (size=0) */
64 .LM6:
65 000c 0E94 0000 call IntProlog
66 .LM7:
67 0010 0E94 0000 call Epilog
68 /* epilogue: frame size=0 */
69 /* epilogue: naked */
70 /* epilogue end (size=0) */
71 /* function __vector_9 size 4 (4) */
72 .LFE3:
74 .global MainTask
76 MainTask:
77 .LFB4:
78 .LM8:
79 /* prologue: frame size=0 */
80 /* prologue end (size=0) */
81 .L4:
82 .LM9:
83 0014 68EE ldi r22,lo8(1000)
84 0016 73E0 ldi r23,hi8(1000)
85 0018 80E0 ldi r24,lo8(Timer1)
86 001a 90E0 ldi r25,hi8(Timer1)
87 001c 0E94 0000 call AvrXDelay
88 .LM10:
89 0020 88B3 in r24,56-0x20
90 0022 90E2 ldi r25,lo8(32)
91 0024 8927 eor r24,r25
92 0026 88BB out 56-0x20,r24
93 0028 F5CF rjmp .L4
94 /* epilogue: frame size=0 */
95 /* epilogue: noreturn */
96 /* epilogue end (size=0) */
97 /* function MainTask size 11 (11) */
98 .LFE4:
100 .global OsInit
102 OsInit:
103 .LFB5:
104 .LM11:
105 /* prologue: frame size=0 */
106 /* prologue end (size=0) */
107 .LM12:
108 002a 80E0 ldi r24,lo8(0)
109 002c 90E0 ldi r25,hi8(0)
110 002e 0E94 0000 call AvrXSetKernelStack
111 .LM13:
112 0032 80E2 ldi r24,lo8(32)
113 0034 85BF out 85-0x20,r24
114 .LM14:
115 0036 8CE0 ldi r24,lo8(12)
116 0038 83BF out 83-0x20,r24
117 .LM15:
118 003a 8DE7 ldi r24,lo8(125)
119 003c 81BF out 81-0x20,r24
120 .LM16:
121 003e 82E0 ldi r24,lo8(2)
122 0040 87BF out 87-0x20,r24
123 /* epilogue: frame size=0 */
124 0042 0895 ret
125 /* epilogue end (size=1) */
126 /* function OsInit size 13 (12) */
127 .LFE5:
129 .global SoftInit
131 SoftInit:
132 .LFB6:
133 .LM17:
134 /* prologue: frame size=0 */
135 /* prologue end (size=0) */
136 .LM18:
137 0044 BD9A sbi 55-0x20,5
138 .LM19:
139 0046 0E94 0000 call InitUart
140 .LM20:
141 004a 87B7 in r24,87-0x20
142 004c 8F77 andi r24,lo8(127)
143 004e 87BF out 87-0x20,r24
144 .LM21:
145 0050 8AE0 ldi r24,lo8(10)
146 0052 85BD out 69-0x20,r24
147 .LM22:
148 0054 84E6 ldi r24,lo8(100)
149 0056 83BD out 67-0x20,r24
150 .LM23:
151 0058 87B7 in r24,87-0x20
152 005a 8068 ori r24,lo8(-128)
153 005c 87BF out 87-0x20,r24
154 /* epilogue: frame size=0 */
155 005e 0895 ret
156 /* epilogue end (size=1) */
157 /* function SoftInit size 14 (13) */
158 .LFE6:
160 .global UartTask
162 UartTask:
163 .LFB7:
164 .LM24:
165 /* prologue: frame size=1 */
166 0060 CF93 push r28
167 0062 DF93 push r29
168 0064 CDB7 in r28,__SP_L__
169 0066 DEB7 in r29,__SP_H__
170 0068 2197 sbiw r28,1
171 006a 0FB6 in __tmp_reg__,__SREG__
172 006c F894 cli
173 006e DEBF out __SP_H__,r29
174 0070 0FBE out __SREG__,__tmp_reg__
175 0072 CDBF out __SP_L__,r28
176 /* prologue end (size=10) */
177 .LM25:
178 0074 06C0 rjmp .L17
179 .L13:
180 .LM26:
181 0076 61E0 ldi r22,lo8(1)
182 0078 70E0 ldi r23,hi8(1)
183 007a 80E0 ldi r24,lo8(Timer2)
184 007c 90E0 ldi r25,hi8(Timer2)
185 007e 0E94 0000 call AvrXDelay
186 .L17:
187 0082 CE01 movw r24,r28
188 0084 0196 adiw r24,1
189 0086 0E94 0000 call GetUart1Data
190 008a 8823 tst r24
191 008c A1F3 breq .L13
192 .LM27:
193 008e 61E0 ldi r22,lo8(1)
194 0090 70E0 ldi r23,hi8(1)
195 0092 CE01 movw r24,r28
196 0094 860F add r24,r22
197 0096 971F adc r25,r23
198 0098 0E94 0000 call SendUart1String
199 009c F2CF rjmp .L17
200 /* epilogue: frame size=1 */
201 /* epilogue: noreturn */
202 /* epilogue end (size=0) */
203 /* function UartTask size 31 (21) */
204 .LFE7:
206 .global main
208 main:
209 .LFB8:
210 .LM28:
211 /* prologue: frame size=0 */
212 009e C0E0 ldi r28,lo8(__stack - 0)
213 00a0 D0E0 ldi r29,hi8(__stack - 0)
214 00a2 DEBF out __SP_H__,r29
215 00a4 CDBF out __SP_L__,r28
216 /* prologue end (size=4) */
217 .LM29:
218 00a6 0E94 0000 call OsInit
219 .LM30:
220 00aa 0E94 0000 call SoftInit
221 .LM31:
222 00ae 80E0 ldi r24,lo8(MainTaskTcb)
223 00b0 90E0 ldi r25,hi8(MainTaskTcb)
224 00b2 0E94 0000 call AvrXRunTask
225 .LM32:
226 00b6 80E0 ldi r24,lo8(UartTaskTcb)
227 00b8 90E0 ldi r25,hi8(UartTaskTcb)
228 00ba 0E94 0000 call AvrXRunTask
229 .LM33:
230 00be 0E94 0000 call Epilog
231 .L19:
232 .LM34:
233 00c2 FFCF rjmp .L19
234 /* epilogue: frame size=0 */
235 /* epilogue: noreturn */
236 /* epilogue end (size=0) */
237 /* function main size 19 (15) */
238 .LFE8:
240 .comm MainTaskStk,75,1
241 .comm MainTaskPid,6,1
242 .comm UartTaskStk,75,1
243 .comm UartTaskPid,6,1
244 .comm Timer1,6,1
245 .comm Timer2,6,1
246 .Letext0:
DEFINED SYMBOLS
*ABS*:00000000 main.c
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:3 *ABS*:0000003f __SREG__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:4 *ABS*:0000003e __SP_H__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:5 *ABS*:0000003d __SP_L__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:6 *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:7 *ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:22 .progmem.data:00000000 UartTaskTcb
*COM*:0000004b UartTaskStk
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:162 .text:00000060 UartTask
*COM*:00000006 UartTaskPid
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:30 .progmem.data:00000007 MainTaskTcb
*COM*:0000004b MainTaskStk
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:76 .text:00000014 MainTask
*COM*:00000006 MainTaskPid
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:38 .text:00000000 __vector_15
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:58 .text:0000000c __vector_9
*COM*:00000006 Timer1
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:102 .text:0000002a OsInit
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:131 .text:00000044 SoftInit
*COM*:00000006 Timer2
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccE5aaaa.s:208 .text:0000009e main
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
IntProlog
AvrXTimerHandler
Epilog
AvrXDelay
AvrXSetKernelStack
InitUart
GetUart1Data
SendUart1String
__stack
AvrXRunTask
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -