CAN总线协议
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
② 接收数据卸载包括:由接收帧中去除MAC
特定信息,输出LLC帧和接口控制信息至 LLC子层。
CAN网络的应用实例:
CAN网络应用框图
谢谢大家!
•波特率125kbps •总线错误时,自动切换到单线模式 •总线最大总长度40m •节点最多32个
Vcc
3.5V CANH
1
1.5V 0V recessive
0
CANL
1
dominant
recessive
Vcc
RL
Tx
ECU 2
Rx
...
ECU n
ECU 1
CANH CANL
Gnd
RH
Twisted-pair media
Vcc 3.5V CANH
1
1.5V
0
CANL
1
•CANH 通过终端电阻RH接地 •CANL 通过终端电阻RL接Vcc •隐性状态时,总线差分电压为-5v •显性状态时,总线差分电压为2v •差分电压阀值通常设为-3.2v •强抗干扰性
0V
recessive dominant recessive
CAN消息帧
遥控帧
接收单元向发送单元请求发送数据所用的帧。
和数据帧结构相比,主要是少了数据段这 一块。遥控帧的CRC位是隐性位,没有数据 的数据帧和遥控帧可以通过CRC位来进行区 分。遥控帧的数据长度码以所请求数据帧的 数据长度码表示。
错误帧
用于在接收和发送消息时检测出错误通知错误 的帧。错误帧由错误标志和错误界定符构成。 错误界定符主要由八个隐性位组成。 错误标志主要包括两种方式: 主动错误标志,主要由六个显性位组成 被动错误标志,主要由六个隐性位组成。
数据帧
遥控帧 错误帧
过载帧
帧间隔
数据帧
用于发送单元向接收单元传送数据的帧。
帧起始 标志一个数据帧或者远程帧的开始。 仲裁段 包括报文标识位和远程发送申请位 (RTR)。识别符主要的高7位不能全部为 隐性 控制段 由6个位组成,主要表示数字段的字 节数。其中前两位保留。 数字段 最多可以发送8个字节的数字量。 CRC段 检查帧是否传输错误的帧。 ACK段 用来接收是否正常接收的。 帧结束 表示该帧的结束段,由7个隐性位 组成。
CAN总线在汽车上的应用
CAN总线的特点
多主控制 在总线空闲时,所有的单元都可开始发送消息 (多主控制)。 系统的柔软性 总线上增加单元时,连接在总线上的其它单元的 软硬件及应用层都不需要改变。 通信速度 根据整个网络的规模,可设定适合的通信速度。 通讯波特率 5K——1MBPS
过载帧
过载帧是用于接收单元通知尚未完成接收准备 的帧。其结构主要也是由过载标志和过载界定 符组成。
帧间隔
用于分隔数据帧和遥控帧的帧 。延迟传送,8 个隐性位组成。只有在处于被动错误状态的单 元刚发送一个消息后的帧才包括此段。
优先级(仲裁)
在总线空闲的时候,最先开始发送消息的单元获得发 送优先。多个单元同时开始发送时,各发送单元从仲 裁段的第一位开始进行仲裁。连续输出显性电平最多 的单元可继续发送。仲裁的过程如下图: 具有相同ID的数据帧和遥控帧进行竞争时,由于数据 帧的CRC位为隐性位,因此在竞争的时候获胜,数据 帧具有优先权。相同ID的标准数据帧和扩展数据帧在 一起竞争的时候,标准数据帧具有优先权 。
Gnd
RT
120Ω
Twisted-pair media
终端电阻可以放在ECU内部
3.5V
CANH
2.5V
1
0
CANL
1
1.5V
recessive
dominant
recessive
•CANH 通过MOS管接高 •CANL 通过MOS管接低 •隐性状态时,总线差分电压为0v •显性状态时,总线差分电压为2v •共模电压2.5v
位填充
位填充是为防止突发错误而设定的功能。当同 样的电平持续5位时则添加一个位的反型数据。
CAN总线的层结构
CAN遵从OSI模型,按照OSI基准模型,CAN 结构划分为两层:数据链路层和物理层。
数据链层主要分为两个部分: 逻辑链路控制(LLC-logic link control) 媒体访问控制层(MAC-medium access control) LLC子层提供的功能主要包括:帧接收滤波、超 载通告和恢复管理。 MAC层的功能: 1. 发送功能包括: ① 发送数据封装包括接收LLC帧,并接口控制信息; CRC循环计算;通过向LLC帧附加SQF,RTR位, 保留位,CRC位,ACK和EOF构造MAC帧。
② 发送媒体访问管理 包括确认总线空闲之后开始
发送过程;MAC帧串行化;插入填充位;在丢 失仲裁的情况下,退出仲裁并转入接收方式; 错误检测(监控和格式校验);应答校验;确 认超载条件;构造超载帧,并发送;构造出错 帧并发送;输出串行位流至物理层并准备发送 。 2. 接收功能包括: ① 接收媒体访问管理包括由物理层接收串行位流, 解除串行结构并重新构筑帧结构,检测填充位, 带误检测,发送应答,构造错误帧并开始发送, 确认超载条件,重激活超载帧结构并开始发送。
•波特率最高1M,汽车常用500K •总线长度最大40m •最多16个节点 •总线两端各有2个120欧姆电阻
Vcc
3.5V 2.5V 1.5V recessive
CANH
1
0
CANL
1
dominant
recessive
Tx
ECU 2
Rx
...
ECU n
Stubs < 0.3m ECU 1 RT
120Ω CHale Waihona Puke BaiduNH CANL
实时性好,CSMA采用无时间损耗总线仲 裁方式; 采用发送帧优先权方式; 可靠性好,采用CRC校验等容错方式,如 果接受出现错误,则自动重发。
CAN信号的传输
CAN信号在总线上的传输是采用差分电压 作为数字信号进行传输的。差分电压状态有 两种,当总线的两根线有2V的压差时,这时 总线称为显性状态,当总线的两根线电压相 等时称为隐性状态。一般CAN协议定义显性 定义为数字0,而隐性定义为数字1。 CAN分为:高速CAN(125K—1MBPS) 低速CAN (40K—125KBPS)
CAN基本通讯协议培训
CAN 的基本介绍
CAN 是Controller Area Network 的缩写 (以下称为CAN),它是一种国际标准化的 串行通信协议。出于对安全性、舒适性、方 便性、低公害、低成本的要求,各种各样的 电子控制系统被开发了出来。由于这些系统 之间通信所用的数据类型及对可靠性的要求 不尽相同,由多条总线构成的情况很多,线 束的数量也随之增加。在这种背景下,提出 了CAN总线。