OpenOCD
文章平均质量分 95
送南阳马生序
余之业有不精、德有不成,非天质之卑,则心不若他之专耳,岂他人之过哉!
展开
-
OpenOCD 代码学习(5)继续 openocd_thread()
1)server_init() 的执行逻辑如下:2)总的来说,添加了两个 service 到 struct service *services; 链表中:1)target init 命令的大概执行逻辑如下:2)init_targets、init_target_events、init_board 三个命令是定义在 src/target/startup.tcl 文件中三个调用过程 proc。可以让用户在初始化过程中的进行功能补充。3)接下来在 target_init() 函数中,主要有以下内容:(1)根据全局变原创 2024-09-30 07:30:00 · 633 阅读 · 0 评论 -
OpenOCD 代码学习(4)其它配置命令
1)上一节我们学习了 adapter 与 transport 命令,这一节我们接着学习配置文件中的其它命令。-d3 也作 --debug-level = 3。即指定输出日志级别。-f 也作 --file。这里指定开发板为合宙 air001 芯片。2)这一节主要是学习 air001.cfg 文件的内容。这里简单提一下加载的两个文件:swj-dp.tcl 和 mem_helper.tcl。原创 2024-09-29 07:30:00 · 938 阅读 · 0 评论 -
OpenOCD 代码学习(3)adapter 与 transport
1)上一节中,我们知道 parse_config_file() 函数会边解析配置文件,边执行其中的命令,那么接下来我们将主要学习一下 OpenOCD 配置文件中涉及到的命令。2)我们知道,要编写一个 OpenOCD 驱动,除了要实现烧录算法外,还要编写关于 MCU 的配置文件。OpenOCD 主要有 3 类配置文件(具体内容见官方文档第 6 节 配置文件参考),这里我们简单看一下。3)interface:指定调试器的适配器驱动。原创 2024-09-28 07:30:00 · 1056 阅读 · 0 评论 -
OpenOCD 代码学习(2)执行命令
上一篇文章我们学习了 OpenOCD 注册命令的过程,这一篇我们来年一下 OpenOCD 执行命令的逻辑。原创 2024-09-27 07:30:00 · 1595 阅读 · 0 评论 -
OpenOCD 代码学习(1)注册命令
1)OpenOCD 与调试器、MCU 的关系:(1)OpenOCD 运行在 PC 机上,用户可以通过 GDB 调试、Telnet 连接 Socket 以及 CMD 命令行的方式执行命令(2)OpenOCD 将命令发送到 MCU 端需要双方约定协议。目前常用的协议为 SWD 和 JTAG,实现这些协议的工具有 DAPLink、ST-Link、JLink 等(3)在 MCU 端内置了 DAP(Debug Access Port)模块,它接收到命令,通过 AHB 总线控制 CPU 内核。原创 2024-09-26 07:30:00 · 1528 阅读 · 0 评论