专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
STM32
STM32烧毁的原因
2019-08-17 10:16
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
STM32/STM8
4317
2
1221
自己想搞过平衡车,于是参照网上的最小系统搞了个电路图,很简单就是最小系统。控制两个步进电机,步进电机驱动芯片是A4988,就是那种3D打印机常用的电机驱动。
电路分两块,一块是最小系统,一块是步进电机驱动插板及电源模块。最小系统采用的是网上买的转接板,
100
脚的转接板,芯片是
STM32F103VBT6
。最小系统很简单,就是加个晶振,两个电容。然后就是去耦电容。去耦电容焊在两个杜邦插脚上。其实要更简单是晶振都可以不要。板子背面加了滤波电容,找了两个胆电容焊上。第一次用胆电容,本来一看以为是画线那边是负极,因为觉得跟二极管一样,还有就是普通的电解电容也标记的是负极。不过还是上网查了下,才发现胆电容画线那边是正极。差点犯错爆掉。另外还加了个贴片二级管做指示灯。就这样上电
,
用
ST-LINK V2,
芯片很容易就读出来了。然后下载程序点灯,都
OK
。下载些网上的程序做各种实验一点问题都没有。最小系统是成功了。
然后是转接板了,用洞洞板,把网上买得1117-3.3v的电源模块焊上去。再加了电机驱动A4988的插座,以及最小系统的插座,还有网上买得MCU6050模块。然后是洞洞板飞线。飞线感觉好麻烦,好多线。电源采用的是普通12V开关电源。A4988驱动电机用12V。STM32用3.3V。
电源接入方式是采用
5.5*2.1MM
电源座
DC-005
,没有安装开关。
然后下载程序。测试。电机转动正常。试了下平衡,有些问题。
开始调试,不过突然间,就闻到一股焦糊味道。发现
1117
电源
芯片烧了。取下
1117
芯片测量电源短路,再把最小系统取下来
发现就不短路了。
测了下最小系统电源正负极短路。原来
STM32
正负极短路了。
于是上网搜索,
”STM32
短路
”
发现好多搜索结果,都是
STM32
容易烧成
VCC
和
GND
短路,包括意法半导体官方论坛都有这样的
帖子。
有的说要加
EVD
什么,有的说电源要加什么压敏电阻,或双向二极管,以及什么防静电焊接等等。网上搜索了几十篇帖子,都是电源短路,但是都没有说清楚原因。
我想是不是因为我的
电源不好,于是在
1117
前面加了个
7805
芯片,先把电压降到
5V
,再降到
3.3V
。
于是乎立马开始焊接,很快搞好,试机,
OK
。通电正常。
又开始测试平衡,心想这下没什么事了。可以没过多久,突然又出问题了。发现
STM32
又烧成电源短路。好心疼啊,上
QQ
群各种咨询,无果。还遇到共鸣,有的
QQ
好友也有这种情况。有的说
A4988
驱动需要光耦隔离等等意见,不过我发现我家的
3D
打印机,用的就是
A4988
驱动,与
ARDUINO
控制板
IO
都是直接连接并没有采用光耦隔离。
想了很久都没有想出问题的所在,于是想是不是飞线太多,那里短路了。于是想自己画电路板。于是开始了漫长的画电路板之路,没有多少时间,慢慢学习。半年多了才慢慢画出了电路板。
电源模块
步进电机模块。
晶振模块
启动设置及指示灯模块
USB模块
MPU6050和蓝牙模块插座。
最小系统模块步进电机模块设置了4个,这样以后不用平衡车后,还可以做其他用途。可以多驱动两个步进电机。
这是PCB.
OK一切搞定,找人帮忙制作了PCB双面板。手工制作的双面板,过孔都是用电阻引线焊接的。
PCB正面。
PCB背面。焊好原件,心里之爽啊。这下可以好好玩一下了。
这是我的平衡车,用两个35步进电机做的。平衡车支架是用3D打印机打的。网上有支架卖,但是有点小贵,还好家里有3D打印机自己DIY一个吧。 好一切 组装到位OK,平衡车终于稳稳的站起来。不过程序不是自己编的,什么PID驱动不是很懂。只是把IO端口给改过来就OK了。 可是好景不长,没多久,STM32又短路了。还把78M05电源芯片都烧了。感觉好困难啊,是不是不太专业的原因啊!又是上网搜索答案,QQ群里请教,还是没有找到真正原因。QQ群里面还有的人说已经烧了100多片STM32了。很恼火。网上搜很久都没有找到解决方案。烧了4片STM32后,我再也不敢试了,反复的想原因。在未焊接STM32芯片的情况下用万用表测得5V,及3.3V的电源输出都很正常。还好家里买了台示波器,还是拿示波器先看看什么原因嘛。接上示波器一看吓一跳。原来在刚插上电源瞬间,又很高电压。瞬间的波动一下就没有了。大喜,以为找到原因了。是这个电源不好,另外又换了几个电源,都是这个情况。有点茫然了。然后又到面包板电源上去实验,发现插上的瞬间也有这个情况。不过面包板电源有个开关,我关掉开关,再打开开关却没有瞬间的电源波动。按动开关和插拔插头,得到的是不同结果,于是仔细研究插头结构,发现这种DC-005插头每次插拔的时候是先接触到正极,再接触到负极。恍然大悟。一定要先接通负极再接正极。 接下来采取了三个措施防止STM32烧毁,1.在电源正极处加一个开关。2.在STM32与12V驱动模块连接IO口上加一个1K电阻。3.在STM32正极电源处加一个150mA的自恢复保险。(应为芯片规格书上说STM32最大电流150mA)。然后把STM32芯片焊上去,开始试验。 就再也没有烧毁STM32。也不知道上面三种方案的那种起了作用。 最后偶然看到一篇文章“闩锁效应”,才知道真正原因是闩锁效应,是CMOS工艺所特有的寄生效应,严重会导致电路的失效,甚至烧毁芯片。闩锁效应是由NMOS的有源区、P衬底、N阱、PMOS的有源区构成的n-p-n-p结构产生的,当其中一个三极管正偏时,就会构成正反馈形成闩锁。要真正解决“闩锁效应”当系统由几个电源分别供电时,开关要按下列顺序:开启时,先开启COMS电路的电源,再开启输入信号和负载的电源;关闭时,先关闭输入信号和负载的电源,再关闭COMS电路的电源。所有以前单电源5V供电就从来没烧过芯片。但是要满足这种开关顺序也是很麻烦,要用两个开关,而且不小心开关顺序出错还得烧毁芯片。于是自行设计了个,双电源,高电压延迟通电电路。如图,当上电时用一个PMOS开关控制电源12V关闭。等到7805稳定输出电压后,给电容C5充电,然后Q4,三极管导通,带动Q3 PMOS导通,满足了先开信号电源,后开高压动力电源的要求。关闭时没有想到更好的办法就采用电容延迟的方法。 关闭12V电源后高压侧的电容小,低压侧采用大容量电容器。 所以就是先关闭了高压电源,低压侧由于电容储电量大,延迟一会儿再断开电源。于是彻底解决了困扰多年的STM32烧毁问题。(注:根据网上查询资料,讨论STM32烧毁的帖子,最早是在2010年)
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
enan
1楼-- · 2019-08-17 12:42
一个图图都看不见啊,少年
加载中...
lg28702426
2楼-- · 2019-08-17 13:46
看不到图,可以看我的博客
http://blog.sina.com.cn/s/blog_859350350102ww4o.html
加载中...
一周热门
更多
>
相关问题
STM32F4上I2C(在PROTEUS中模拟)调试不通的问题
6 个回答
芯片供应紧张,准备换个MCU,MM32L系列替换STM32L系列的怎么样?
7 个回答
STM32同时使用两个串口进行数据收发时数据丢包的问题
5 个回答
STM32F103串口通信死机问题
4 个回答
STM32WLE5CC连接SX1268在LoRa模式下能与 SX1278互通吗?
2 个回答
STM32开发板免费用活动
7 个回答
stm32 处理 DHT11占用太多时间,大家程序是怎么设计的
8 个回答
分享一个STM32单片机做的离线编程器代码
9 个回答
相关文章
ST公司第一款无线低功耗单片机模块有效提高物联网设计生产效率
0个评论
如何实现对单片机寄存器的访问
0个评论
通过USB用STM32片内自带Bootloader下载程序及注意事项
0个评论
欲练此功必先自宫之STM32汇编启动,放慢是为了更好的前行
0个评论
×
关闭
采纳回答
向帮助了您的网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
STM32
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
关闭
您已邀请
15
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
一周热门 更多>