重工电子论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 5170|回复: 0
打印 上一主题 下一主题

stm32 CAN总线使用小结

[复制链接]

12

主题

66

帖子

538

积分

高级会员

Rank: 4

积分
538
QQ
跳转到指定楼层
楼主
发表于 2016-6-6 12:13:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 张金权-11级电子 于 2016-6-6 12:15 编辑

如今,CAN总线正因为其通信速率高(1M bps)、传输距离远、可靠、连接节点多等优点而越来越流行,正好最近使用了CAN通信,在这里做简单总结、介绍
1、CAN总线为双线通信CAN_L、CAN_H,通过差分信号来表示0和1,其中显性电平对应逻辑0,CAN_H和CAN_L之差为2.5V,而隐性电平对应逻辑1,CAN_H和CAN_L之差为0V;
2、因为CAN总线物理层传输是差分电平,而单片机IO口CAN_TX、CAN_RX都是TTL电平,故使用CAN通信的时候电路中需要接一个电平转换芯片,TJA1051T来进行转换;
3、CAN总线与I2C总线都可以挂载多个器件,然而I2C是通过地址识别总线上不同的器件,而CAN是通过ID来接收过滤总线上的信息,即CAN总线上所发出的每一个数据帧里面都包含了ID信息,总线上其他CAN器件通过自身设置的接收ID和数据帧里 的ID是否匹配来接收或者过滤掉数据帧;
4、标识符(ID)长度有11位和29位两种,通常使用标准数据帧(11位ID)就够了,ID的设置有标识符列表模式和屏蔽位模式,CAN有很多组过滤器,通常使用1组就够了,如果使用一组过滤器,则屏蔽位模式可以接收很多组ID信息数据帧,而标识符列表模式只能接收两组ID信息的数据帧,可根据实际需要选择配置相应的寄存器组;
5、CAN总线上是以数据帧来传输信息的,一个数据帧最多可以包含8个字节的数据,如果多于8个字节怎么办?那就分成多个数据帧来传输;
6、CAN有几种工作模式,分别是正常模式、环回模式、静默模式、环回静默模式,通信时使用正常模式,环回模式在单片机内部把CAN_TX和CAN_RX短接,可理解为自发自收模式,静默模式相当于自动往总线上发固定信息(全1),环回模式和静默模式在测试时可以使用,至于环回静默模式,可暂时忽略了。
7、调试CAN通讯的利器--USBCAN分析仪,能实时抓取CAN总线上的数据并数字显示;
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|cqutlab ( 渝ICP备15004556号

GMT+8, 2024-12-22 22:30 , Processed in 3.995637 second(s), 29 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表