CAN 入门书 学习记录
学习 瑞萨 电子的 《CAN 入门书》,做下相应的笔记。
一、CAN 是什么?有什么用处?哪里应用最多?
1、Controller Area Network 缩写就是 CAN ,从单词意思来看 是 ”控制器 区域 网络“ 的意思,也就是说这可以是涉及到 一个区域的通信用的 一种协议,称为 CAN 协议。
2、针对各式各样的电子控制系统,由于各自间的通信数据类型及其可靠性的要求不尽相同,存在总线数量多,线束也多的现象,所以使用 CAN 总线可以减少线束的使用。CAN 通信协议的开发,使得多种 LAN (子网)通过网关进行数据交换得以实现。
协议标准:ISO11898 ISO11519 标准化
3、广泛应用于 自动化、船舶、医疗设备、工业设备等方面。都是一些大型设备,且都是由大量的模块设备组合成的,所以使用CAN总线进行模块之间的通信。摁,是这样理解吧!@
二、CAN的拓扑结构及其特点
1、总线拓扑如下图:

疑问:为什么要加入 120 Ω 的电阻呢????
通过网络寻找资料:参考网站:http://www.elecfans.com/emb/jiekou/20171204593141.html (CAN 为啥加匹配电阻)
http://www.elecfans.com/d/619089.html (传输线为什么加匹配电阻)
1、提高看干扰能力,确保总线快速进入隐形状态
2、提高信号质量
3、特性阻抗:需要从射频的角度来理解 “电阻” ,射频发射的能量是不会发生反射的,但是实际上的导线是实际存在的,存在长度限制,所以信号只要到末端就会发射回来,影响信号的再次传输。
4、由于 i=Q/T,所以在相同源作用下,在相同的时间内,宽线通过的电量会多,其电流也就大,由 欧姆定律,知道电阻会变小。
5、信号的反射:
①、假设一个信号在一条有限长度的传输线上传输,到了末端,信号该到哪里去?
跟 “回声” 一样,会沿着传输线反射回去,影响下一次的信号传输
②、为了不让信号反射,该怎么处理?
加终端电阻将信号接收掉。
③、为啥传输线不吸收信号
导线本身并不属于耗能器件,而电阻能够直接吸收能量。
④、电阻怎么选择
当 R = RO 时,可以看成该导线无限长,信号不发生反射
当 R = ∞ 时,则信号没东西消耗,会全部反射回来,且末端电压的 2倍信号源
当 R = 0 时, 信号以 -1 倍反射回来
6、电阻匹配的方式
①、串联电阻:将输入源的输出阻抗匹配到跟传输线接近,避免二次反射,只能带单一负载
②、并联电阻:将传输线的末端添加电阻以致信号不反射,直接被电阻吸收,避免一次反射,可用于菊花链结构,有直流损耗
③、并联电阻加电容:同于并联电阻,减少了直流损耗,但是增加了容抗的选择。
④、戴维南端接:加上下拉电阻,选型难
2、CAN 协议的网络组成
CAN 协议涵盖了 ISO 规定的 OSI 基本参照模型中的 传输层、数据链路层 和 物理层。
| OSI基本参照模型 | |
| 软件控制 | 应用层 |
| 表示层 | |
| 会话层 | |
| 传输层 | |
| 网络层 | |
| 硬件控制 | 数据链路层 |
| 物理层 | |
| CAN 模型 | |
| 定义事项 | |
| 传输层 | 在发送控制 |
| 数据链路层 |
LLC:接收消息的选择 过载通知 错误恢复功能 |
|
MAC:消息的帧化 连接控制方式 数据冲突时的仲裁 故障扩散抑制功能 错误通知 错误检测 应答方式 通信方式 |
|
| 物理层 |
位编码方式 位时序 同步方式 |
3、总线的电平确定:由两根总线的差分电压确定,分为 显性 “0” 和 隐性 “1” ;差分电压超过 0.5MV 则表现为显性电平。
三、CAN 协议 属于 NRZ 数据通信方式,及 不归零通信
1、种类及用途
| 数据帧 | 用于发送单元向接收单元传送数据的帧 |
| 遥控帧 | 用于接收单元向具有相同ID的发送单元请求数据的帧 |
| 错误帧 | 用于当检测出错误时向其他单元通知错误的帧 |
| 过载帧 | 用于接收单元通知其尚未做好接收准备的帧 |
| 帧间隔 | 用于将数据帧及遥控帧与前面的帧分离开来的帧 |
2、数据帧的数据格式,遥控帧与其对比则是少了数据段的数据。
3、位填充技术:为了防止突发错误而设定,发送接收方通过在发送或接收到5个连续电平信号时,在其后面添加一个反型数据或删除一个位数据。

浙公网安备 33010602011771号