Advertisement

AUTOSAR源码分析之一

阅读量:

AUTOSAR CANIF接口分析:canif.c/can.c

  1. 初始化过程
    在启动事件(IRQ)下配置CAN总线中断,在启动事件(IRQ)下保存与恢复状态。
    通过以下路径完成初始化流程:
    StartupTask→ CanIf.init控制器→ Can.init控制器→ Can.init→ 子程序ISR_INSTALL_ISR2("DCAN1Level0", Can1_interrupt_handler, CAN1_LEVEL_0, 2, 0)→ 直接封装Can_interrupt_handler
    根据类型区分初始化逻辑,在此过程中使用一个unit8类型的变量存储实例编号,默认值从0开始。

数据传输:数据传输呈现出两种模式:一种是基于定时任务的消息队列处理;另一种是直接调用发送程序

某种基于SchM_BswService的任务注册机制触发后会依次执行全能通道主函数、主函数、内部定时消息传输时间、内部消息传输以及最终完成转换并达到可写状态

发送数据地址信息包含以下字段:uint32_t StdId(范围在0到0x7FF之间),uint32_t ExtId(范围在0到0x1FFFFFFF之间),是否可以用一个32位单元来编码?

数据接收过程:
采用中断方式处理的数据接收过程:
InterruptHandler通过process RxMsgObject完成

全部评论 (0)

还没有任何评论哟~