新手入门
- 积分
- 7
- 金钱
- 7
- 注册时间
- 2019-12-19
- 在线时间
- 1 小时
|
发表于 2019-12-22 13:51:08
|
显示全部楼层
本人是初学者,把遇到的问题和他家分享一下。我用的是ST-LINK-V2,开发环境都是好的,之前也都是可以正常下载和进入DEBUG模式,后来就无法识别STM32芯片了,stlink一直都是识别的。
将BOOT0悬空(之前是接地的)是100%可以识别STM32芯片的。
最后分析后的结论是,程序的问题。如果BOOT0悬空或者拉高,芯片不是从主存储器启动,上电后应该是RESET状态,所以肯定没有问题。接如果如果BOOT0为低,是从主存储器启动,也就是运行了自己写的程序,所以不能识别。所以应该是我的程序运行后才使得芯片不能被STLINK识别。至于程序是什么问题还是让stm32进入了什么状态我也不知道。
我的解决方法是用CUBE重新生成一个干净的工程,再把原来的代码copy进去,然后就完全可以了。建议大家可以检查一下MDK工程的文件树,有没有什么多余的不必要的文件,或者也干脆从新生成一遍。
再次说一下我的结论(只针对我的情况):STLINK无法识别STM32是由于已经下载在芯片里边的程序引起的 |
|