目录
- 0. FreeRTOS配置
- 1. void prvStartFirstTask( void )
- 2. void vPortSVCHandler( void )
- 3. void xPortPendSVHandler( void )
- 4. StackType_t *pxPortInitialiseStack( StackType_t *pxTopOfStack, TaskFunction_t pxCode, void *pvParameters )
- 5. void xPortSysTickHandler( void )
正文
0. FreeRTOS配置
- (1) FreeRTOS版本v8.1.2,以下介绍的函数与当前较新的10.1.1版本并无太多变化。
- (2) 未开启FPU
1. prvStartFirstTask()
__asm void prvStartFirstTask( void )
{
PRESERVE8 /* 堆栈的8字节对齐,参考8_DUI0473Marmasm_user_guide.pdf及AAPCS */
/* Use the NVIC offset register to locate the stack. */
ldr r0, =0xE000ED08 /* SCB->VTOR,向量表偏移地址寄存器*/
ldr r0, [r0] /* 从向量表偏移地址寄存器中取出起始地址(0x08000000) */
ldr r0, [r0] /* 取出STACK起始地址并初始化到MSP */
/* Set the msp back to the start of the stack. */
msr msp, r0

本文档详细介绍了FreeRTOS针对Cortex-M4处理器的一些核心函数,包括prvStartFirstTask、vPortSVCHandler、xPortPendSVHandler、pxPortInitialiseStack和xPortSysTickHandler的功能和作用,适用于FreeRTOS版本v8.1.2及后续更新版本。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



