自定义串行总线功能的使用方法

发布时间:2022-05-17 阅读量:1311 来源: 我爱方案网整理 发布人: Aurora

随着嵌入式技术的发展,串行总线技术也被越来越多的应用于各个领域。比如CAN 是Controller Area Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议。此后,CAN 通过ISO11898 及ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议。  

 

为满足用户对特殊串行总线调试的需求,一些测试仪器厂商推出了具备自定义串行总线触发和分析功能的示波器产品,用户可根据自己的需要进行简单的设定就能实现非通用串行总线的调试。下文以横河电机公司新推出的DLM2000示波器为例,详细说明一下此种功能。  

 

总线,英文叫作“BUS”,即我们中文的“公共车”,这是非常形象的比如,公共车走的路线是一定的,我们任何人都可以坐公共车去该条公共车路线的任意一个站点。如果把我们人比作是电子信号,这就是为什么英文叫它为“BUS”而不是“CAR”的真正用意。当然,从专业上来说,总线是一种描述电子信号传输线路的结构形式,是一类信号线的集合,是子系统间传输信息的公共通道。通过总线能使整个系统内各部件之间的信息进行传输、交换、共享和逻辑控制等功能。如在计算机系统中,它是CPU、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过主机相连接,外部设备通过相应的接口电路再于总线相连接。  

 

自定义串行总线的触发:  

 

串行总线的分析功能详解


自定义串行总线触发设定菜单


图表1 自定义串行总线触发设定菜单
  

DLM2000支持标准的CAN/LIN/I2C/SPI/UART总线触发,在串行总线触发菜单中有一项是(User Define)。进入这一项就可以进行自定义总线的触发设置。在此菜单中可以进行如下设置:  

 

数据源(DATA):指定通道作为数据信号源。  

 

激活电平(Active):指定将高电平或者低电平设为逻辑1。  

 

时钟(Clock):对于通过时钟同步的总线,可以进行时钟的相关设置,选择时钟源以及设定在时钟信号的上升沿或下降沿进行采样。  

 

片选(CS):当使用时钟同步信号时,通过片选信号来控制数据的有效性。可以设置片选源,以及高电平有效或者低电平有效。  

 

锁存(Latch):可以指定时钟同步采样的数据源码型与指定码型进行比较的时间。可以是定锁存源,以及在锁存源的上升沿或是下降沿进行比较。  

 

触发条件:可以将数据码型作为触发条件使用。当采样得到的数据源的码型与指定码型一致时,数据码型触发条件成立。 


自定义串行总线触发条件设定


图表2 自定义串行总线触发条件设定
  

数据码型的长度可以设为1~128位,并制定按照二进制或是十六进制来设定码型。  

 

比特率:当没有同步时钟源时,可以对信号的比特率进行设定,设定范围从1kbps至50Mbps,步进值为1kbps。  

 

下面是一个带时钟同步信号的自定义总线触发示例。  

 

首先正确设置时钟源、数据源、片选信号和锁存信号,再设置好相应的触发条件,就可以像通用串行总线一样进行触发,捕获所需要的信号波形。

  

时钟同步串行总线触发示例


图表3 时钟同步串行总线触发示例
  

自定义串行总线的分析:  

 

解码设置  

 

进行自定义总线的触发之后,就可以进行解码分析了。同样要进行相应的设置。与触发的设置类似,要指定数据源、时钟源、片选源和锁存源,并进行相应的设定;对于没有时钟同步的总线,还要指定比特率,可设置范围也是1kbps~50Mbps。之所以要设置解码起始点,是因为示波器没有内置自定义总线的协议,无法判断总线的帧结构,所以需要手动指定解码的起始点。


自定义串行总线分析设定

 

图表4 自定义串行总线分析设定
  

解码显示  

 

打开解码显示功能,就可以在数据波形的下方看到解码的结果了。由于没有内置协议,所以无法以帧结构方式进行显示。


自定义串行总线解码显示格式设定


图表5 自定义串行总线解码显示格式设定
  

数据搜索  


如果想在大量的数据中找到自己想要的数据,可以使用搜索功能,指定搜索的数据位数以及数据码型,执行搜索后很快就会将搜索到的结果标记出来并显示在缩放窗口中。搜索设定与触发条件设定类似。  

 

下面以列车上常用的MVB串行总线为例,介绍自定义串行总线功能的使用方法。  

 

多功能车厢总线MVB(MultifuncTIon Vehicle Bus)是列车通信网络TCN(Train CommunicaTIon Network)为实现位于同一车辆或固定重联的不同车辆中的标准设备之间的数据通信而定义的总线标准。  

 

MVB总线上的串行数据采用异步差分传输的曼彻斯特码,曼彻斯特编码中的每个数据位应用以下规范编码:  

 

a)一个“1”的编码在位元的前半部分为“高”,后半部分为“低”;  

 

b)一个“0”的编码在位元的前半部分为“低”,后半部分为“高”;  

 

如果曼彻斯特码中出现整个位元的高电平(NH)或整个位元的低电平(NL),则被认为非数据符,用于特殊场合,如:帧头,帧尾标识。  

 

MVB总线属于异步传输总线,所以在进行触发和分析时不需要设置时钟源、片选和锁存等信号,只需要设定正确的比特率与合适的开始点。MVB总线的比特率一般为1.5Mbps,正确设置就可以了。  

 

需要注意的是开始点的指定。因为MVB总线采用曼彻斯特编码,不同于常用的高低电平来确定逻辑“0”和“1”的方式,所以只有开始点的位置很合适才能正确解码。  

 

设置好之后,解码结果会显示在波形下方,通过人工对比可以简单判断解码是否正确。通过显示设置可以将解码结果显示为二进制、十六进制或者ASCII形式,便于读取。 


MVB串行总线触发分析

 

图表6 MVB串行总线触发分析
  

如上面示例那样,如果所调试的总线不是CAN,LIN,I2C,SPI以及UART这些通用串行总线,DLM2000的自定义串行总线分析功能可在一定程度上为用户的分析工作提供便利,而且不用付出高昂的费用。这也是当初开发这个功能的初衷。

 


相关资讯
核心对比!无源晶振与有源晶振在结构和工作原理的本质区别

无源晶振与有源晶振是电子系统中两种根本性的时钟元件,其核心区别在于是否内置振荡电路。晶振结构上的本质差异,直接决定了两者在应用场景、设计复杂度和成本上的不同。

温度稳定性对RTC晶振的计时误差影响与分析

RTC(实时时钟)电路广泛采用音叉型32.768kHz晶振作为时基源,但其频率稳定性对温度变化极为敏感。温度偏离常温基准(通常为25℃)时,频率会产生显著漂移,且偏离越远漂移越大。

从参数到实践!剖析有源晶振的频率稳定度、老化率及正确接线方案

有源晶振作为晶振的核心类别,凭借其内部集成振荡电路的独特设计,无需依赖外部电路即可独立工作,在电子设备中扮演着关键角色。本文将系统解析有源晶振的核心参数、电路设计及引脚接法,重点阐述其频率稳定度、老化率等关键指标,并结合实际电路图与引脚定义,帮助大家全面掌握有源晶振的应用要点,避免因接线错误导致器件失效。

如何对抗晶振老化?深入生产工艺与终端应用的防老化指南

晶振老化是影响其长期频率稳定性的核心因素,主要表现为输出频率随时间的缓慢漂移。无论是晶体谐振器还是晶体振荡器,在生产过程中均需经过针对性的防老化处理,但二者的工艺路径与耗时存在显著差异。

无源晶振YSX321SL应用于高精度HUD平视显示系统YXC3225

在现代汽车行业中,HUD平视显示系统正日益成为驾驶员的得力助手,为驾驶员提供实时导航、车辆信息和警示等功能,使驾驶更加安全和便捷。在HUD平视显示系统中,高精度的晶振是确保系统稳定运行的关键要素。YSX321SL是一款优质的3225无源晶振,拥有多项卓越特性,使其成为HUD平视显示系统的首选。