上文小编给大家介绍了一下如何使用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来配置使用暂不直接支持的第三方调试插件。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !