debugging - 调试会话后应用程序不工作并重置 stm32
问题描述
我是这个社区的新成员。我有一个使用 stm32l431cct6 微控制器的定制板,在使用 Keil uVision 或 Eclipse IDE 对板进行编程后,我有一个奇怪的问题。我正在使用另一个人制作的固件,我看到调试会话工作正常。换句话说,在调试会话和上电复位之后,应用程序可以正常工作。
有一次,在调试过程中,带有 JTAG 接口的电缆断开了。在此事件之后,我的开发板在使用 Keil 或 Eclipse 进行闪存编程时遇到了问题。然后 Cortex-M4 处理器处于 AMR 模式,为了解决这种情况,我使用 J-Link Commander 解锁设备。解锁后,我可以用 USART 探针重新刷新电路板。
现在是这样的情况:
- 如果我使用基于 ST Flash Loader 的应用程序使用 USART 对固件进行编程,一切正常。
- 如果我尝试使用 Keil 调试我的电路板,使用与其他人相同的设置,闪存编程就完成了,我可以调试代码。但是重置后(我关闭并打开电源)应用程序无法启动!这似乎是闪存擦除和编程的问题。这很奇怪,因为在“JTAG 事故”之前,一切正常。
您对解决这种情况有什么建议吗?
解决方案
推荐阅读
- python - 如何对python pandas中的剩余列值求和?
- java - java中的模式1234 2341 3421 4321 1234 2341 ...n行
- javascript - JS 如何处理同名的多个变量?
- gitlab - Gitlab CI 将文件传送到远程服务器(rsync)
- azure-active-directory - 如何撤销在 Azure AD 代表用户流上生成的令牌?
- javascript - 节点找不到文件
- react-native - 具有大数据的聊天应用程序中的平面列表(对话屏幕)会减慢其他组件的速度
- python - 何时使用 SQLalchemy 核心与 SQLalchemy ORM?
- java - super.onBackPressed(); 导致图像返回重复,因为我调用了两次。我该如何重写它来解决这个问题?
- python-3.x - 将相似用户划分为社交组