980578873 发表于 2023-4-1 15:56:05

STC8H单片机进入掉电模式后功耗


调试好几天了,单片机进入掉电模式后功耗高达75uA,单片机供电接单节锂电电池供电,原理图如下同步也挂在附件处。简单的测试代码如下,求助各位大佬帮忙看下是哪里有问题,谢谢。

#include<stc8h.h>
#include<intrins.h>
void gpio_init()
{
      P1M0=0x00;
      P1M1=0x00;

      P3M0=0x00;
      P3M1=0x00;

      P5M0=0x00;
      P5M1=0x00;
}
void gpio_pd()
{
      P1M0 = 0x00;
      P1M1 = 0x0d;

      P3M0 = 0x00;
      P3M1 = 0x40;

      P5M0 = 0x00;
      P5M1 = 0x00;
}
void main()
{
      gpio_init();
      while(1)
      {
            gpio_pd();
            PCON=PCON|0x02;
            _nop_();
            _nop_();
         _nop_();
         _nop_();
         gpio_init();
      }               
}




吴四辉 发表于 2023-4-1 20:24:12

你试试在PCON掉电的前面加一句把所有IO设为高阻态试试

980578873 发表于 2023-4-2 13:39:28

吴四辉 发表于 2023-4-1 20:24
你试试在PCON掉电的前面加一句把所有IO设为高阻态试试

辉哥,好的,我试试,

神农鼎 发表于 2023-4-2 15:12:45

设为高阻输入的问题,那你外部要给他准确的高或者低,否则每个口都有可能 60uA附近的漏电流

下面这些对地有电阻的I/O, 你如能设置成高阻输入,然后再进入主时钟停振的省电模式为好



980578873 发表于 2023-4-2 21:21:09

神农鼎 发表于 2023-4-2 15:12
设为高阻输入的问题,那你外部要给他准确的高或者低,否则每个口都有可能 60uA附近的漏电流

下面这些对地 ...

好的,我还有些疑问:P3.4引脚、P1.2引脚、P3.7引脚和P3.6引脚这些引脚在进入掉电模式之前分别要设置为 什么状态然后再进入主时钟停振的省电模式?盼复,谢谢。

神农鼎 发表于 2023-4-2 23:56:05

你将每个I/O干啥用的,外围是啥,写出来,我来请研发改你的贴,相当于填表

你将每个I/O干啥用的,外围是啥,写出来,我上班时间请研发改你的贴,相当于填表
1,   P1.2 :
2,   P1.3 :
3,   P1.4 :
4,   P1.5 :
5,   P1.6 :
6,   P1.7 :
7,   P5.4 :
8,   VCC :
9,   REF+ :
10,GND :
11,   P3.0 :
12,   P3.1 :
13,   P3.2 :
14,   P3.3 :
15,   P3.4 :
16,   P3.5 :
17,   P3.6 :
18,   P3.7 :
19,   P1.0 :
20,   P1.1 :




980578873 发表于 2023-4-3 09:56:54

神农鼎 发表于 2023-4-2 23:56
你将每个I/O干啥用的,外围是啥,写出来,我来请研发改你的贴,相当于填表

你将每个I/O干啥用的,外围是啥 ...
1,   P1.2 :接LED,串联有限流电阻,高电平点亮LED
===设置成高阻输入,但必须关闭数字输入,一般不要没事高点亮,讲了20年了
2,   P1.3 :驱动NPN三极管,串联电阻接到三极管的基极
===设置成高阻输入,但必须关闭数字输入
3,   P1.4 :上拉10k
4,   P1.5 :上拉10k
5,   P1.6 :接LED,串联有限流电阻,高电平点亮LED
===设置成高阻输入,但必须关闭数字输入,一般不要没事高点亮,讲了20年了
6,   P1.7 :NC
===设置成弱上拉,高输出
7,   P5.4 :复位
8,   VCC :DC_3V
9,   REF+ :DC_3V
10,GND :GND
11,   P3.0 :测试点,NC
===设置成弱上拉,高输出
12,   P3.1 :测试点,NC
===设置成弱上拉,高输出
13,   P3.2 :上拉10k
14,   P3.3 :接传感器输出,低电平有效,MCU进入掉电模式
===设置成高阻输入,关闭数字输入
15,   P3.4 :ADC检测电池电压,有电阻分压
===设置成高阻输入,但必须关闭数字输入
16,   P3.5 :ADC检测NTC电压,有电阻分压
===设置成高阻输入,但必须关闭数字输入
17,   P3.6 :驱动NPN三极管,串联电阻接到三极管的基极
===设置成高阻输入,关闭数字输入
18,   P3.7 :接按键,低电平按下
===设置成弱上拉,高输出
19,   P1.0 :接LED,串联有限流电阻,高电平点亮LED
===设置成高阻输入,但必须关闭数字输入,一般不要没事高点亮,讲了20年了
20,   P1.1 :NC
===设置成弱上拉,高输出

楼主后来补了个简化图,贴这



980578873 发表于 2023-4-3 09:58:35

神农鼎 发表于 2023-4-2 23:56
你将每个I/O干啥用的,外围是啥,写出来,我来请研发改你的贴,相当于填表

你将每个I/O干啥用的,外围是啥 ...

已回复您了,帮忙加急看一下,我周末加班也搞不定,谢谢,支持STC.

神农鼎 发表于 2023-4-3 13:47:54

你大概按这个思路对下,可能我有笔误,另外你贴个图为何不清晰,我们下图为何比你的图清晰




980578873 发表于 2023-4-3 13:51:52

980578873 发表于 2023-4-3 09:56
1,   P1.2 :接LED,串联有限流电阻,高电平点亮LED
===设置成高阻输入,但必须关闭数字输入,一般不要没事 ...

IO口设置为弱上拉,是不是设置IO口为准双向口的意思?
页: [1] 2 3 4 5 6
查看完整版本: STC8H单片机进入掉电模式后功耗