打印
[应用方案]

N76E003 低功耗(掉电模式&定时唤醒)

[复制链接]
1069|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
磨砂|  楼主 | 2021-8-1 16:06 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式




#include "N76E003.h"
#include "Common.h"
#include "Delay.h"
#include "SFR_Macro.h"
#include "Function_define.h"

#define uint unsigned int
#define uchar unsigned  char

uint WKTCount=0;
bit WKTFlag=0;

sbit LED=P0^4;
sbit TS1=P0^3;


void main (void)
{

Set_All_GPIO_Quasi_Mode;
        WKCON=0x03;//预分频64
        RWK =255-153;//定时1s
//                WKCON =0x07; //预分频配置2048
//                RWK =255-244;//设置为50s定时——72个为一小时
          set_EWKT;        //使能定时唤醒中断
                set_WKTR;        //运行定时唤醒功能
                EA = 1;                //开启总中断
                while(1)
                {
                        if(WKTFlag)//判定是否溢出
                        {
                                WKTCount++;
                                WKTFlag=0;
                                        if(WKTCount>=60)//每分钟亮一次灯
                                        {
                                                        LED=0;
                                                Timer1_Delay10ms(100);
                                                        LED=1;//灯闪烁
                                                WKTCount=0;
                                        }               
                                ADCCON1 = 0X00;//关闭ADC
                                clr_BODEN;//关闭欠压检测
                                set_PD;// 进入掉电模式
                        }
                }
}

//---------定时唤醒中断服务程序--------------
void WakeUp_Timer_ISR (void)   interrupt 17   
{
                WKTFlag=1;
          clr_WKTF;//清除WKT溢出标志位  
}




最后通过测量串联在VCC上的10欧电阻,得到的电压值,转换为电流大约是60μA,我的万用表精度只有这么多了,再低也无法测量了。据说论坛的大神能做到5μA,关闭各类时钟我也尝试过,区别不大,所以在程序里就没写入。我从最开始的230μA到60μA,已经尽力了,但还是希望各位同学分享更厉害的低功耗配置。


使用特权

评论回复
沙发
磨砂|  楼主 | 2021-8-1 16:07 | 只看该作者
后续补充
我从1月27日开始,每小时进行一次唤醒,使用锂电池对xc6204供电,但是唤醒的时间还是出现了较大误差,对定时唤醒有较高要求的,请慎用该功能。

27日每小时误差时间-8s

30日每小时误差时间-1s

03日每小时误差时间+11s左右


更新补充说明
目前以N76E003单片机为主控的小气象站已开始试运行,这是今回传的数据,通过下图可以看出,最开始运行时误差时间达到了两分钟,后随着温度逐渐减小,误差时间也慢慢变小。



使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

85

主题

3956

帖子

2

粉丝