在线时间123 小时
UID3573447
注册时间2019-7-2
NXP金币1545
TA的每日心情 | 开心 2020-12-18 12:56 |
---|
签到天数: 55 天 连续签到: 1 天 [LV.5]常住居民I
管理员
  
- 积分
- 2344
- 最后登录
- 2025-9-6
|
上文小编给大家介绍了一下如何使用VSCode结合cortex-debug插件进行调试的方法。本篇就趁热打铁,进一步深入了解一下如何切换gdb server。让我们可以不仅仅使用JLinkGDBServer进行调试。
根据cortex-debug本身介绍,目前所支持的gdb server类型有: supported types are jlink, openocd, pyocd, pe, stlink, stutil, qemu, bmp and external. 本篇将着重介绍使用pyocd以及如何使用external选项来进行调试。
pyocd的配置与使用
安装pyocd非常的方便,我们通过名字就可以看出来,这东西好像是和python有关,没错,安装也是借助于python:
pip install pyocd
安装完毕后,打开控制台,直接键入pyocd查看是否安装成功:
是否安装成功
安装成功后,我们再来连接一下板子看看是否能够连接成功,这里测试的平台是MIMXRT1060-EVK,输入命令行:pyocd gdbserver --target mimxrt1060,就可以成功连接:
就可以成功连接
接下来,开始编写对应的VSCode配置脚本,请大家着重注意文中标红部分,并根据实际调试情况修改路径。
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Cortex Debug",
"cwd": "${workspaceFolder}",
"executable": " evkmimxrt1060_hello_world.axf",
"request": "launch",
"type": "cortex-debug",
"runToEntryPoint": "main",
"servertype": "pyocd",
"target": "mimxrt1060",
"gdbTarget": "localhost:3333",
"svdFile":
"armToolchainPath": "C:/nxp/MCUXpressoIDE_11.7.1_9221/ide/plugins/com.nxp.mcuxpresso.tools.win32_11.7.1.202301190959/tools/bin"
}
]
}
这样一来就可以开始正式调试了,调试方法和上期一致,点击小绿三角,可以发现程序命中了断点,调试成功。
调试成功
External方式的使用
所谓external其实就是说gdb server是外部开启的,不需要VSCode自动打开。
编写配置脚本,将“servertype”修改为extern,之后需要在本地打开pyocd:
否则会报错:
再次点击绿色小三角,即可进行调试,效果和直接使用pyocd的方式没有任何区别:
需要注意:如果此时点击停止调试,本地打开的pyocd会显示断开连接,在下次调试前,需要手动重新开启pyocd的gdb server。
好了,通过配置VSCode使用不同的gdb server,可以实现对嵌入式程序的精准调试。这将有助于您更好地理解嵌入式系统的运行机制和代码行为,提高开发效率和质量。希望能够为您提供有用的指导和帮助。感兴趣的朋友也可以尝试一下其他server类型,或者使用external来配置使用暂不直接支持的第三方调试插件。
|
|