Open yueduz opened 2 years ago
[env:genericAT32F435ZMT7] build_flags = -Iinclude -DAT_START_F435_V1 platform = arterytekat32 board = genericAT32F435CMU7 framework = at32firmlib debug_tool = jlink ; SWD interface upload_protocol = jlink
如上配置提示“DebugInvalidOptionsError: Unknown debug tool
jlink
. Please use one ofatlink, atlink_dap_v2, cmsis-dap
orcustom
:”
目前仅支持基于cmsis-dap的下载工具使用SWD协议下载或调试。
JLink的支持实现是在计划中的,但因为涉及到需要明确商业授权及其它相关风险,发布时间目前无法确定。
cmsis-dap是arm官方推荐的开源调试工具, ULINK( V2以上是以cmsis-dap实现的)及许多MCU厂家推出的烧录工具也都基于了cmsis-dap实现;雅特力的ATLINK同样也是基于cmsis-dap实现的; STLINK也可以通过烧录特定固件转变成为cmsis-dap。同时也因为软硬件均开源,电商平台上也有不少第三方产品。 判断是否为cmsis-dap的烧录工具的方法也非常简单,在系统识别到的USB设备信息里名称包含CMSIS-DAP的即可。
我使用jlink的唯一原因是它不依赖ide就能使用rtt。其他link我没有找到类似功能。但是我目前可以通过自定义配置来使用jlink了,如果你觉得该问题应该关闭,那请关闭它。
不支持 stlink 的原因也是涉及到商业授权的风险么,同时使用 stm 开发板的话把 stlink 固件烧来烧去也挺麻烦的
@yueduz @l-jesse 目前已经在测试jlink/stlink的支持了,近期会发布新版本。 因为是通过openocd内部的开源方案支持,不依赖工具方的驱动及配套软件,因此也可能无法使用到Jlink专有功能如RTT等。 届时,也会增加提供Linux下调试支持。 欢迎测试并提供反馈。
不包含jlink驱动也侵权吗。jlink驱动由用户自行安装,调用用户安装的驱动不算侵权吧?
您可以参考Custom-J-Link as debugger and uploader在项目目录下的platformio.ini中配置upload_protocol = custom,并增加extra_scripts及debug_server的方式使platformio调用您本地已安装的JLink驱动。
upload 方式能支持 usb-dfu 和 tool-jlink 就太好了。 用 open-ocd 需要替换 libusb 驱动,这个不太方便。
https://registry.platformio.org/tools/platformio/tool-jlink/installation 这个是 pio 官方的包。STM32 系列直接支持。 希望,Aterytek 官方也能予以支持。
如上配置提示“DebugInvalidOptionsError: Unknown debug tool
jlink
. Please use one ofatlink, atlink_dap_v2, cmsis-dap
orcustom
:”