基于DSP的CAN总线接口设计

网友投稿 283 2022-10-27

基于DSP的CAN总线接口设计

1. CAN总线简介

CAN总线具有如下特点:

2) 通信方式灵活。可以多主从方式工作,可以点对点、点对多点及全局广播方式发送和接收数据;

3) 采用短帧通讯格式,保证了实时性和可靠性,可满足一般工业应用;

4) 非破坏总线仲裁技术,具有多优先级;

5) 集成了CAN协议的物理层和数据链路层功能,可完成对通讯数据的成帧处理工作。

CAN总线具有良好功能特性和极高的可靠性,现场抗干扰能力强。广泛应用于工业测控领域。

2. CAN总线接口的硬件设计

图1 CAN总线接口电路

F2407的内部集成有CAN控制器。该控制器是一个16位的外设模块,支持CAN2.0B协议,具有6个8字节邮箱;具有可编程的中断配置、总线唤醒功能,以及自动回复、自动重发、错误诊断等功能。CAN模块的结构框图如图2所示。

图2 CAN控制器结构框图

3. CAN总线接口的程序设计

CAN的通讯采用短帧格式。每个数据帧由帧起始、仲裁域、控制域、数据域、校验域、应答域和帧结束组成。F2407支持标准帧格式和扩展帧格式,如图3所示。标识符是作为报文的名称,在接收器的验收判断和仲裁过程确定访问优先权中使用;远程发送请求位(RTR)确定发送远程帧还是数据帧;数据长度码(DLC)确定每帧发送几个字节数据。

图3 CAN信息帧

在使用CAN控制器前必须对它的一些内部寄存器进行设置。如流程图4和流程图5所示,需配置位定时器和初始化邮箱。位定时器的BCR1和BCR2寄存器决定了CAN控制器的通信波特率、同步跳转宽度、采样次数和重同步方式。邮箱初始化需设置邮箱的标识符,发送的是远程帧还是数据帧及对发送的数据区赋初值。这样,邮箱就能进行正常的发送和接收工作了。

图4 配置位定时器流程图

图5初始化邮箱流程图

CAN控制器的发送邮箱有邮箱4、5及被配置为发送方式的邮箱2、3。如流程图6所示,在写数据到发送邮箱后,如果相应的发送请求位使能,则信息帧被发送到CAN总线上。邮箱权限高的先发送,发送失败将再次发送。

图6 信息发送流程图

邮箱0、1和被配置为接收方式的邮箱2、3为接收邮箱,CAN控制器只接收邮箱标识符相同的信息,或被局部屏蔽寄存器(LAM)忽略的信息,此时接收屏蔽使能位(AME)为1。接收信息的过程如流程图7所示。

图7信息接收流程图

4. 结论

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:工商银行基于 Dubbo 构建金融微服务架构的实践-服务发现篇
下一篇:阿里云函数计算发布新功能,支持容器镜像,加速应用 Serverless 进程
相关文章

 发表评论

暂时没有评论,来抢沙发吧~