如何用示波器测试CAN信号
时间: 2024-07-08 19:48:12 | 作者: 企鹅电竞直播官网
作为目前车载网络领域最成熟、应用最广泛的通信总线之一,CAN总线具有传输可靠性高、速度快、易用等特点。由于其涉及到用户的人身安全,所以在汽车研发、生产、检测、维修等过程中均需做严格的测试。由于CAN信号是差分信号,在测试过程中通常要使用差分探头来来测试,但在研发阶段的板级测试中,确认安全的前提下能够正常的使用普通低压无源探头来测试。今天给大家介绍是如何测试CAN信号。本文将以SDS5054X+STB3演示板+普通无源探头展示CAN的测试,供各位参考。CAN协议有4种帧类型,分别为数据帧、远程帧、错误帧、过载帧。其中数据帧和远程帧又分为标准格式和扩展格式两种。标准格式的标识符为11位,扩展帧为29位。由7个不同的场组成。分别为帧起始、仲裁场、控制场、数据场、CRC场、应答场、帧结尾。
1.1.1、帧起始(SOF)标志数据帧和远程帧的开始,仅由一个“显性”(逻辑电平“0”为显性电平,“1”为隐性电平)位组成,只有在总线空闲时才允许发送信号。1.1.2、仲裁场CAN总线上发送的每一条报文都具有唯一的一个11位或29位的ID。CAN总线”,所以ID号越小,则该报文拥有越高的优先权。因此一个为全“0”标志符的报文具有总线传输上的最高优先权。标准格式帧和扩展格式帧的仲裁场格式不同:
标准格式里,仲裁场由11位识别符和RTR位组成。识别符位为ID28…ID18。识别符后为RTR位。RTR位在数据帧必须为“显性”,在远程帧必须为“隐性”。
扩展格式里,仲裁场包括29位识别符ID28…ID0(基本ID 11位,扩展ID 18位)、SRR位、IDE位、RTR位。基本ID首先发送,其次是SRR、IDE位。
1.1.3、控制场控制场由6个位组成。标准格式里的帧包括数据长度代码,IDE位及保留位R0。扩展格式里的帧包括数据长度和保留位R1和R0。保留位必须显性发送。
1.1.4、数据场数据场由数据帧中的发送数据组成。它可以为0-8个字节,每字节包含了8个位,MSB先发送。1.1.5、CRC场CRC场包括CRC序列,其后是CRC界定符。CRC序列为循环冗余检验码。CRC序列之后是CRC界定符,它包含一个单独的“隐性”位。
1.1.6、应答场应答场长度为2位。包含应答间隙和应答界定符。在应答声里,发送两个“隐性”位,当接收器正确地接收到有效报文,接收器就会在应答间隔期间向发送器发送“显性”位以示应答。1.1.7、帧结尾每一个数据帧和远程帧均由一标志序列界定。由7个“隐性”位组成。1.2、远程帧远程帧目的是请求发送具有同一标识符的数据帧;远程帧由6个不同位的场组成。分别为帧起始、仲裁场、控制场、CRC场、应答场、帧结尾。与数据帧相反,远程帧的RTR位是“隐性”的。1.3、错误帧错误帧由错误标志和错误界定符两部分组成:
错误标志分为主动的错误标志和被动的错误标志。主动的错误标志由6个连续的“显性”位组成,被动的错误标志由6个连续的“隐性”位组成。
1.4、过载帧过载帧包括过载标志和过载界定符。过载标志由6个“显性”位组成;过载界定符包括8个“隐性”位。2.示波器测试在充分了解CAN协议后,接下来通过示波器展示如何测试CAN总线。示波器在测试总线时通常用触发和解码一起进行。触发能够准确的通过实际的需求捕获预期事件,而解码则可以把捕获到的信号进行解码。2.1、 触发配置首先我们通过STB3演示板输出CAN信号并使用无源探头通过测试CAN_L和GND,接入到示波器,然后根据信号特征设置合适的电压和时基档位。配置如下:2.1.1、总线选择首先进入触发菜单,类型选择为“总线”,总线协议设置为“CAN”。如图1所示。
进入信号菜单,信源设置为信号输入通道,本次输入通道为C1。阈值电平需设置到波形区域内,通常为波形中部。如图2所示。图2:信号配置
进入触发设置菜单,设置合适的触发条件,如图3所示。从图能够正常的看到触发条件分为开始条件、远程帧、ID、ID+数据、错误帧。从上节CAN协议不难得知,这些触发条件均为CAN协议的里规定的帧特征,是捕获CAN信号的核心。依据需求设定触发条件,进而监控CAN总线上的信息。开始条件:即为数据帧和远程帧的帧起始(SOF)。把开始条件作为触发条件时,示波器捕获所有具有SOF特征的信号。
远程帧:远程帧的结构与数据帧类似但不传输数据,只为传输数据作初始化。其显著的标志是RTR为“隐性”电平。设置为此条件时,示波器将只捕获远程帧。
ID(地址):为数据帧和远程帧的仲裁场识别符。识别符ID越小优先级越高。
ID+数据:专门为数据帧准备的触发条件,可以指定具体的地址和数据在,方便捕获特定数据。
进入菜单将标准波特率配置为输入信号的波特率。CAN 最大支持1Mbit/s的传输速率。STB3演示板的波特率为50Kbit/s。如图4。图4:波特图形
解码功能能把触发捕获的信号进行解码并以一定格式显示出来。按下示波器的“Decode”按键进入解码菜单并开启总线:解码菜单2.2.1、解码列表
配置与输入信息相同的波特率。2.2.5、协议复制若用户非常清楚触发或解码的协议信号和协议配置,可使用此功能快速复制触发参数到解码,或复制解码参数到触发。2.3、 参数配置小结通过触发配置和解码配置,我们大家可以看到CAN总线只要配置好触发条件、触发和解码的阈值电平、波特率以及数据显示格式即可得到CAN数据。下图为STB3输出的CAN 信号输入到示波器,示波器的触发条件为开始条件,触发和解码的波特率均设置为50kbit/s即可得到CAN 的解码数据,如图8所示。图8:总线解码从上图中,我们能够正常的看到,解码列表里显示了与波形相对应的解码数据: