STM32-CAN通信

STM32-CAN通讯:
一、定义:
CAN总线(Controller Area Network Bus)的全称是控制器局域网总线,它构建的是一种局域网网络,每一个挂载在CAN总线上的设备都可以利用这个局域网发送自己的消息,也可以接收局域网的各种消息。
二、CAN总线的特征:
a) 只需要两根通信线(CAN_H、CAN_L),线路少,无需共地。
b) 差分信号通信(利用两个信号的电压差值传递信息),抗干扰能力强。
c) CAN总线的两种标准:
①.高速CAN(ISO11898):125k~1Mbps, <40m;
②.低速CAN(ISO11519):10k~125kbps, <1km。
三、CAN协议硬件电路:
CAN协议硬件电路有闭环CAN总线和开环CAN总线两种接法,高速CAN使用闭环网络,CAN_H和CAN_L两端添加120Ω的终端电阻,终端电阻可以防止回波反射;低速CAN使用开环网络,CAN_H和CAN_L其中一端添加2.2kΩ的终端电阻,它们同样有防止回波反射的作用。
四、CAN协议帧格式:
CAN协议规定了以下5种类型的帧:
帧类型 用途
数据帧 发送设备主动发送数据(广播式)
遥控帧 接收设备主动请求数据(请求式)
错误帧 某个设备检测出错误时向其他设备通知错误
过载帧 接收设备通知其尚未做好接收准备
帧间隔 用于将数据帧及遥控帧与前面的帧分离开
五、CAN通信协议特点:
a) 多主控制,总线空闲时,所有设备都可以发送消息,优先级高的获取发送权;
b) 消息发送,所有的消息都以固定格式进行发送;
c) 系统的柔软性,CAN总线设备没有地址区分,新增加减少设备无需更改;
d) 通信速度,根据整个网络的规模,设定合适的通信速度,在同一网络中,所有单元必须设定成统一的通信速度;
e) 远程数据请求,可通过发送“遥控帧” 请求其他单元发送数据;
f) 错误检测功能·错误通知功能·错误恢复功能;
h) 故障封闭;
i) 连接,总线上可以多个设备进行连接。
五、STM32的内置的CAN:
STM32内置bxCAN外设(CAN控制器),支持CAN2.0A和2.0B,可以自动发送CAN报文和按照过滤器自动接收指定CAN报文,程序只需处理报文数据而无需关注总线的电平细节。
1.bxCAN的一些主要参数:
①.波特率最高可达1兆位/秒;
②.具有3个可配置优先级的发送邮箱;
③.具有2个3级深度的接收FIFO;
④.具有14个过滤器组(互联型28个)。
可以参考文档:
https://blog.csdn.net/Zevalin/article/details/140638078?spm=1001.2101.3001.6650.2&depth_1-utm_relevant_index=5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值