STC8F2K16S2当电源被频繁拉低,出现疑似死机的情况
使用STC8F2K16S2,和别的板子共用电源,当别的板子后接上来时,电容充电拉低了电源,STC8F会低压复位,但频繁的拉低电源,有时STC8F没有有效的复位,好像死机了一样,没有反应了。简化后的原理图见图片,47uF电容和电阻相当于别的板子,当A点和B点接通后,由于47uF电容充电,拉低了STC8F的电源,频繁的断开接上A点和B点,有时STC8F会没有反应,正常工作时,红色和绿色LED亮,没有反应时,有时是绿色常亮,有时是红色常亮,有时是都不亮。
附上监控程序:
#include "STC8A.H"
sbit Green = P2^2;
sbit Red = P2^1;
void main()
{
P0M1 = 0x00;
P0M0 = 0x00;
P1M1 = 0x00;
P1M0 = 0x00;
P2M1 = 0x00;
P2M0 = 0x00;
P3M1 = 0x00;
P3M0 = 0x00;
P4M1 = 0x00;
P4M0 = 0x00;
P5M1 = 0x00;
P5M0 = 0x00;
P6M1 = 0x00;
P6M0 = 0x00;
P7M1 = 0x00;
P7M0 = 0x00;
Red=0;
Green=1;
while(1)
{
Red = ~Red;
Green = ~Green;
}
}
用二极管隔离,增大电容容量 STC8F2K16S2稳定出货老型号一般不会出现类似情况,坛友可以加下我QQ给您安排最新版本的STC8H1K28-36I-LQFP32样片测试,抗干扰复位等更强大。
QQ:2593903262
0513-55012940 这种应用不好,常见到这种应用,一接通被控电路就导致MCU复位或无法正常复位。
10uF 5V对47uF 0V接通,会出现电流冲击,10uF瞬间被47uf分走大部分能量,10uF电压变成5/5.7=0.833V,然后又恢复到5V,这个冲击会导致复位甚至复位不良。常见的是IO控制一个MOSFET给别的电路供电,有更大的电容,就很容易出现这种现象。
采取措施减小冲击,延缓充电时间,就可以避免。 减少后端电容。或者添加负载开关芯片,控制浪涌 小李非刀 发表于 2020-3-9 17:07
这种应用不好,常见到这种应用,一接通被控电路就导致MCU复位或无法正常复位。
10uF 5V对47uF 0V接通,会出 ...
如果这种应用都不能正常复位,只能说复位电路有缺陷,实际中受外界冲击干扰所引起的欠压情况远比这应用复杂的多 小李非刀 发表于 2020-3-9 17:07
这种应用不好,常见到这种应用,一接通被控电路就导致MCU复位或无法正常复位。
10uF 5V对47uF 0V接通,会出 ...
复位是正常的,也是能接受的,但死机就头疼了,目前在15系列上没有发现,但STC8F很容易就会重复出现。 看门狗了解一下,亲! 加大vcc的滤波电容,试试。 饭桶 发表于 2020-3-9 18:41
看门狗了解一下,亲!
单片机自带的狗吗?开了狗也会死,估计是复位没有成功,狗也没有初使化 二极管隔离后加100uf以上电容 有条样的其他坛友可以试一下有没有这种情况,希望是我的问题 饭桶 发表于 2020-3-10 11:33
二极管隔离后加100uf以上电容
确定是芯片问题,并且必需用这个型号时才用这个方法 楼主设计一个电路,当STC8F上的电源电压低于0.8伏时就把STC8F的电源短路,估计能解决这个问题 在STC下载软件里把低压检测电压设置高一些 modbus 发表于 2020-3-10 11:50
楼主设计一个电路,当STC8F上的电源电压低于0.8伏时就把STC8F的电源短路,估计能解决这个问题 ...
这样比较麻烦了,看来还是要回到STC15上 饭桶 发表于 2020-3-10 12:20
在STC下载软件里把低压检测电压设置高一些
每档都试过了 饭桶 发表于 2020-3-10 12:20
在STC下载软件里把低压检测电压设置高一些
没有用的。STC8A型号0.4伏左右是个坎,STC8F还不清楚 估计是一个bug,感觉不够15系列的成熟 控制电源是比较稳妥的办法,低于一定电压值,断开MCU的电源。
页:
[1]