资讯详情

航芯技术分享 | 一文读懂汽车CAN总线技术原理(下)

随着汽车工业的不断发展,汽车电子控制单元逐渐增多,电子控制单元之间的信号交换更加复杂。CAN总线可将车内电控单元连接成局域网,实现信息共享,大大优化了整车布线。

接下来,我们将继续与您分享CAN相关技术知识。

它由应用层、数据链路层和物理层三层组成。

?:层与操作系统或CAN交互设备的应用程序。

?:在发送、接收和验证数据时,它将实际数据连接到协议中。

?:它代表实际硬件,即CAN控制器和收发器。

CAN物理层分为三部分:CAN实现在控制器芯片中的物理代码,指定物理介质附件的收发器特性,物理介质依赖子层,这是一个特定的应用程序,没有标准化。

图1. CAN总线接线图

PCS包括比特编码、解码和比特定时间。它为收发器芯片提供连接单元接口Tx和Rx通过位填充处理引脚和等级错误。

出于时序目的,CAN总线上的每个位置分为至少4个时间份额,逻辑上分为4个段:

1. 同步段

2. 传播段

3. 相位缓冲段1

4. 相位缓冲段2

图2. CAN位时序

一个时间量子长度用于多个连接到总线的单元。当总线电压电平发生变化(显性到隐性或隐性到显性)时,预计该段将出现位沿。

用于补偿网络节点之间的物理延迟,包括发送单元的输出延迟、总线信号的传输延迟和接收单元的输入延迟。

相位缓冲段用于补偿节点间的晶振误差,分为相位缓冲段1(PS1)和相位缓冲段2(PS2)在此期间末端采样总线状态。两个相位缓冲段PS1和PS2用于补偿总线上的边缘相位误差。

采样点是位时间内的时间点,读取总线电平并进行分析。位时间内的采样点决定CAN总线电压是隐性的还是显性的。位置从位时间的起点计算,位于阶段1和阶段2之间。

CAN协议遵循NRZ编码传输。位间隔之间不会改变逻辑电平。CAN需要一个逻辑电平的转换来进行再同步。因此,在5个相同的连续比特之后,将发送1个相反逻辑电平的比特。这就是所谓的东西位,接收器可以识别它。

发送比特的节点总是监控总线,如果发射器发送的比特与总线上的比特值不同,就会产生错误的帧。

该层在CAN通过收发器芯片实现Tx和Rx引脚从CAN控制器获得输入,输出驱动CANH和CANL线。收发器负责不同的比特率,CAN总线速度指的是CAN总线通信速率。最大的CAN通信速度为1Mbit/sec。对于特殊应用,有些CAN超过1的控制器将处理更高的速度Mbit/sec。低速的CAN通信速率是125kbits/sec。

依赖介质的子层是高度特定的应用,不同连接器的引脚分配标准化属于这一层,各种连接器都是DB9、OBD II。

CAN通常通过连接器访问总线。

图3. CAN总线DB9引脚分配

引脚1:无定义

引脚2:CAN_L

引脚3:CAN GND

引脚4:无定义

引脚5:CAN_SHLD

引脚6:GND

引脚7:CAN_H

引脚8:无定义

引脚9:CAN_V

应具备微控制器CAN提供硬件和软件CAN实现通信的驱动程序。Python-CAN通过CAN网络发送和接收消息。Python CAN总线也用于测试硬件和硬件 CAN 记录总线数据。

? CANbus Shield采用带有SPI接口和CAN收发器的CAN总线控制器,为Arduino提供CAN总线能力。

? 带有CAN总线的Arduino有助于从ECU获取速度、油耗、温度等信息。

? Arduino CAN库用于通过CAN发送和接收总线CAN消息。

树莓派没有特定的硬件,即CAN控制器和CAN支持收发器CAN协议。覆盆子软件不支持。CAN树莓派支持总线 SPI 接口进行 CAN 通信。

树莓派通过SPI接口连接到板支撑的外部CAN控制器,CAN控制器通过Rx和Tx线连接到CAN收发器。

CAN控制器示例:SJA100、MCP2515

CAN收发器示例:TJA1040、MCP2551

ACM32-F0/F4芯片内置1路~2路CAN控制器,并提供对应的CAN总线接口驱动库与外部配套CAN收发器,保证CAN总线数据通信安全可靠。

当CAN总线与Microchip CAN总线分析仪,CAN总线Wire Shark当外部工具连接时,可以通过CAN USB适配器访问CAN该适配器提供与计算机或PC的USB即时连接端口。CAN USB以太网、互联网和内联网也可以控制适配器。CAN总线Wireshark是一种用于Linux该系统的工具,特别是以太网网络分析,以使用而闻名SocketCAN来显示CAN消息,SocketCAN是一组驱动程序和网络堆栈,因此被称为Linux CAN总线。CAN to USB帮助外部工具CAN网络获取信息,然后用于监控和调试接收或传输信息的工具。

但这些消息是原始格式。因此,使用从这些数据记录器中收集的数据CAN总线解码器转换为按比例缩放的工程值。也可以存储从数据记录器中收集的数据SD这有助于控制车辆设置,提高效率。CAN车队管理、用于车队管理、研发、诊断等。

为了检查任何情况,必须进行测试CAN布线、ECU、CAN网络中任何组件的电压供应故障。CAN总线的故障排除,如在CAN在总线的物理端添加120欧姆的终端电阻可以诊断出问题。通过使用万用表测试,确保终端电阻为120欧姆,电阻合适,无断裂。传输的数据也可以通过将万用表切换到交流电压来测试。

配备CAN总线车辆包括CAN总线LED和CAN-BUS HID 套件。CAN总线LED与汽车高级系统通信LED车辆关闭时会发出警告。CAN BUS HID KIT充当DC到AC转换器有助于在最初使用高压电流打开灯。灯启动时,需要较低的电压电流。但是当HID使用低功率时,CAN总线系统假设灯已关闭并发出警告。为避免这种情况,使用了HID转换套件,它与CAN通过总线系统通信通知工作灯泡。这些警告告诉我们,汽车配备了CAN总线。

CAN黑客攻击是对消费者的威胁。CAN有许多无线技术,如蓝牙,用于接听电话或播放音乐。当车载系统接入车辆时CAN总线并具备 Wi-Fi连接能力时,黑客很容易获得CAN接入总线并控制汽车。Wi-Fi热点在汽车中很受欢迎,这让你知道汽车IP地址的人可以跟踪汽车。这导致了汽车制造商的正确CAN保护总线网络上的传输数据。

*内容来源自PathPartner Technology,版权归原作者所有。如果涉及版权问题,请联系和沟通

上海航芯·原厂直连:marketing@aisinochip.com

标签: 1040电阻

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台