调试嵌入式系统设计中的低速串行总线
出处:维库电子市场网 发布于:2023-07-21 14:19:51
嵌入式系统可能包含许多不同类型的器件,包括微处理器、微控制器、DSP、RAM、EPROM、FPGA、模数转换器、数模转换器和I/O。这些在传统上一直使用宽并行总线相互通信及与外部世界通信。然而今天,嵌入式系统设计中使用的越来越多的构件将用串行总线代替宽并行总线。 尽管串行总线提供了大量的优势,但它们也给嵌入式系统设计人员带来了某些重大挑战。
在并行结构中,总线的每个组件都有自己的信号路径。可能有16条地址线、16条数据线、一条时钟线和各种其它控制信号。通过总线发送的地址或数据值会通过所有并行线路同时传送。因此,使用大多数示波器和逻辑分析仪中的状态触发或码型触发功能相对简便。同时,可以一目了然地了解在示波器或逻辑分析仪显示屏上捕获的数据。例如,我们使用逻辑分析仪从微控制器中采集时钟线、地址线、数据线和控制线。通过使用状态触发,我们隔离了我们查找的总线。为“了解”总线上发生的情况,我们需要查看每条地址线、数据线和控制线的逻辑状态。
在串行总线中,所有这些信息都必须以串行方式在相同的少数导线(有时是一条)上发送。这意味着一个信号可能包括地址信息、控制信息、数据信息和时钟信息等。而传统示波器和逻辑分析仪是不能有效处理这类信号的。即使是比较简单的串行标准,如I2C,与并行协议相比,观察总线上传输的内容仍要明显困难得多。I2C采用分开的时钟线和数据线,因此至少在本例中,您可以使用时钟作为参考点。但是,您仍需要找到消息开头(数据变低,时钟为高),手动检查和记下每个时钟上升沿上的数据值,然后把各bit位整理成消息结构。在采集中解码一条消息就会需要几分钟时间,而且您还不知道这是不是实际要找的消息。如果不是,您需要在下一条消息上重新开始这一麻烦的、容易出错的过程。只触发查找的消息内容,但多年来示波器或逻辑分析仪上使用的状态触发和码型触发并不能发挥作用。它们是为了考察多条通道中同时发生的问题而设计的。为处理串行总线,其触发引擎深度必需有几千种状态(每个bit位一个状态)。即使存在这种触发功能,但为所有这些bit位逐个状态编程也不是件好玩的事,必须找到一种更好的方式!
本文将介绍如何使用泰克新推出的DPO4000系列示波器中提供的功能,去帮助嵌入式系统设计人员去应对这些挑战。通过DPO4EMBD串行触发和分析应用模块,DPO4000系列成为处理I2C总线的嵌入式系统设计人员的强大工具。前面板有两个总线按钮(B1和B2),允许用户把到示波器的输入定义为一条总线。I2C总线的设置菜单。
通过简单地定义时钟和数据位于哪条通道上及用来确定逻辑1和0的门限,示波器可以理解通过总线传输的协议。有了这些功能,示波器可以触发任何指定的消息级信息,然后把得到的采集数据解码成有意义的、容易理解的结果,采集到感兴趣的事件,然后逐条分析,找到终问题。
版权与免责声明
凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。
本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。
如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。
- EPS Global - 谁需要嵌入式安全?2024/4/22 15:39:31
- 什么是嵌入式SoC2024/4/3 16:20:28
- EasyARM-i.MX283(7)A 默认供电方案2024/3/28 17:39:53
- EasyARM-i.MX283(7)A 的快速入门2024/3/27 17:29:30
- 非线性数字滤波器:用例和示例代码2024/3/14 16:34:20