【OS】AUTOSAR架构下的Interrupt详解(下篇)
目录
3.代码分析
3.1中断配置代码
3.2 OS如何找到中断处理函数
3.3 Os_InitialEnableInterruptSources实现
3.4 Os_EnableInterruptSource
3.5 DisableAllInterrupts
3.5.1Os_IntSuspendCat1
3.5.2 Os_InterruptDisableAllEnter
3.5.3 Disable二类中断
3.5.4 Disable一类中断
3.6 EnableAllInterrupts
3.7 SuspendAllInterrupts
3.7.1 Os_IntSuspendCat1
3.7.2 Os_InterruptTakeSnapshot
3.7.3 Suspend操作的变量
3.7.4 Disable二类中断
3.7.5 SuspendAllInterrupts和DisableAllInterrupts的区别
3.7.5 Disable 一类中断
3.8 ResumeAllInterrupts
3.9 SuspendOSInterrupts
3.10 ResumeOSInterrupts
3.11. OS初始化中断优先级
4.集成中断向量表
4.1 链接文件集成中断向量表
4.2 BIV寄存器设置中断向量表的起始地址
4.3 使能OS中断
5.中断的软硬件配置及处理流程
5.1 CAN软件模块初始化中断配置
5.2 OS软件初始化SRC寄存器
5.3 CAN硬件加IR硬件模块完成中断触发
5.4 CAN软件模块加OS软件模块完成中断处理函数
6.总结
3.代码分析
3.1中断配置代码
中断配置生成代码基本和Davnici工具配置项一致,很多配置项和Task的配置类似,可以参考《【OS】AUTOSAR Os是如何启动第一个Task的》一文。这里着重了解中断处理