嵌入式系统应用在汽车领域快速增长。许多车辆设计使用CAN进行电子控制单元 (ECU) 之间以及ECU和传感器,执行器和显示器的通信。从制动系统到信息娱乐系统的子系统都提供实时通信的功能。
工程师通常都会使用示波器来抓取CAN总线数据,与通信采集卡不同,示波器不仅可以进行协议分析,还可以看到物理层传输情况,从软硬件两方面来帮助工程师了解分析总线情况。
一、什么是 CAN 总线?
控制器局域网络 (CAN) 为最初针对汽车应用设计的总线结构,但是,它也在其他领域找到用武之地。CAN 总线是在不同类型电缆(具体取决于应用)上运行的均衡(差分)2 线接口。此标准规定了几种不同数据速率,1 Mb/s 为 CAN 的最快速率。最新版本 CAN FD(灵活数据速率)已经将传输速度升至 10 Mb/s,同时还提高了包有效载荷数据字段最大长度。为了保持信号质量,总线需要在电缆的两端使用 120Ω 终端电阻,以确保阻抗匹配。
自 1980 年代推出以来,CAN 总线一直用于在电子控制单元 (ECU) 之间以及与车辆传感器之间传输数据。
二、联网汽车中的 CAN 总线
近年来,汽车中产生、传输和接收的数据量大大增加,并且在未来还会继续增加。如今,许多汽车都包含 80 多个电子控制单元 (ECU),它们通过不同的总线网络连接。在未来几年,我们预计这个数字将超过 100,因为一些豪华汽车使用的 ECU 数量已达到 150 个。
汽车子系统间的集成度提高意味着除了处理传感器和致动器信号外,还有许多 ECU 同时在更多的串行总线上通信。例如,ECU 通过 CAN(对于关键系统)和 LIN(对于优先级较低的控件,例如车窗和后视镜)通信极为常见。
三、CAN 总线故障排除
由于驾驶员的安全依赖于这些系统的正常通信,因此确保 CAN 总线配置正确至关重要。幸运的是,当您有了合适的工具,排除 CAN 总线故障就变得很容易。在这个简短的指南中,我们将介绍故障排除技巧和快速完成任务所需的工具。
四、如何用示波器调试解码的 CAN 总线协议
1、CAN总线触发
进行CAN总线触发时,若使用默认的上升沿触发,会出现波形跳动,不能稳定触发在屏幕中间的情况,此时可以使用总线触发。
2、设置CAN / CAN FD总线解码
在配备 CAN 解码和触发功能的泰克示波器上,按下前面板总线按钮可以设置示波器的CAN总线解码信息。为了示波器能够正常解码,需要输入一些基本参数:
CAN标准
信号类型
输入通道
比特率
电压阈值
采样点(以位时间的百分比表示)
CAN总线是差分信号。示波器可以使用无源探头进行总线解码,若使用差分探头则可以提高信号的保真度和抗噪性。
3、了解CAN/CAN FD总线解码信息
CAN信号被解码并显示为总线波形(底部)和事件表(顶部)
CAN报文解码后的元素,会使用不同颜色来显示。
对于工程师,时间表格式可能更有用。这种带有时间戳的总线活动显示可以很容易地与软件列表进行对应,并提供传输速度的简单计算。
事件表还提供与波形显示的链接。您可以单击表格中显示的报文,将会自动跳转到对应波形,配合旋钮可以放大相应的总线信号和生成的解码总线波形,并显示在屏幕的下半部分。
4、DBC文件解析