Cortex-M7——FreeRTOS相关
小狼@http://blog.youkuaiyun.com/xiaolangyangyang

ARMv7-M架构
Thumb2指令集
操作模式/特权模式
内建的嵌套向量中断控制器(NVIC)
中断向量化硬件根据中断号快速查表
硬件自动现场保护和恢复
中断响应周期数固定
缩短中断嵌套的ISR延迟(咬尾中断、晚到中断)
中断优先级动态设置
不可屏蔽中断(NMI)
软件中断
系统异常
存储器保护单元(MPU)
睡眠模式/深度睡眠模式(WFI/WFE)
双堆栈指针(MSP/PSP)
连接寄存器(LR)
指令总线+数据总线+系统总线
SVC/PendSV/SysTick
咬尾中断:低优先级中断pop前高优先级中断触发,直接运行高优先级中断后再pop
晚到中断:低优先级中断push后高优先级中断触发,直接运行高优先级中断再运行低优先级中断
freertos任务调度时机:
1、主动调度;
2、中断中调度;
3、systick中断中调度;
任务调度在PendSV中断
Cortex-M7下的FreeRTOS:中断、任务调度与系统移植详解

本文深入探讨了Cortex-M7架构下FreeRTOS的中断管理,包括NVIC的特性、任务调度时机(主动、中断中、Systick中断)、系统栈与任务栈的配置、系统移植关键步骤,以及延时处理和中断中使用fromISR API的实践。还涉及了如何在SVC和PendSV上下文中执行任务切换,确保中断效率和系统稳定性。
最低0.47元/天 解锁文章
919

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



