123456Boy 发表于 2019-7-11 16:59:28

stm32F103ZET6发热严重

使用stm32F103ZET6驱动20路继电器,全部开启后发热严重到死机。各位大神帮帮小弟看看。芯片电压都正常。驱动电路如下

wenyangzeng 发表于 2019-7-11 19:20:57

本帖最后由 wenyangzeng 于 2019-7-11 19:23 编辑

GPIO的驱动能力不仅要考虑单独GPIO的最大灌出电流,还要考虑芯片的允许总供应电流。假设每路GPIO驱动电流为10mA,显然20路GPIO的驱动电流达到200mA,已经超过芯片所能承受的极限了。况且1楼图中晶体管Q6基极没有限流电阻,驱动电流肯定超限了。


EricCheng 发表于 2019-7-11 17:26:10

Q6的基极电阻呢?

rgzdb 发表于 2019-7-11 17:27:18

查查手册,看是不是管脚输出总电流超限了

五哥1 发表于 2019-7-11 19:31:52

如果排除前面的原因,可以一路一路的测试,是否正常,全部正常,再一路一路的增加,增加到15路如果正常,就要考虑电路的限流了。

maxtch 发表于 2019-7-12 00:51:55

还有一个可以尝试的,把 Q6 换成一颗 2N7002 这样的 MOSFET。MOSFET 是电压驱动器件,输入电阻接近无穷,大多数情况下可以省略栅极电阻。

songshiqun2010 发表于 2019-7-12 09:25:57

wenyangzeng 发表于 2019-7-11 19:20
GPIO的驱动能力不仅要考虑单独GPIO的最大灌出电流,还要考虑芯片的允许总供应电流。假设每路GPIO驱动电流为 ...

优秀

风沙太大 发表于 2019-7-12 10:22:23

2、3、6楼正确,使用三极管要限流喔!

toofree 发表于 2019-7-12 10:35:59

本帖最后由 toofree 于 2019-7-12 10:41 编辑

MCU管脚驱动Q6的用法有问题,Q6基极需要串联电阻,并且基极与发射极之间要有对地电阻。

假设你的Q6放大系数为100倍,假设光耦U9输入正向压降1.2V。
那么此时Q6集电极电流估算为(5-1.2)/330=12mA,同时Q6基极电流为0.12mA,理想情况串联电阻值最大为(3.3-0.7)/0.12=21.6K。
保守使用,你可以串联一个5.1K的电阻,那么此时MCU到Q6基极电流为(3.3-0.7)/5.1K=0.51mA。如果基极与发射极间加一个电阻50K,那么多出来的电流为0.7/50K=0.014mA。
单路总电流0.51mA+0.014mA=0.524mA
那么20路的最大电流10.5mA,MCU发热不会太大。

你这电路用了三级驱动,实际U9的电流根本不需要12mA那么大,有个两三毫安足够了。U9到Q8构成达林顿结构,用法可能也有问题。

你的继电器是什么型号?如果驱动电流小于100mA的话,用一只达林顿光耦就可以了。

l441867854 发表于 2019-7-12 11:52:41

Q6 为什么不加电阻?
页: [1] 2
查看完整版本: stm32F103ZET6发热严重