⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 port.lst

📁 Sistema operacional de tempo real
💻 LST
📖 第 1 页 / 共 3 页
字号:
 170              		.code 16
 171              		.thumb_func
 173              	vPortEndScheduler:
 174              	.LFB4:
 175              		.loc 1 186 0
 169:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** /*-----------------------------------------------------------*/
 170:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 171:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** portBASE_TYPE xPortStartScheduler( void )
 172:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** {
 173:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* Start the timer that generates the tick ISR.  Interrupts are disabled
 174:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	here already. */
 175:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	prvSetupTimerInterrupt();
 176:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 177:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* Start the first task. */
 178:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	vPortISRStartFirstTask();	
 179:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 180:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* Should not get here! */
 181:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	return 0;
 182:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** }
 183:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** /*-----------------------------------------------------------*/
 184:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 185:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** void vPortEndScheduler( void )
 186:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** {
 176              	loc 1 189 0
 177              		@ sp needed for prologue
 187:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* It is unlikely that the ARM port will require this function as there
 188:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	is nothing to return to.  */
 189:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** }
 178              	x	lr
 179              	.LFE4:
 181              		.align	2
 182              		.global	xPortStartScheduler
 183 00a6 0000     		.code 16
 184              		.thumb_func
 186              	xPortStartScheduler:
 187              	.LFB3:
 188              		.loc 1 172 0
 189              		push	{lr}
 190              	.LCFI0:
 191 00a8 00B5     	.LBB4:
 192              	.LBB5:
 193              		.loc 1 201 0
 194              		ldr	r3, .L9
 190:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** /*-----------------------------------------------------------*/
 191:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 192:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** /*
 193:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c ****  * Setup the timer 0 to generate the tick interrupts at the required frequency.
 194:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c ****  */
 195:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** static void prvSetupTimerInterrupt( void )
 196:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** {
 197:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** unsigned portLONG ulCompareMatch;
 198:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 199:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* A 1ms tick does not require the use of the timer prescale.  This is
 200:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	defaulted to zero but can be used if necessary. */
 201:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	T0_PR = portPRESCALE_VALUE;
 195              	r2, [r3]
 196 00aa 104B     		.loc 1 213 0
 197 00ac 0022     		ldr	r2, .L9+4
 198 00ae 1A60     		add	r3, r3, #12
 202:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 203:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* Calculate the match value required for our wanted tick rate. */
 204:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	ulCompareMatch = configCPU_CLOCK_HZ / configTICK_RATE_HZ;
 205:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 206:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* Protect against divide by zero.  Using an if() statement still results
 207:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	in a warning - hence the #if. */
 208:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	#if portPRESCALE_VALUE != 0
 209:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	{
 210:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 		ulCompareMatch /= ( portPRESCALE_VALUE + 1 );
 211:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	}
 212:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	#endif
 213:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	T0_MR0 = ulCompareMatch;
 199              		r2, [r3]
 200 00b0 0F4A     		.loc 1 216 0
 201 00b2 0C33     		mov	r2, #3
 202 00b4 1A60     		sub	r3, r3, #4
 214:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 215:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* Generate tick with timer 0 compare match. */
 216:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	T0_MCR = portRESET_COUNT_ON_MATCH | portINTERRUPT_ON_MATCH;
 203              		r2, [r3]
 204 00b6 0322     		.loc 1 219 0
 205 00b8 043B     		ldr	r2, .L9+8
 206 00ba 1A60     		ldr	r3, [r2]
 217:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 218:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* Setup the VIC for the timer. */
 219:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	VICIntSelect &= ~( portTIMER_VIC_CHANNEL_BIT );
 207              		r1, #16
 208 00bc 0D4A     		bic	r3, r3, r1
 209 00be 1368     		str	r3, [r2]
 210 00c0 1021     		.loc 1 220 0
 211 00c2 8B43     		add	r2, r2, #4
 212 00c4 1360     		ldr	r3, [r2]
 220:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	VICIntEnable |= portTIMER_VIC_CHANNEL_BIT;
 213              	3, r3, r1
 214 00c6 0432     		str	r3, [r2]
 215 00c8 1368     		.loc 1 227 0
 216 00ca 0B43     		ldr	r2, .L9+12
 217 00cc 1360     		ldr	r3, .L9+16
 221:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	
 222:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* The ISR installed depends on whether the preemptive or cooperative
 223:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	scheduler is being used. */
 224:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	#if configUSE_PREEMPTION == 1
 225:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	{
 226:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 		extern void ( vPreemptiveTick )( void );
 227:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 		VICVectAddr0 = ( portLONG ) vPreemptiveTick;
 218              	r2, [r3]
 219 00ce 0A4A     		.loc 1 236 0
 220 00d0 0A4B     		ldr	r3, .L9+20
 221 00d2 1A60     		mov	r2, #36
 228:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	}
 229:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	#else
 230:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	{
 231:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 		extern void ( vNonPreemptiveTick )( void );
 232:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 		VICVectAddr0 = ( portLONG ) vNonPreemptiveTick;
 233:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	}
 234:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	#endif
 235:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 236:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	VICVectCntl0 = portTIMER_VIC_CHANNEL | portTIMER_VIC_ENABLE;
 222              		r2, [r3]
 223 00d4 0A4B     		.loc 1 240 0
 224 00d6 2422     		ldr	r3, .L9+24
 225 00d8 1A60     		mov	r2, #1
 237:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 
 238:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	/* Start the timer - interrupts are disabled when this function is called
 239:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	so it is okay to do this here. */
 240:FreeRTOS/Source/portable/GCC/ARM7_LPC2000/port.c **** 	T0_TCR = portENABLE_TIMER;
 226              		r2, [r3]
 227 00da 0A4B     	.LBE5:
 228 00dc 0122     	.LBE4:
 229 00de 1A60     		.loc 1 178 0
 230              		bl	vPortISRStartFirstTask
 231              		.loc 1 182 0
 232              		mov	r0, #0
 233 00e0 FFF7FEFF 		@ sp needed for prologue
 234              		pop	{r1}
 235 00e4 0020     		bx	r1
 236              	.L10:
 237 00e6 02BC     		.align	2
 238 00e8 0847     	.L9:
 239              		.word	-536854516
 240 00ea 0000     		.word	48000
 241              		.word	-4084
 242 00ec 0C4000E0 		.word	vPreemptiveTick
 243 00f0 80BB0000 		.word	-3840
 244 00f4 0CF0FFFF 		.word	-3584
 245 00f8 00000000 		.word	-536854524
 246 00fc 00F1FFFF 	.LFE3:
 248 0104 044000E0 		.section	.debug_frame,"",%progbits
 249              	.Lframe0:
 250              		.4byte	.LECIE0-.LSCIE0
 298              	.LLST1:
DEFINED SYMBOLS
                            *ABS*:00000000 port.c
D:\DOCUME~1\PROJET~1\CONFIG~1\Temp/ccSybaaa.s:1      .text:00000000 $t
D:\DOCUME~1\PROJET~1\CONFIG~1\Temp/ccSybaaa.s:16     .text:00000000 pxPortInitialiseStack
D:\DOCUME~1\PROJET~1\CONFIG~1\Temp/ccSybaaa.s:154    .text:00000070 $d
D:\DOCUME~1\PROJET~1\CONFIG~1\Temp/ccSybaaa.s:174    .text:000000a4 vPortEndScheduler
D:\DOCUME~1\PROJET~1\CONFIG~1\Temp/ccSybaaa.s:171    .text:000000a4 $t
D:\DOCUME~1\PROJET~1\CONFIG~1\Temp/ccSybaaa.s:188    .text:000000a8 xPortStartScheduler
D:\DOCUME~1\PROJET~1\CONFIG~1\Temp/ccSybaaa.s:242    .text:000000ec $d

UNDEFINED SYMBOLS
vPortISRStartFirstTask
vPreemptiveTick

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -