已经解决了,boot0下拉电路搞错了,改过来就好了。。。。事情多了脑容量就不够用
-------------------------------
已经排查过的措施:
1,电源上电波形看不出什么异常,也换了其它电源,似乎问题依旧
2,1117前后都加了固态电容,STM32的各个0.1uF也都焊了(放在PCB背面,基本就在对应的引脚正下方用过孔连接)
3,复位试了0.1uF、1uF、0.1uF+上拉电阻(单片机内部有弱上拉,又加一个)似乎都差不多
4,复位用了复位芯片MAX809,也看了809的上电波形,比电源上电晚了200多ms,但问题还是没有改善
更可恨的是,
通电之后用镊子把复位脚和地短路一下再放开,总是能复位成功
只要能复位,运行很稳定,似乎没出现过死机、程序跑飞
另外加了一小段代码,在时钟配置之前控制LED亮灭几秒钟,相当于延时之后才启动晶振给MCU,但复位不成功的时候,根本没运行LED那段代码。能运行LED代码的时候,配置时钟也都没问题
再补充一个,刚才用了三节锂电池串起来供电,似乎情况稍微好转一点,但又似乎没有。。。反正还是有很多时候不能顺利启动。是不是这个芯片也该换一下是是了?
本帖最后由 风过琴弦 于 2024-1-6 08:31 编辑
从硬件方面检查的几点建议:
1.排查一下晶振问题是否正常,特别是晶振电容参数、质量,必要是更换一下
2.复位电路一定是排查的重点
3.“锂电池串起来供电,,可能会好一点”
电源供电电路的接地也要排查
4.STM32单片机本身的接地要对照手册进行排查
qwqwqw2088 发表于 2024-1-6 07:51 从硬件方面检查的几点建议: 1.排查一下晶振问题是否正常,特别是晶振电容参数、质量,必要是更换一下 ...
多谢了,boot0下拉电路搞错了,改过来好像就好了。。。。事情多了脑容量就不够用
用焊风枪再吹一下,多数情况还是虚焊的问题。
STM32的MCU在实验室环境下,运行非常稳定。