环境
win11 + vscode 1.81.0
 wsl2
 ardupilot
利用gdb工具在vsCode中实现 Ardupilot SITL的断点调试
优点:可在vsCode中实现断点调试。
 参考文献:https://ardupilot.org/dev/docs/debugging-with-gdb-using-vscode.html
- 安装gdb工具
 打开wsl,进入ardupilot目录
 使用vscode中的终端安装:bash sudo apt install gdb

- 设置 SITL:./waf configure --debug
- 设置 VSCode Debugger
 Run ~> Add Configuration ~> 编辑launch.json:
    "configurations": [{"name": "(gdb) Attach Copter","type": "cppdbg","request": "attach","program": "${workspaceFolder}/build/sitl/bin/arducopter","MIMode": "gdb","setupCommands": [{"description": "Enable pretty-printing for gdb","text": "-enable-pretty-printing","ignoreFailures": true},{"description": "Set Disassembly Flavor to Intel","text": "-gdb-set disassembly-flavor intel","ignoreFailures": true}]},
- 运行仿真SITL:sim_vehicle.py -v ArduCopter -f quad --console --map -D
- 将代码和运行中的二进制实例进行 attaching:
 Run ~> Start Debugging ~> 选择对应的实例,如下图:
  
- 这样就可以进行断点调试了:
  
- 可以利用断点调试查看飞控逻辑的控制流、信息流、函数调用逻辑等等…