Jlink调试找出程序隐藏BUG

有时候某些设备会在特定的情况卡死,而我们又不容易复现,这时候就需要使用JLink查看卡死设备PC寄存器的值,来定位程序卡死位置

1、第一步

连接好卡死设备,千万不要断电

2、打开JLink Commander

根据芯片型号和连接方式输入连接命令

使用CMD进入JLinke安装目录

输入连接命令

JLink.exe -device STM32H743VI -Speed 10 -if SWD -autoconnect 1

提示连接成功,按h停止运行,查看PC寄存器值,在按s运行一步,在按h查看PC寄存器值,产看程序运行位置

通过反复调试得知程序卡到

PC = 08017FB4, CycleCnt = 1C541E3D这个位置,通过调试找到BUG位置

相关推荐
无人等人2 天前
CyberRT(apollo) IPC(shm)通信包重复/丢包 bug 及解决方案
c++·bug
Urf_read2 天前
改BUG:Mock测试的时候,when失效
bug
賢8432 天前
如何保证bug在改完之后不会引起新bug
bug
永康李3 天前
Pandas:从一个DataFrame中直接索引赋值到另一个索引位置出错的Bug及其解决方案
python·bug·pandas
NPE~3 天前
Bug:Goland debug失效详细解决步骤【合集】
go·bug·goland·dlv失效
Urf_read3 天前
改BUG:远程连接redis失败,可能是防火墙的问题
java·redis·python·bug
Tlog嵌入式5 天前
单片机常见bug记录(长期更新)
单片机·嵌入式硬件·bug
会发光的猪。6 天前
el-input无法输入0.0001的小数,自动转换为0在vue3中的bug
前端·javascript·vue.js·elementui·bug
shandianchengzi6 天前
【BUG】LLM|Ubuntu 用 ollama 部署 DeepSeek 但没输出,llama 有输出
ubuntu·llm·bug·llama·ollama·deepseek
抽象具象化7 天前
Bug日记:Linux中systemctl restart network失败问题,网络故障
linux·运维·bug