
【OpenOCD与FT4232H】
文章平均质量分 87
ARM Coresight 介绍及 Trace32 的介绍
主公讲 ARM
竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【ARM Coresight OpenOCD 系列 5.1 -- OpenOCD 无法识别CPUID 问题: xxx is unrecognized】
ARM 处理器的 CPUID 和 CPUID 基本寄存器是用于提供处理引擎(PE)识别信息的重要寄存器。这些寄存器帮助软件识别处理器的实现者、设备 ID 及其架构和版本等细节。以下是对 ARM CPUID 寄存器的详细说明。在使用OpenOCD 进行CPU debug的过程中有时会报出 无法识别CPUID的问题,本文将会介绍如何解决这个问题。首先我们来学习下什么是CPUID,以ARM Cortex-M 系列的Core为例进行介绍。如果出错了,后面对于 core 就无法进行debug。进行检查时最终会调用。原创 2024-11-18 17:12:23 · 1483 阅读 · 0 评论 -
【ARM Coresight OpenOCD 系列 6.2 -- Boundary Scan Commands】
OpenOCD 提供了一些用于边界扫描的命令,这些命令最初是为支持基于 JTAG 的硬件测试而设计的。尽管 OpenOCD 的主要功能是支持片上调试,但它也包含了一些边界扫描命令,以便在调试会话期间执行硬件测试。SVF(串行矢量格式)是一种文本格式,用于表示 JTAG 测试模式。在使用 JTAG 作为传输协议的调试会话中,OpenOCD 支持运行这样的测试文件。通过支持 SVF 命令,OpenOCD 进一步扩展了其在硬件调试和测试中的应用范围,使开发者可以灵活地执行边界扫描测试。原创 2024-11-18 14:45:01 · 1078 阅读 · 0 评论 -
【ARM Coresight OpenOCD 系列 6.1 -- JTAG Commands】
OpenOCD 提供了一组低级 JTAG 命令,主要用于开发者在调试 OpenOCD 内部、调试新的 JTAG 适配器或新型的 TAP 设备(如 CPU 或 JTAG 路由器)时使用。对于一般调试任务,尤其是那些不使用 JTAG 作为传输协议的任务,这些命令通常是不可用的。其中 0xfe 对应 IDCODE 的指令,IDCODE 的长度为32bit,所以在选择 IDCODE 这条scanchain 之后,通过JTAG TDI 再打入32bits 数据后就可以将 IDCODE 中的数据。原创 2024-11-18 14:25:00 · 1209 阅读 · 0 评论 -
【ARM Coresight OpenOCD 系列 6 -- DAP declaration (ARMv6-M, ARMv7 and ARMv8 targets)】
用于显示从指定的内存访问端口(Memory Access Port, MEM-AP)获取的调试基地址。该命令对于 ARM ADIv5 和 ADIv6 DAP(Debug Access Port)协议中 MEM-AP 的调试和配置非常有用。选择 DAP 下的某一个AP,DAP 可以挂有 AXI-AP/AHB-AP/APB-AP/JTAG-AP。这个命令的作用是读取 AP 中一些寄存器的内容,也可以配置AP中一些寄存器的值。接下来的都是在某一个DAP下执行的命令。在 OpenOCD 中,AXI-AP的地址为。原创 2024-11-18 11:16:55 · 1170 阅读 · 0 评论 -
【ARM Coresight OpenOCD 系列 5 -- arp_examine 使用介绍】
的时候有些 core 还没有启动, 所以最好在配置脚本中添加。在使用某个AP的时候需要先手动做。因为我们很多时候运行。原创 2024-11-12 21:15:26 · 564 阅读 · 0 评论 -
【ARM Coresight OpenOCD 系列 1 -- OpenOCD 介绍】
OpenOCD (Open On-Chip Debugger) 是一个开源的硬件调试器,可以提供调试、芯片编程和边界扫描等功能。OpenOCD使用标准的JTAG接口与芯片进行通信,因此,可以用于各种不同的硬件平台,包括ARM和 MIPS等。OpenOCD最初是为了支持ARM7和ARM9微控制器而开发的,但现在已经支持大量的设备,包括Cortex-M、Cortex-A、Cortex-R、PowerPC和RISC-V等架构的微控制器和处理器。除了JTAG接口,OpenOCD还支持SWD。原创 2023-11-08 17:20:48 · 4599 阅读 · 0 评论 -
【ARM Coresight OpenOCD 系列 3 -- OpenOCD 常用命令与扫描链scan_chain】
在接口协议选择和复位相关的配置完成后,TAP的配置就需要进行了,有时很难知道当前使用的是什么TAP, 或者怎么去识别它们。: 是用于读取 AP 寄存器的值。name 是 DAP 的名字,apreg 是你想要读取的 AP 寄存器的名字。扫描链中的设备被分配一个唯一的TAP(Test Access Port)ID,它用于在链上识别和访问设备。总的来说,扫描链是JTAG调试的基础特性,OpenOCD提供了一系列命令和功能,用于配置和操作扫描链。:显示MEM-AP编号的ROM表,默认为当前选定目标的当前选定AP。原创 2023-11-09 11:29:31 · 1702 阅读 · 0 评论 -
【ARM Coresight OpenOCD 系列 2 -- OpenOCD 脚本语法详细介绍】
介绍之前我们先了解下什么是SWJ-DP, SWJ-DP (Serial Wire JTAG Debug Port) 是 ARM CoreSight 架构中的一个重要部分,它提供了一个调试端口,允许调试工具通过 JTAG 或 SWD (Serial Wire Debug) 接口访问目标设备。可以通过 JTAG 或 SWD 接口进行访问,可以在这两种接口之间动态切换。这使得 SWJ-DP 可以在支持传统 JTAG 调试以及更简单、更省电的 SWD 调试之间进行选择。原创 2023-11-08 19:30:04 · 1561 阅读 · 0 评论 -
【OpenOCD 与 FT4232H 专栏 1 -- FT4232H 驱动安装】
这里有4个 USB Serial Converter A/B/C/D,是调试器连接PC后自动识别到的。,所以首先要为硬件设备安装适配的驱动。安装 FTDI 驱动 来连接并控制。原创 2024-11-12 16:00:33 · 1099 阅读 · 0 评论 -
【OpenOCD 与 FT4232H 专栏 4 -- FT4232H 实现 USB 转 GPIO】
FT4232H 是一款由 FTDI 提供的多功能 USB 转串行接口芯片,广泛应用于各种电子和嵌入式系统中。它具有四个独立的通道,每个通道可以配置为不同的模式以支持多种通信协议。FT4232H 拥有四个通道(Channel A、B、C 和 D),每个通道都可以被配置为不同的接口模式。特别的是,Channel A 和 Channel B 每个都配备了一个多协议同步串行引擎(MPSSE),这使得它们能够支持多种串行通信协议。原创 2024-11-12 11:09:00 · 1551 阅读 · 0 评论