📄 12ul_demo.lst
字号:
1 .file "12ul_Demo.c"
2 .arch atmega8
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
11 .text
12 .Ltext0:
93 .global LedPlayTcb
94 .section .progmem.data,"a",@progbits
97 LedPlayTcb:
98 0000 0000 .word LedPlayStk+44
99 0002 0000 .word pm(LedPlay)
100 0004 0000 .word LedPlayPid
101 0006 05 .byte 5
102 .text
104 .global __vector_9
106 __vector_9:
1:12ul_Demo.c **** /****************************************************************************
2:12ul_Demo.c **** //------------------ All color 12ul demo -----------------------
3:12ul_Demo.c **** //FileName : 12ul_Demo.c
4:12ul_Demo.c **** //Function : 12 u_lamp All color(RGB) play demo
5:12ul_Demo.c **** //Created by : Zhoushengzhi
6:12ul_Demo.c **** //Created date : 13/4/2007
7:12ul_Demo.c **** //MCU : ATmega8
8:12ul_Demo.c **** //frequency : 8MHz
9:12ul_Demo.c **** //Tool : GCC_AVR20050124
10:12ul_Demo.c **** //CopyRight (c) 2006 Zhoushengzhi
11:12ul_Demo.c **** //E-mail : zhounanxu@163.com
12:12ul_Demo.c **** ****************************************************************************/
13:12ul_Demo.c **** #include <stdio.h>
14:12ul_Demo.c **** #include <string.h>
15:12ul_Demo.c **** #include <avr/io.h>
16:12ul_Demo.c **** #include <avr/pgmspace.h>
17:12ul_Demo.c **** #include <avrx/avrx.h>
18:12ul_Demo.c ****
19:12ul_Demo.c **** #include "Hardware.h"
20:12ul_Demo.c **** #include "12ul_Demo.h"
21:12ul_Demo.c ****
22:12ul_Demo.c **** //----------------------------------------------------------------
23:12ul_Demo.c **** AVRX_SIGINT(SIG_OVERFLOW0)
24:12ul_Demo.c **** {
108 .LM1:
109 /* prologue: frame size=0 */
110 /* prologue: naked */
111 /* prologue end (size=0) */
25:12ul_Demo.c **** IntProlog(); //switch to kernel stack/context.
113 .LM2:
114 0000 00D0 rcall IntProlog
26:12ul_Demo.c **** TCNT0 = TCNT0_INIT; //Reset timer overflow count.
116 .LM3:
117 0002 83EE ldi r24,lo8(-29)
118 0004 82BF out 82-0x20,r24
27:12ul_Demo.c **** AvrXTimerHandler(); //Call Time queue manager
120 .LM4:
121 0006 00D0 rcall AvrXTimerHandler
28:12ul_Demo.c **** Epilog(); //Return to tasks.
123 .LM5:
124 0008 00D0 rcall Epilog
125 /* epilogue: frame size=0 */
126 /* epilogue: naked */
127 /* epilogue end (size=0) */
128 /* function __vector_9 size 5 (5) */
130 .Lscope0:
132 .global LedPlay
134 LedPlay:
29:12ul_Demo.c **** }
30:12ul_Demo.c ****
31:12ul_Demo.c **** AVRX_GCC_TASKDEF(LedPlay, 10, 5)
32:12ul_Demo.c **** {
136 .LM6:
137 /* prologue: frame size=0 */
138 /* prologue: naked */
139 /* prologue end (size=0) */
140 .L3:
33:12ul_Demo.c **** //AvrXDelay(&delay, 1);//1ms delay, Delay_MaxVal = 6.5s.
34:12ul_Demo.c **** BYTE bi;
35:12ul_Demo.c ****
36:12ul_Demo.c **** while(1)
37:12ul_Demo.c **** {
38:12ul_Demo.c **** Play_24ColorStaAsh(250);
142 .LM7:
143 000a 8AEF ldi r24,lo8(250)
144 000c 90E0 ldi r25,hi8(250)
145 000e 00D0 rcall Play_24ColorStaAsh
146 0010 CEE0 ldi r28,lo8(14)
147 .L8:
39:12ul_Demo.c **** for(bi = 0; bi < 15; bi++)
40:12ul_Demo.c **** Play_24ColorRunAsh_L_to_R(PLAY_24ASHSPEED);
149 .LM8:
150 0012 83E0 ldi r24,lo8(3)
151 0014 90E0 ldi r25,hi8(3)
152 0016 00D0 rcall Play_24ColorRunAsh_L_to_R
154 .LM9:
155 0018 C150 subi r28,lo8(-(-1))
156 001a C7FF sbrs r28,7
157 001c FACF rjmp .L8
41:12ul_Demo.c **** Play_Jump_All(PLAY_DELAY1MS);
159 .LM10:
160 001e 88EE ldi r24,lo8(1000)
161 0020 93E0 ldi r25,hi8(1000)
162 0022 00D0 rcall Play_Jump_All
42:12ul_Demo.c **** Play_CloseOpenMoveUpt(PLAY_MOVESPEED);
164 .LM11:
165 0024 8AEF ldi r24,lo8(250)
166 0026 90E0 ldi r25,hi8(250)
167 0028 00D0 rcall Play_CloseOpenMoveUpt
43:12ul_Demo.c **** for(bi = 0; bi < 2; bi++)
44:12ul_Demo.c **** Play_Gradual(PLAY_GRADSPEED);
169 .LM12:
170 002a 81E0 ldi r24,lo8(1)
171 002c 00D0 rcall Play_Gradual
172 002e 81E0 ldi r24,lo8(1)
173 0030 00D0 rcall Play_Gradual
175 .LM13:
176 0032 EBCF rjmp .L3
177 /* epilogue: frame size=0 */
178 /* epilogue: naked */
179 /* epilogue end (size=0) */
180 /* function LedPlay size 21 (21) */
185 .Lscope1:
187 .global main
189 main:
45:12ul_Demo.c **** }
46:12ul_Demo.c **** }
47:12ul_Demo.c ****
48:12ul_Demo.c **** int main(void)
49:12ul_Demo.c **** {
191 .LM14:
192 /* prologue: frame size=0 */
193 0034 C0E0 ldi r28,lo8(__stack - 0)
194 0036 D0E0 ldi r29,hi8(__stack - 0)
195 0038 DEBF out __SP_H__,r29
196 003a CDBF out __SP_L__,r28
197 /* prologue end (size=4) */
50:12ul_Demo.c **** AvrXSetKernelStack(0);//Set Avrx stack to "0",or,if NULL then to current stack.
199 .LM15:
200 003c 80E0 ldi r24,lo8(0)
201 003e 90E0 ldi r25,hi8(0)
202 0040 00D0 rcall AvrXSetKernelStack
51:12ul_Demo.c ****
52:12ul_Demo.c **** TCCR0 = T0MC8_CK256; // Set up Timer0 for CLK/256 rate
204 .LM16:
205 0042 84E0 ldi r24,lo8(4)
206 0044 83BF out 83-0x20,r24
53:12ul_Demo.c **** TCNT0 = TCNT0_INIT;
208 .LM17:
209 0046 83EE ldi r24,lo8(-29)
210 0048 82BF out 82-0x20,r24
54:12ul_Demo.c **** TIMSK |= _BV(TOIE0); // Enable Timer0 overflow interrupt
212 .LM18:
213 004a 89B7 in r24,89-0x20
214 004c 8160 ori r24,lo8(1)
215 004e 89BF out 89-0x20,r24
55:12ul_Demo.c ****
56:12ul_Demo.c **** DDRD |= _BV(PD4) | _BV(PD3) | _BV(PD1) |_BV(PD0);
217 .LM19:
218 0050 81B3 in r24,49-0x20
219 0052 8B61 ori r24,lo8(27)
220 0054 81BB out 49-0x20,r24
57:12ul_Demo.c **** Set_Oe();
222 .LM20:
223 0056 909A sbi 50-0x20,0
58:12ul_Demo.c ****
59:12ul_Demo.c **** AvrXRunTask(TCB(LedPlay));
225 .LM21:
226 0058 80E0 ldi r24,lo8(LedPlayTcb)
227 005a 90E0 ldi r25,hi8(LedPlayTcb)
228 005c 00D0 rcall AvrXRunTask
60:12ul_Demo.c ****
61:12ul_Demo.c **** Epilog(); // Switch from AvrX Stack to first task
230 .LM22:
231 005e 00D0 rcall Epilog
62:12ul_Demo.c ****
63:12ul_Demo.c **** return 1;
64:12ul_Demo.c **** }
233 .LM23:
234 0060 81E0 ldi r24,lo8(1)
235 0062 90E0 ldi r25,hi8(1)
236 /* epilogue: frame size=0 */
237 0064 00C0 rjmp exit
238 /* epilogue end (size=1) */
239 /* function main size 25 (20) */
241 .Lscope2:
242 .comm LedPlayStk,45,1
243 .comm LedPlayPid,6,1
247 .text
249 Letext:
250 /* File "12ul_Demo.c": code 51 = 0x0033 ( 46), prologues 4, epilogues 1 */
DEFINED SYMBOLS
*ABS*:00000000 12ul_Demo.c
*ABS*:0000003f __SREG__
*ABS*:0000003e __SP_H__
*ABS*:0000003d __SP_L__
*ABS*:00000000 __tmp_reg__
*ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccuibaaa.s:97 .progmem.data:00000000 LedPlayTcb
*COM*:0000002d LedPlayStk
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccuibaaa.s:134 .text:0000000a LedPlay
*COM*:00000006 LedPlayPid
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccuibaaa.s:106 .text:00000000 __vector_9
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccuibaaa.s:189 .text:00000034 main
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccuibaaa.s:249 .text:00000066 Letext
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
IntProlog
AvrXTimerHandler
Epilog
Play_24ColorStaAsh
Play_24ColorRunAsh_L_to_R
Play_Jump_All
Play_CloseOpenMoveUpt
Play_Gradual
__stack
AvrXSetKernelStack
AvrXRunTask
exit
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -