STC8G1K08掉电电流有54uA
芯片:STC8G1K08 20PIN硬件:外围有一个分压电路测量电池电压,通过2个500K电阻接入P1.7
软件:P1/P3/P5全部高阻输入,PxIE=0;EA=0;MCU_POWER_DOWN()
问题:掉电后电流有54uA的样子,但如果拆掉分压的上拉电阻,电流就能掉到1uA以下。这个50多的电流是怎么产生的呢?
原理图的PDF发上来,大家好帮忙分析 公司PDF文件有加密,截图见附件,实际IO口有比较大的改动外围电路基本只保留了绿色部分 用的内部晶振,单片机有什么配置不对的地方会产生这个电流吗? 关闭ADC输入引脚的数字输入功能。
P_SW2|= 0x80; //SFR enable
P1IE = ~0x80; //P1.7关闭数字输入功能
谢谢5楼,试过了不行。
刚才发现这个掉电电流还会随便电压增加而增加的,4V在45ua,4.5有60ua,5v有76ua,但我确定2个分压电阻有500K
看不懂这你如果外部不给电源,就没漏电啊,你如给5V
5V/200K = 25uA
原理图有问题,这里分压电阻实际是2个500K的 最新实验如下:
硬件只保留P17口2个500K电阻分压,拆除其它所有外围电路。
IO口全部高阻输入,电流76uA;禁用P17口的施密特触发,电流降到45uA;使能内部上拉电阻,电流降到10uA(符合5V电压,分压下拉500K电阻消耗10uA,MCU电流小于1uA)。
P17设置不标准弱上拉并输出高,电流也是10uA。
所以应该是端口电流为VCC一半时会出现这个异常,哪位大神帮忙分析一下。 楼主,逐条核对下面的提示:
睡眠时IO不耗电的处理方法:
1、对于设置为准双向口、推挽输出、开漏输出低电平的IO,IO本身不耗电,输出电平与外部电路配合成外部电路不耗电的方式即可。
2、设置为高阻或开漏输出高电平的IO,如果悬空,则会因为输入状态不确定导致有电流,以下两种方式任选一种:
A、IO口接一个确定的高电平(电压高于VDD-0.3)或低电平(电压低于0.3V),否则耗电。
B、将IO口对应的数字输入功能关闭(对于STC8系列、STC32系列)。
比如关闭P1.0、P1.1的数字输入:
P_SW2 |= 0x80; //允许操作扩展寄存器
P1IE = ~0x03;//将P1.0 P1.1的数字输入功能关闭
3、睡眠前,禁止ADC(如果已经允许的话),禁止模拟比较器(如果已经允许的话)。
页:
[1]
2