lindahnu 发表于 2023-12-22 15:52:05

eclipse Openocd jlink可以添加自定义MCU的flash烧录调试吗?

看到相关帖子是实现openocd+stlink烧录调试stm32,只是配置一个cfg文件就可以了。
通常用MDK调试时需要FLM文件,jlink里也是JLinkDevices.xml添加支持的设备,那openocd是在哪里实现了flash烧录算法呢?
如果自定义MCU用openocd+jlink方式,是不是jlink也必须要支持这个MCU才行?

求指点,谢谢!

emwin 发表于 2023-12-22 23:29:15

可以添加,本身只支持主流的系列,需要自己实现Target.cfg

zcsexp 发表于 2023-12-23 10:17:35

openocd+jlink 形式下,Jlink 就不能使用 Jlink 的官方驱动了
1. 需要先用zadig 将 jlink 驱动切换为 WinUSB(切换驱动后的 Jink 其实就是一个 USB 转 JTAG 工具)
2. 编写 openOCD 的 cfg 文件,让 OpenOCD 按照你想要的方式操作芯片即可
3. 对自定义芯片,默认的 OpenOCD 基本不会有 FLASH 编程算法,意味着你也需要编写自己芯片的 FLASH 编程算法

如果你搞过 RISC-V 就应该知道,RISC-V 芯片的 JTAG 调试通常就是自己编译 OpenOCD(含自己芯片的FLASH编程算法) + 编写自己的 cfg,不过 RISC-V 不用 Jlink(常用 FDTI 这个 USB 转 JTAG 芯片做的Probe)

zcsexp 发表于 2023-12-23 10:17:53

openocd+jlink 形式下,Jlink 就不能使用 Jlink 的官方驱动了
1. 需要先用zadig 将 jlink 驱动切换为 WinUSB(切换驱动后的 Jink 其实就是一个 USB 转 JTAG 工具)
2. 编写 openOCD 的 cfg 文件,让 OpenOCD 按照你想要的方式操作芯片即可
3. 对自定义芯片,默认的 OpenOCD 基本不会有 FLASH 编程算法,意味着你也需要编写自己芯片的 FLASH 编程算法

如果你搞过 RISC-V 就应该知道,RISC-V 芯片的 JTAG 调试通常就是自己编译 OpenOCD(含自己芯片的FLASH编程算法) + 编写自己的 cfg,不过 RISC-V 不用 Jlink(常用 FDTI 这个 USB 转 JTAG 芯片做的Probe)

lindahnu 发表于 2023-12-25 11:14:32

zcsexp 发表于 2023-12-23 10:17
openocd+jlink 形式下,Jlink 就不能使用 Jlink 的官方驱动了
1. 需要先用zadig 将 jlink 驱动切换为 WinU ...

尝试过zadig将jlink驱动切换为WinUSB,这样如果再换回MDK就不能使用了,挺麻烦的。

没有弄过RISC-V,FDTI是什么样的?

如果要编写自己芯片的flash编程算法,能提供一个模版参考吗?

lindahnu 发表于 2023-12-25 14:03:21

emwin 发表于 2023-12-22 23:29
可以添加,本身只支持主流的系列,需要自己实现Target.cfg

有相关模版参考吗?或者相关资料

zcsexp 发表于 2023-12-25 14:31:20

lindahnu 发表于 2023-12-25 11:14
尝试过zadig将jlink驱动切换为WinUSB,这样如果再换回MDK就不能使用了,挺麻烦的。

没有弄过RISC-V,F ...

1. zadig 切换驱动后,MDK 肯定是没法用的,需要再把驱动换回 Jlink 自己的驱动。
2. 在 Keil 的 Debug Setting 中,你肯定选择过 FLASH 下载算法,选择的算法就是对应的 PACK 包里的一个 xxx.FLM 的文件。其中每个下载算法在 Keil 的 PACK 包里就包含下载算法的源码,就是一个 Keil 项目,直接打开编译就可以生成对应的 xxx.FLM

lindahnu 发表于 2023-12-25 15:41:20

本帖最后由 lindahnu 于 2023-12-25 19:09 编辑

zcsexp 发表于 2023-12-25 14:31
1. zadig 切换驱动后,MDK 肯定是没法用的,需要再把驱动换回 Jlink 自己的驱动。
2. 在 Keil 的 Debug...
谢谢,我知道FLM的有模版工程,我想知道的是基于openocd编写的示例,你有具体的示例吗?
页: [1]
查看完整版本: eclipse Openocd jlink可以添加自定义MCU的flash烧录调试吗?