首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于μC/OS-Ⅱ的线控转向FlexRay通信控制 04

基于μC/OS-Ⅱ的线控转向FlexRay通信控制 04

3.2通信任务设计
  以Freescale公司开发的针对该芯片的FlexRay通讯传输层和表示层的驱动程序为基础,进行应用层的程序设计,即编写通信任务程序,完成协议的运行过程。
  3.2.1 FlexRay通信启动任务
  按照上文介绍的FlexRay协议中定义的协议运行过程,当对FlexRay通信进行初始配置后,协议将进入就绪状态,之后发送启动节点命令等待协议状态由启动状态变为正常主动状态;在正常主动状态中,首先发送关键帧启动网络中的其他节点,发送完成后进入到节点唤醒状态,然后开启FlexRay通信的各种中断,包括:传输中断、接收中断、存储区中断以及定时器中断等,最后挂起任务等待检测到通信故障时进行唤醒;协议正常被动状态是在通信出现故障时,重新配置协议,进行协议的重启。需要注意的是用户必须在多任务系统启动以后再开启时钟节拍器,也就是在调用Osatart()之后,由任务优先级最高的那个任务开启RTI中断,否则系统容易死锁。程序流程图如图2所示。

返回列表