新闻中心

EEPW首页>手机与无线通信>设计应用> 基于ARM7的MVB_CAN网关设计

基于ARM7的MVB_CAN网关设计

作者: 时间:2011-03-25 来源:网络 收藏

本系统的软件模块主要有CAN模块、MVB控制模块、总任务处理模块、以及数据缓冲模块。其中CAN控制模块主要负责从CAN数据包中解析
出完整的CAN协议报文,并存入数据缓冲区2,同时将数据缓冲区A中的CAN数据封装成完整的CAN协议报文后发送到CAN总线上;MVB控制模块主要负责从MVB数据包中解析出完整的MVB协议报文,并将其存人数据缓冲区1,同时再将数据缓冲NB中的MVB数据封装成完整的MVB协议报文后发送到MVB上;总任务处理模块主要起综合调度和监控作用,同时,它还用于整个传输过程中的中断响应;缓冲区模块主要负责将CAN侧和MVB侧接收的数据存储到缓冲区中。
程序的整体思路是当CAN侧数据发往MVB侧时,首先使CAN侧检测到有数据传过来,总处理模块通过调用CAN模块处理函数来接收数据,并通过对CAN帧的解码来获取CAN标志符,然后调用应用层转换表(inbus-to-outbus)以查询出相应的MVB端口的相关变量,接着再把相
应的数据发送到数据缓冲区2中,最后由总任务处理模块通知MVB控制模块将缓冲区2中数据取走,并对数据进行MVB帧格式的编码,再发送到
MVB总线上后释放缓冲区。
同样,当MVB侧数据发往CAN侧时,首先将数据发送到MVB上,然后由总任务处理模块检测MVB上是否有数据传输,并通知MVB控制模块接收数据,同时对信息进行解码分析,从中获取端口相关变量,依据端口相关变量查询应用层转换表(out-to-inbus),找出对应CAN标识符,同时将数据发送到数据缓冲区1。此时,总任务处理模块可通过CAN控制模块从缓冲区1中提取数据并进行完整的CAN报文封装,再发送到CAN总线上并释放缓冲区A。其中,MVB侧发往CAN侧的主程序流程如图6所示。

本文引用地址://m.amcfsurvey.com/article/156540.htm

e.JPG



5 结束语
本文主要介绍了MVB-CAN的硬件和软件实现方法。其中,应用层协议的转换是整个的主要工作所在,所以,时必须建立尽量完善的关系对应列表,同时应提供友好的用户接口函数。
通过MVB-CAN网关的可以实现机车内车载设备间不同接口单元之间的通讯,从而为列车通信网络的多元化发展提供有力的支持。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭