CAN总线技术白皮书.doc

Similar documents
广州周立功单片机发展有限公司 Tel: Fax: A 部分 目录 1. 介绍 基本概念 报文传输 帧类型 数据帧

Chapter #

4 CAN 总线协议的层次结构 与前面介绍的简单总线逻辑不同,CAN 是一种复杂逻辑的总线结构 从层次上可以将 CAN 总线划 分为三个不同层次 : (1) 物理层在物理层中定义实际信号的传输方法, 包括位的编码和解码 位的定时和同步等内容, 作用是定义不同节点之间根据电气属性如何进行位的实际传输

内容简介本书以基于 51 单片机的 CAN 总线系统设计为讲解对象, 在内容安排上兼顾理论与实践, 循序渐进地将其呈现给读者 第 1~3 章主要讲述 CAN 总线底层协议规范 应用层协议以及 CAN 总线控制器和驱动器, 为 CAN 总线系统设计奠定基础 第 4~9 章重点讲解 CAN 总线系统硬件

70074e_cn.fm

1 CAN 69 4 接受滤波 CAN CRC LLC 超载通知数恢复管理 CAN 据数据封装 / 拆装 5 链帧编码 ( 填充 / 解除 ) 媒体访问管理 路 CAN 应答 SAE J CAN 1 1 CAN 层 1CAN CAN 7 CAN 1 2 2CAN CAN 1 58%

CAN 介绍控制器局域网 CAN 是由 ISO 定义的串行通讯总线 它最初出现在 80 年代末的汽车工业里 它的 基本设计规范要求有高的位速率 高抗电磁干扰性 而且能够检测出产生的任何错误 由于 CAN 串行通讯 总线具有这些特性 它很自然地在汽车 制造业以及航空工业中受到广泛应用 CAN 通讯协议

Microsoft Word - PCICAN-9820产品用户手册_V1.00.doc

Microsoft Word - GY8801_CanTestboard使用说明书.doc

有不要微处理器的节点 下面以 CAN 通信控制器 SJA1000 为例, 对 CAN 总线系统 智能节点硬件和软件设计作一个全面的介绍 CAN 通信控制器 SJA1000 功能简介 CAN 的通信协议主要由 CAN 控制器完成 CAN 控制器主要由实现 CAN 总线协议的部分和实现与微处理器接口部分

CAN匯流排協定

<4D F736F F F696E74202D ED7DCCFDFCFEACFB8BDCCB3CC5FBEABD0C4B1E0D6C62E707074>

(Microsoft Word - ACUSB-132B_131B \261\343\320\257\312\275\271\244\322\265\323\303USB\275\323\277\332CAN\277\250 \312\375\276\335\312\326\262\341_DataSheet_ V1.0)


计算机网络编程

修 订 历 史 版 本 日 期 原 因 V /12/19 创 建 文 档 i

PowerPoint Presentation

21801d.book

Chapter 3- 数据链路层 (1)-2017

21801g_cn.book

Microsoft Word - UT-2505说明书

CAN CAN CAN CAN CAN CAN CAN i

第 卷 第 期 年 月 半 导 体 学 报! " # $%&'%' $!&' #% #$1 /#1 $'! / ?/ ?/ / 3 0,?/ ) * +!!! '!,!! -. & ' $! '! 4% %&1)/1(7%&)03 (% )

OSI OSI 15% 20% OSI OSI ISO International Standard Organization 1984 OSI Open-data System Interface Reference Model OSI OSI OSI OSI ISO Prototype Prot

?????????? M340


Design and Simulation of Vehicle Network Based on SAEJ1939 Protocol

标准名称

燃烧器电子控制系统 目录 2

Microsoft Word - USB2 0信號分析技巧.doc

Modern Ideas of Government Reform ...

工程设计资质标准

4 办 公 室 工 作 实 务 ( 第 3 版 ) 第 1 单 元 单 位 组 织 的 有 效 运 作 离 不 开 办 公 室 工 作 情 景 案 例 左 景 被 宏 达 商 业 集 团 公 司 录 用 为 秘 书, 试 用 期 间, 只 能 在 办 公 室 打 杂, 有 时 工 作 稍 有 差 错

(35 )

nbqw.PDF

nbqw.PDF

水晶分析师

图 内部结构图 8251 的外部引脚如图 所示, 共 28 个引脚, 每个引脚信号的输入输出方式如图中的箭 头方向所示

ARP ICMP

<4D F736F F D E2D C8EDBCFECAB9D3C3B0EFD6FACAD6B2E1>

AMP NETCONNECT

IEC 传输帧格式

Microsoft PowerPoint - CH03数据链路层.ppt

Microsoft Word - 三峽鎮衛生所_3_-張家宸.李永繁.doc

Microsoft Word - 武漢大學交流營心得_黃莉云_.doc

128K Flash EPROM 的程序?\(Bank=64K\) 切?

USBCAN-II Pro

TD

RS-232C [11-13] 1 1 (PLC) (HMI) Visual Basic (PLC) 402


深圳市打通断头路三年行动计划

地会字〔2014〕XXX号

<4D F736F F D203120B8A3BDA8CAA1BDBBCDA8D4CBCAE4CFB5CDB3A1B0C6BDB0B2BDBBCDA8A1B1B4B4BDA8BBEEB6AFCAB5CAA9B7BDB0B82E646F63>

51 石 景 山 路 石 景 山 十 万 坪 人 行 横 道 灯 西 向 东 八 角 街 道 段 石 景 山 路 52 石 景 山 路 八 角 路 口 由 西 向 东 八 角 路 口 53 八 角 路 八 角 路 口 东 东 西 双 向 八 角 路 口 东 54 方 庄 路 八 里 河 路 口 北

2.1 公 猪 的 引 入 公 猪 健 康 选 择 : 选 择 公 猪 时 必 须 考 虑 其 来 源, 引 进 外 来 公 猪 要 求 从 安 全 系 数 高 的 场 家 选 种 无 特 定 传 染 病, 至 少 半 年 年 确 定 为 无 疫 区, 经 过 抽 血 检 查 合 格 后

<4D F736F F D20CAAEC8FDCEE5BABDB5C0D6CEC0EDBDA8C9E8B9E6BBAEBBB7C6C02DBCF2B1BE>


工程师培训

MAN- Metropolitan Area Network Resilient Packet Ring a : 5GHz 54Mbps b : 2.4GHz 11Mbps c : MAC Bridge 802.1D 80

HD ( ) 18 HD ( ) 18 PC 19 PC 19 PC 20 Leica MC170 HD Leica MC190 HD 22 Leica MC170 HD Leica MC190 HD Leica MC170 HD

<4D F736F F F696E74202D DA578C657B27BA6E6ABD8BF76B5B2BA63A475B57BAABABADEB27AA8EEABD7BB50A7EFB669ABD8C4B32DBDB2A7D3B4AD2E BACDBAE65BCD2A6A15D>

Ⅳ 如果要安装到不同的目录, 请单击 浏览 按钮, 选择好安装目录后, 点击确定 ; Ⅴ 一直点击一步, 开始复制文件 ;

修订历史版本 日期 原因 V /01/01 创建文档 V /07/23 增加例程说明 USBCAN 出现蓝屏 PCI 关机重启 i

19/02/18 13:17 PAGE

xilinx FPGA 串口设计笔记 在设计中, 需要用 FPGA 读取 GPS 内部的信息,GPS 的通信方式为串口, 所以在 FPGA 中移植了串口程序 本次移植的程序源代码是特权的串口程序, 本以为移植应该很快就能完成, 但其中还是出了一写小问题, 耽误了不少的时间, 下面将问题进行一个总结!

应 用 指 南 引 言 今 天, 嵌 入 式 系 统 几 乎 遍 布 在 人 类 社 会 的 每 个 角 落 嵌 入 式 系 统 可 以 简 单 定 义 为 属 于 大 型 系 统 或 机 器 一 部 分 的 一 种 专 用 计 算 机 系 统, 其 目 的 是 为 该 系 统 或 机 器 提 供

修订历史 版本日期原因 V /07/19 创建文档 i

帧中继术语表

Control Technology of Stepper Motor in Digital Instrument

Ⅳ 如果要安装到不同的目录, 请单击 浏览 按钮, 选择好安装目录后, 点击确定 ; Ⅴ 一直点击一步, 开始复制文件 ;

CAN监视器需求.doc

, 60 IBM 多 个 计 算 机 互 联 的 计 算 机 网 络 60 HOS HOS 1-1a 1-1b HOS FEP 1-1c ARPANE(Advanced Research Project Agency Network) ARPA (1) 1-2 IMP

USBCAN-Mini 用户手册

关于在招募说明书和公开说明书中

Microsoft Word - Delta Controller ASCII_RTU_SC

CAN入门书

第 1 章 概 述 1.1 计 算 机 网 络 在 信 息 时 代 中 的 作 用 1.2 计 算 机 网 络 的 发 展 过 程 *1.2.1 分 组 交 换 的 产 生 *1.2.2 因 特 网 时 代 *1.2.3 关 于 因 特 网 的 标 准 化 工 作 计 算 机 网 络 在

换向阀 线圈系列 CO1 产品手册

Technical Note 电能质量监测终端 IEC 规约说明 工程技术笔记 类别 内容 关键词 电能质量 103 摘要 本文档简要列出了 IEC103 规约简介及 E8300 设备对 IEC103 规约的支持部分 广州致远电子有限公司

Microsoft Word - LCNET-datasheet-V1.04.doc

上 海 生 物 样 本 库 质 量 管 理 体 系 文 件 文 件 名 称 文 件 控 制 程 序 编 号 SOP-QA 批 准 人 批 准 日 期 实 施 日 期 文 件 控 制 程 序 1. 目 的 通 过 建 立 样 本 库 的 文 件 控 制 程 序, 使 文 件 的 编 制

目 录 前 言... 4 内 容 摘 要... 5 报 告 术 语 界 定... 6 第 一 章 农 村 互 联 网 宏 观 情 况... 7 一 经 济 发 展 状 况... 7 二 电 信 发 展 状 况... 8 三 农 村 互 联 网 发 展 概 况... 9 第 二 章 农 村 网 民 构

ISA-9620用户手册.PDF

Microsoft PowerPoint - STU_EC_Ch08.ppt

穨control.PDF

PowerPoint 演示文稿

网上对外发布资料适用版本

OB1

上海派恩科技有限公司控制系统硬件介绍

Microsoft PowerPoint - 数据通信-ch1.ppt

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

Microsoft Word - YDB Vehicle Telematics Service Requirement and General Framework

Chap6.ppt

AL-M200 Series

Chap2.ppt

经华名家讲堂

Infrared Temperature Sensor 用户手册 Infrared Temperature Sensor 用户手册 产品特点 本模块是一款非接触式红外温度传感器, 能根据被测物体的红外辐射能量大小和波长分布来检测物体的表面温度 通讯接口是 SMBus, 支持 PWM 输出 传感器具体

通信工程

穨電子公文交換期末報告noconclusion.PDF

电子技术基础 ( 第 版 ) 3. 图解单相桥式整流电路 ( 图 4-1-3) 电路名称电路原理图波形图 整流电路的工作原理 1. 单相半波整流电路 u 1 u u sin t a t 1 u 0 A B VD I A VD R B

Transcription:

CAN 总线技术白皮书 关键词 : 非破坏性总线,CAN2.0A,CAN2.0B, 总线仲裁, 位流编码, 位填充, 单元状态 摘 要 : 本文 CAN 总线工作原理 协议规范与帧格式等细节 缩略语 : 缩略语 CAN RTR SRR IDE DLC DEL CRC SOF EOF REC TEC IAR IMR ACR AMR SJW MSB LSB 英文全名 Control er Area Network Remote Transmission Request Substitute Remote Request Identifier Extension Data Length Code Delimiter Cyclic Redundancy Check Start Of Frame End Of Frame Receiver Error Counter Transmit Error Counter Identifier Acceptance Register Identifier Mask Register Acceptance Code Register Acceptance Mask Register Synchronization Jump Width Most Significant Bit Least Significant Bit 中文解释控制器局域网络远程发送请求替代远程请求身份标示符扩展数据长度代码界定符循环冗余检验帧起始帧结束接收错误计数器发送错误计数器标识符验收寄存器标识符屏蔽寄存器验收代码寄存器验收屏蔽寄存器同步跳转宽度最高有效位最低有效位

目录 1. 概述... 1 1.1 技术优点... 1 2. CAN 总线介绍... 2 2.1 CAN 总线协议... 2 2.2 CAN 总线物理特性... 3 2.3 CAN 总线帧格式及帧类型... 4 2.3.1 CAN 总线帧格式... 4 2.3.2 CAN 总线帧类型... 4 2.4 相关术语... 7 2.4.1 CAN 总线仲裁机制... 7 2.4.2 DLC... 8 2.4.3 帧间空间... 8 2.4.4 位定时... 9 2.4.5 同步... 10 2.4.6 CAN 总线错误... 11 3. 参考文献... 14

1. 概述 CAN 是 Control er Area Network( 控制器局域网络 ) 的简称, 最初是由德国 Bosch 公司设 计的, 应用于汽车的监测和控制 CAN 总线作为一种技术先进 可靠性高 功能完善 成本合 理的远程网络通讯控制方式, 逐步被广泛应用到各种控制领域 1991 年 9 月,Philips 制定并发布 CAN 技术规范 :CAN 2.0A 和 CAN2.0B 1993 年 11 月, ISO 组织正式颁布 CAN 国际标准 ISO11898 CAN 总线是唯一成为国际标准的现场总线 1.1 技术优点 多主结构依据优先权进行总线访问 ; 非破坏性的基于优先权的逐位仲裁, 对于优先级最高的节点来说 发送时间 就是无损的 ; 借助验收滤波器的多地址帧传递 ; 远程数据请求 ; 全系统数据相容性 ; 错误检测和出错信令 ; 很远的数据传输距离 ( 长达 10KM); 高速的数据传输速率 ( 高达 1Mbps); 高度实时性 : 每帧报文允许传输最高 8 个字节的数据 ; 发送期间丢失仲裁或出错而遭到破坏的帧可自动重发 ; 暂时错误和永久性故障节点的判别以及故障节点的自动脱离 ; 脱离总线的节点不影响总线的正常工作

2. CAN 总线介绍 2.1 CAN 总线协议 CAN 总线规范分为两种 CAN2.0A 和 CAN2.0B: 1CAN2.0A:CAN 标准报文格式 2CAN2.0B:CAN 标准报文格式和扩展报文格式 CAN 总线技术规范目的 : 1 定义数据链路层 2 定义 CAN 协议在周围各层中所发挥的作用 7. 应用层 6. 表示层 5. 会话层 4. 传输层 3. 网络层 2. 数据链路层 1. 物理层 LLC MAC 表 1 CAN 总线分层结构及定义事项

2.2 CAN 总线物理特性 (1)CAN 总线电平信号 图 1 CAN 总线电平信号 CAN 总线上是差分信号, 一个差分信号是用一个数值来表示两个物理量之间的差异 : 逻辑 0 显性 CAN_H 对应是 3.5V,CAN_L 对应是 1.5V 逻辑 1 隐性 CAN_H 对应是 2.5V,CAN_L 对应是 2.5V 正常情况下 : CAN_H 标准电压 : 隐性为 2.6V 左右 ; 显性为 3.8V 左右 CAN_L 标准电压 : 隐性为 2.4V 左右 ; 显性为 1.2V 左右 (2)CAN 总线信号编码方式 图 2 CAN 总线编码 CAN 总线采用 NRZ( 单极性不归零码 ) 编码, 相比曼彻斯特码具有更好的 EMC 性能 当 发送器检测到位流里有连续 5 个相同极性的位就会插入一个填充位, 接收器会删除这个填充位, 然而在固定的位场中不使用位填充

图 3 位填充示意图 (3)CAN 总线速率与传输距离关系 CAN 总线上任意两个节点之间的最大传输距离与其位速率关系如表 2: 位速率 /kbps 1000 500 250 125 100 50 20 10 5 最大距离 /m 40 130 270 530 620 1300 3300 6700 10000 表 2 CAN 总线位速率与传输距离对应表 2.3 CAN 总线帧格式及帧类型 2.3.1 CAN 总线帧格式 CAN 总线有二种不同的 CAN 帧格式, 标准帧和扩展帧 CAN2.0A 协议仅支持标准帧 ; CAN2.0B 协议引入第二种帧格式, 它支持标准帧和扩展帧 具有 11 位标识符的 CAN 帧称为标准帧 ; 具有 29 位标识符的 CAN 帧称为扩展帧 两种帧格式可出现在同一总线上 2.3.2 CAN 总线帧类型 CAN 总线报文传送主要有四种类型的帧 : 数据帧 远程帧 错误帧以及过载帧 (1) 数据帧由 7 个不同的位场组成, 分别是帧起始 仲裁场 控制场 数据场 CRC 场 应答场以及帧结束 数据帧用于从发送节点向其他节点发送数据 1 帧起始 (SOF): 表示数据帧和远程帧的起始, 仅由 1 位显性位 (0) 组成 2 帧结束 (EOF): 表示数据帧和远程帧的结束, 由 7 位隐性位 (1) 组成 3 仲裁场 : 用于实现总线仲裁功能和设置冲突发生时的优先级 11 位标识符的是标准数据帧 ;29 位标识符的是扩展数据帧 远程发送请求位 RTR 用于区分数据帧和远程帧, 在数据帧中 RTR 必须为显性电平 (0); 远程帧中该位为隐性电平 (1)

不管在数据帧中还是远程帧中, 标准帧的 RTR 位被扩展帧的 SRR 位替代,SRR 位在扩展帧中必须为隐性位, 扩展帧的 RTR 位被置于保留位 r1 前 4 控制场 : 控制场中的 IDE 位用于区分标准帧和扩展帧 在标准帧中该位为显性电平 (0); 扩展帧中该位为隐性电平 (1), 接收器检测位流序列的 IDE 位以识别接收的是标准帧还是扩展帧 数据长度代码 (DLC), 指示数据场的字节数目, 共 4 个位 DLC0 DLC3 DLC 可以设置 0 8 的数字表示数据字节数 ( 超过 8 的数字则认为是 8, 这种情况并不视为出错 ) 两位保留位 r0 和 r1, 用于扩展 保留位必须全部以显性电平发送, 但接收方可以接收显性 隐性及其任意组合的电平 5 数据场 : 数据场可以为 0 8 个字节, 首先发送 MSB( 最高位 ), 一般情况下都是 8 个字节, 每个字节可以存储任意的数 6CRC 场 :CRC 校验仅仅是 CAN 通讯的一种错误检测, 用于对帧起始 仲裁场 控制场 数据场上的位进行校验 CRC 码最适合于短帧报文,CRC 界定符为 1 位隐性位 7 应答场 : 应答场长度为 2 位, 包含应答间隙和应答界定符 在应答域里, 发送站发送两个 隐性 位 当接收器正确地接收到有效的报文, 接收器就会在应答间隙期间发送 ACK 信号, 向发送器发送一个 显性 的位以示应答 图 4 标准数据帧结构示意图 图 5 扩展数据帧结构示意图

(2) 远程帧远程帧也有二种格式, 标准远程帧和扩展远程帧, 而且都由 6 个不同的位场组成 : 帧起始 仲裁场 控制场 CRC 场 应答场 帧结束 远程帧除了没有数据场, 以及 RTR 位是隐形位 (1) 以外, 与数据帧完全一样 远程帧中的数据长度代码表示的是所请求数据帧的数据长度代码 图 6 标准远程帧结构示意图 图 7 扩展远程帧结构示意图 (3) 错误帧错误帧用于在接收和发送消息检测到错误时向总线通知错误, 该帧由错误标志和错误界定符构成 错误标志包括主动错误标志和被动错误标志两种 : 主动错误标志为 6 位显性位构成, 被动错误标志为 6 位隐性位构成 错误界定符由 8 位隐性位构成 为了能正确地终止错误帧, 错误认可 的节点要求总线至少有长度为 3 位的总线空闲 图 8 错误帧结构示意

(4) 过载帧过载帧用于接收方通知发送方尚未准备好接收数据, 过载帧在先行和后续的数据帧 ( 或远程帧 ) 之间提供一个附加的延时 过载帧由过载标志和过载界定符构成 过载标志由 6 位显性位构成 ; 过载界定符由 8 位隐性位构成 有三种过载的情况, 这三种情况都会引发过载标志的传送 :1 接收方的内部情况 ( 接收方尚未准备好接收数据, 对于下一个数据帧或远程帧需要有一个延时 );2 在帧间空间间歇场的第一和第二字节检测到一个 显性 位 ;3 如果 CAN 节点在错误界定符或过载界定符的第 8 位 ( 最后一位 ) 采样到一个显性位, 节点会发送一个过载帧 ( 不是错误帧 ) 错误计数器不会增加 图 9 过载帧结构示意图 2.4 相关术语 2.4.1 CAN 总线仲裁机制 1 总线上显性电平支配隐性电平 逻辑 0 为显性电平 ; 逻辑 1 为隐性电平 ; 2 总线空闲时, 任何节点可以开始发送报文 ; 3 总线上每条报文都具有唯一的一个 11 位或 29 位标识符 ; 4 报文标识符的值越小, 报文具有越高的优先权 ; 5 多个节点同时发送时, 总线在 仲裁场 进行 逐位仲裁 ; 6 传送高优先级报文的节点赢得仲裁, 并继续传输报文 ; 7 失去仲裁的节点在总线空闲时重新传送当一个扩展帧和一个标准帧同时出现在网络并且扩展帧的高 11 位与标准帧相同时 : 若该标准帧为数据帧, 则 RTR 为显性而对应的扩展帧中 SSR 位为隐性, 于是标准帧竞争总线成功继续发送而扩展帧对应节点竞争失败转为接收节点 若该标准帧为远程帧,RTR 位与 SRR 位同为隐性, 不存在冲突两帧继续发送 IDE 位, 标准帧中 IDE 位为显性而扩展帧中 IDE 位为隐性, 同样标准帧竞争成功继续享用总线而扩展帧对应的节点竞争总线失败转为接收器 这也就是标准帧的优先级总高于扩展帧的原因

图 10 CAN 总线仲裁示意图 2.4.2 DLC 数据长度代码指示了数据场里的字节数量, 共 4 个位 DLC0 DLC3 DLC 可以设置 0 8 的数字表示数据字节数 ( 超过 8 的数字则认为是 8, 这种情况并不视为出错 ) 2.4.3 帧间空间 数据帧或远程帧与先行帧的隔离是通过帧间空间实现的, 无论此先行帧类型如何 ( 数据帧 远程帧 错误帧 过载帧 ) 不同的是, 过载帧与错误帧之前没有帧间空间, 多个过载帧之间不用帧间空间进行分隔 帧间空间包括间歇 总线空闲的位场 间歇场由 3 个隐性位组成, 间歇场期间不允许启动发送数据帧或远程帧 总线空闲位场为隐性位, 长度不限 此时, 总线是开放的, 任何站可随时发送 如果 " 被动错误状态 " 的节点已作为前一报文的发送器, 则其帧间空间除了间歇 总线空闲外, 还包括称做 " 挂起传送 "( 暂停发送, 由 8 个隐性位组成 ) 的位场

图 11 帧间空间示意图 2.4.4 位定时 位定时相关名词有 : 1 标称位速率 (Nominal Bit Rate): 一理想发送器在没有重新同步的情况下每秒发送的位数量 ; 2 标称位时间 (Nominal Bit Time):1/ 标称位速率 标称位时间可分成几个不重叠的片段, 分别是同步段 传输延时段 相位缓冲段 1 相位缓冲段 2; 3 采样点 (Sample Point): 读总线电平并解释各位的值的一个时间点 采样点位于相位缓冲段 1 之后 ; 4 时间份额 (Time Quanta, 以下简称 Tq): 时间份额是派生于振荡器周期的固定时间单元, 它是实现 CAN 协议的基准时钟 ; 5 信息处理时间 (Information Processing Time): 信息处理时间是以一个采样点作为起始的时间段 采样点用于计算后续位的位电平 图 12 位时间示意图

2.4.5 同步 CAN 协议采用的是不归零码 (NRZ) 通讯方式 在各位的起始处与结尾处不附加同步信号 发送单元与位时间同步开始发送数据 而接收单元按总线上的电平变化加以同步的同时, 完成接收动作 但是, 由于时钟的误差及传输线路 ( 电缆 驱动器等 ) 的相位延迟, 发送单元与接收单元之间有时可能出现同步偏离, 因此接收单元要进行硬同步或者是重同步, 以对准时间进行接收 (1) 硬同步硬同步一般用于帧的开始, 即总线上的各个节点的内部位时间的起始位置 ( 同步段 ) 是由来 自总线的一个报文帧的帧起始的前沿决定的, 也就是说在总线空闲期间, 有一个 隐性 到一个 显性 的跳变沿时, 则硬同步就会被执行 (2) 重同步在接受报文过程中, 检测到总线上的电平跳变时, 所进行的同步 每当检测到下降跳变沿时, 则根据 SJW( 同步跳转宽度 ) 的值按误差加宽相位缓冲段 1, 或者压缩相位缓冲段 2 但是, 在误差大于 SJW 值时, 则只能调整 SJW 的最大值 在帧的位流发送期间, 节点内部的一个位时间内, 如果检测到一个下降跳变沿, 若此跳变沿在同步段内, 则不需要重同步 ; 若在传输延时段或相位缓冲段 1 内, 则需要延长相位缓冲段 1 来重同步 ; 若在相位缓冲段 2 内, 则需要缩短相位缓冲段 2 来重同步 值得注意的是相位缓冲段只在当前的位时间内被延长或者缩短, 在接下来的位时间内, 只要没有重同步, 各时间段将恢复编程预设值

图 13 位同步示意图 2.4.6 CAN 总线错误 (1) 错误种类错误共有 5 种 : 位错误 填充错误 CRC 错误 格式错误和应答错误 2 个或 2 个以上的错误有可能同时出现 错误的种类 错误的内容 检测错误的帧及检测单元如表 5 所示 错误种类位错误填充错误 CRC 错误格式错误 错误的内容将输出电平与总线电平加以比较 ( 不包括填充位 ), 在两电平不一致的场合下, 出现位错误按理应进行位填充的域中, 检测出了连续 6 位的相同电平时, 出现填充错误按接收数据计算出的 CRC 结果与接收到的 CRC 顺序不同时, 出现 CRC 错误在固定格式的位域中, 检测出有违反格式的错误 检测错误的帧 ( 域 ) 数据帧 (SOF-EOF); 远程帧 (SOF-EOF); 错误帧 ; 过载 帧 数据帧 (SOF-CRC 顺序 ); 远程帧 (SOF-CRC 顺序 ) 数据帧 (CRC 顺序 ); 远程帧 (CRC 顺序 ) 数据帧 (CRC 界定符 ACK 界定符 EOF); 远程帧 (CRC 接收单元界定符 ACK 界定符 EOF); 错误界定符 ; 过载界定符 检测单元 发送单元 接收单元 发送单元接收单元 接收单元 应答错误 发送单元在应答间隙 (ACK 槽 ) 中检测隐性电平时发现的错误 ( 没有 发送出 ACK 时检测到的错误 ) 表 5 数据帧 (ACK 槽 ); 远程帧 (ACK 槽 ) 错误种类介绍 发送单元 (2)CAN 错误种类产生位置 以扩展远程帧为例 : 图 14 错误检测位置示意图

(3) 错误帧的输出 检测出错误条件的单元通过输出错误标志通知出现错误 错误激活状态单元输出的错误标志为激活错误标志 ( 主动错误标志 ); 错误认可状态单元输出的错误标志为错误认可标志 ( 被动错误标志 ) 错误种类 位错误 ; 填充错误 ; 格式错误 ;ACK 错误 CRC 错误 输出时间 在检测出错误的位后立即输出错误标志 从 ACK 界定符的下一位开始输出错误标志 表 6 错误标志的输出时间 (4) 错误处理机制 每个总线单元都使用 2 种计数器来进行故障界定 : 发送错误计数器和接收错误计数器 这 些计数器按照检测到的错误类型分别进行加 1 或加 8 操作 当接收器检测到一个错误, 接收错 误计数器值就加 1; 当错误标志 ( 主动错误 ) 发送以后, 接收器检测到的第一个位为 显性 时, 接收错误计数器值加 8; 当发送器发送一个错误标志时, 发送错误计数器值加 8 按照发送错误计数器 接收错误计数器的值总线单元的状态分为 3 种 : 主动错误 被动错误和总线关闭 1 主动错误 : 主动错误的单元可以正常地参与总线通讯并在错误被检测到时发出主动错误标志 2 被动错误 : 被动错误的单元不允许发送主动错误标志 被动错误的单元参与总线通讯, 在错误被检测到时只发出被动错误标志 被动错误状态单元在发送结束后不能马上再次开始发送 在开始下次发送前, 在间歇场后必须插入 挂起传送 (8 位隐性位 ) 3 总线关闭 : 总线关闭的单元不允许在总线上有任何的影响 单元错误状态主动错误状态被动错误状态总线关闭状态 发送错误计数器值 (TEC) TEC 为 0~127 且 REC 为 0~127 TEC 为 128~255 或 REC 为 128~255 TEC 为 256~+ 接收错误计数器值 (REC) 表 7 错误状态与计数器的关系

图 15 错误状态关系示意图 3. 参考文献 ISO11898 ISO11519