摘要:做电动汽车充电桩产品时,采用CAN总线与电池箱/车载电池进行通讯。但用的CPU芯片ATMEL9260没有CAN控制器模块,因此需要外围扩展独立的CAN控制器,以满足产品功能需求。

在CAN控制器选型上,选用了应用广泛且采用SPI接口的MCP2515 CAN控制器,其实最重要的原因是,公司有相关产品采用了此芯片,因此有了相应的开发基础。

MCP2515的中文资料随处可见,本文是reille在阅读MCP2515和CAN总结协议2.0的基础上,所做的一些开发笔记和总结。

MCP2515是Microchip公司生产的具有SPI接口的独立CAN控制器,完全支持CANV2.0B技术规范,通信速率最高可达1 Mbps,内含3个发送缓冲器、2个接收缓冲器、6个29位验收滤波寄存器和2个29位验收屏蔽寄存器;它的SPI接口时钟频率最高可达10 MHz,可满足一个SPI主机接口扩展多路CAN总线接口的需要。

滤波寄存器与屏蔽寄存器的作用:

根据CAN协议,一个节点发送数据时,CAN网络上的其它任何节点都可以收到数据,而如果不进行滤波和屏蔽,则节点的MCU需要处理每一个收到的数据,这就导致了MCU需要更多的时间来处理接收到的数据,因此,为节省MCU处理时间和节省资源,MCP2515(其它CAN器件亦是如此)具有硬件屏蔽和滤波功能。

屏蔽寄存器的功能:决定接收报文中的某位是否与滤波寄存器中的相应位进行严格匹配,1有效。

信息标识符的分配:

CAN协议,只是定义了物理层和数据链路层,因此需要用户根据应用需求定义自己的应用层协议,即设计或分配通讯报文的信息标识符。

在应用层协议设计的过程中,要充分考虑信息标识符的制定,这与系统的性能有直接关系。

信息标识符的分配原则:

(1)       在同一系统中,每条信息必须标以唯一的信息标识符。

(2)       具有相同标识符且数据长度码不为0的数据帧仅可由一个节点启动,防止仲裁失效。

(3)       相同标识符的远程帧不能同时发送。

(4)       规划信息标识符,规定每一部分的功能。

优先权的分配原则:

(1)       实时性要求高的优先级分配要求高。

(2)       具有相同标识符的帧,数据帧优先权高于远程帧。

为了实现各厂家可以实现相互通讯,一些行业领导者,定义了一些标准的基于CAN的协议,如DeviceNet、CANopen等CAN协议。

工程布线:

采用双绞线,总线形;

长距离通讯时,要接上匹配终端电阻;

双绞线的屏蔽线最好接大地。

» 文章出处: reille博客—http://velep.com , 如果没有特别声明,文章均为reille博客原创作品
» 郑重声明: 原创作品未经允许不得转载,如需转载请联系reille#qq.com(#换成@)
分享到:

  2 Responses to “阅读MCP2515数据手册后一些关于CAN总线的笔记”

  1. 您好,我也在做充电桩方面的东西,能跟您联系吗,QQ396505506,谢谢!

 Leave a Reply

(必须)

(我会替您保密的)(必须)

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.

   
© 2012 velep.com | reille blog | 管理| 粤ICP备15065318号-2| 谷歌地图| 百度地图| Suffusion theme|Sayontan Sinha

无觅相关文章插件,快速提升流量