STM32是一款基于ARM Cortex-M内核的微控制器,广泛应用于嵌入式系统设计中。在复杂的硬件调试和测试环境中,边界扫描(Boundary Scan)技术是集成电路测试的一种重要方法,尤其适用于那些在板级集成后难以直接访问的引脚。本教程将带你深入理解如何在STM32中实现边界扫描,并通过提供的源代码、工程文件和相关文档,掌握这一高级技巧。 我们需要了解什么是边界扫描边界扫描是一种内置自测(Built-In Self Test, BIST)技术,由IEEE 1149.1(也称为JTAG标准)定义。它允许通过JTAG接口来检测和诊断电路板上的每个I/O引脚,即使这些引脚在物理上被其他组件遮挡。JTAG接口由四条线组成:Test Access Port (TAP) 控制器的数据输入(TDI)、数据输出(TDO)、测试模式选择(TMS)和时钟输入(TCK)。 在STM32中实现边界扫描,你需要配置STM32的JTAG功能,这通常涉及以下步骤: 1. **配置JTAG引脚**:确保STM32的四个JTAG引脚(TCK、TMS、TDI和TDO)正确连接,并在初始化代码中设置它们为JTAG模式。 2. **编写TAP控制器**:TAP控制器是JTAG协议的核心,负责在测试模式之间切换。你需要编写相应的软件代码来控制TAP的运行,如通过TMS信号来选择不同的测试逻辑状态。 3. **实现BYPASS指令**:BYPASS指令是最简单的JTAG指令,用于验证JTAG链路的完整性。当发送BYPASS命令时,每个设备只需要返回连续的四位BYPASS响应,如果读到的响应正确,则表明链路正常。 4. **读取ID码**:每个JTAG设备都有一个唯一的ID码,可以用来识别和区分不同器件。通过执行IDCODE指令,你可以读取STM32和其他JTAG设备的ID码,确认它们是否正确连接和工作。 5. **边界扫描IO状态**:边界扫描的主要功能是读取或写入芯片的I/O状态。通过编程实现边界扫描寄存器,你可以控制并读取I/O口的状态,这对于检查引脚的连接性或进行功能测试非常有用。 在提供的源工程和参考PDF中,你应该能找到如何实现上述步骤的详细代码和指南。BSDL(Boundary-Scan Description Language)文件则包含了设备的JTAG特性描述,用于解释设备如何响应JTAG指令。 通过学习这个STM32边界扫描的实践项目,你不仅可以提升对STM32微控制器的理解,还能掌握JTAG接口和边界扫描技术,这对于提高硬件调试效率和产品质量具有重要意义。实践中遇到问题时,可参考提供的源代码和文档,一步步解构和分析,相信你最终能够熟练掌握这一技能。
2024-10-09 20:35:46 16.22MB stm32 边界扫描
1
libbsdl 我的实验库用于读取BSDL(边界扫描定义库)。 我希望最终它会被OpenOCD和其他人使用。 我也一直在以一种更有限的方式使用它来为gEDA和朋友生成符号的想法在玩弄。 从长远来看,有很多人想要开源的VHDL工具,而BSDL是VHDL的派生产品。 我可以想象以后人们会重用源代码来创建VHDL预处理器。 所有这些都只是在这一点上的沉思。 在此功能可用于任何用途之前,我还有很多编程工作要做。 我想从下至上而不是自上而下地进行编程。 首先想到的是将文件放入易于遍历的数据结构中。 这是预处理器的工作。 然后,可以关闭文件,并将数据结构移交给一个或多个由调用libbsdl的程序操作的后处理器工具。 这样做的原因而不是暗示bsdl文件的简单grep之类的功能,是因为您可以在文件中包含一些状态机信息以及变量,常量等之间的基本关联。结果是,这就是文件的内容必须将其更像是代码与芯片功能
2024-08-14 18:36:23 28KB
1
Diatem 法国 边界扫描 介绍文档 软件界面
2023-10-23 10:14:54 517KB Diatem 法国 边界扫描
1
详细介绍了JTAG的目的,好处,以及JTAG规范的建立发展过程
2023-03-06 09:09:39 1.08MB JTAG
1
IEEE Standard for Boundary-Scan Testing of Advanced Digital Networks 边界扫描1149.6规范,主要介绍了AC测试部分的cell和指令
2022-05-30 22:03:45 9.04MB IEEE Std JTAG 边界扫描
1
JTAG边界扫描仪 JTAG边界扫描板调试/测试软件 JTAG边界扫描仪是一种JTAG软件工具,用于调试或测试具有JTAG接口的任何电子板。 主要特点 Windows版本GUI。 在C中实现。 BSDL文件支持。 目标IO引脚的采样和控制模式(SAMPLE&EXTEST)。 通过JTAG仿真的I2C总线。 通过JTAG仿真的SPI总线。 通过JTAG仿真的MDIO总线。 通过JTAG仿真的并行端口总线。 JTAG总线扫描和设备自动检测。 BSDL文件自动加载。 脚本支持。 用于远程控制的套接字接口。 支持的探针 基于FTDI FT2232H的JTAG探头支持(Olimex ARM-USB_OCD-H,Lattice HW-USBN-2B,Xilinx ...)。 JLINK JTAG探针支持。 注意:为了支持JLink探针,需要将JLinkARM.dll复制到JTA
2021-08-27 10:16:42 180KB tool debug jtag boundary-scan
1
边界扫描的介绍,边界扫描与JTAG的关系“边界扫描(Boundary Scan)测试发展于上个世纪90年代,随着大规模集成电路的出现,印制电路板制造工艺向小,微,薄发展,传统的ICT 测试已经没有办法满足这类产品的测试要求。由于芯片的引脚多,元器件体积小,板的密度特别大,根本没有办法进行下探针测试。一种新的测试技术产生了,联合测试行为组织(Joint Test Action Group)简称JTAG 定义这种新的测试方法即边界扫描测试。”
2021-08-17 21:26:23 858KB JTAG BS
1
边界扫描测试协议剖析,从1149_1到1149_6。
2021-05-18 13:38:50 228KB 边界扫描 测试协议
1
IEEE Standard for Test Access Port and Boundary-Scan Architecture 2013版 边界扫描1149.1标准2013版本,主要是DC部分,包括cell设计、测试指令介绍等
2021-03-22 15:07:31 4.49MB IEEE Std JTAG 边界扫描
1