打印
[牛人杂谈]

N76E003低功耗的处理

[复制链接]
1135|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
643757107|  楼主 | 2019-6-11 22:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
低功耗是项目中非常重要的一部分,尤其是对于一些使用电池供电的设备。

    N76E003支持两种低功耗模式,一种是空闲模式,一种是掉电模式,从字面意思一看就知道如果要最求最低的功耗,一定是需要使用掉电模式。在掉电模式下,作者对当前的项目应用中测试出来的最低的功耗是5uA,这个值本人认为已经是非常不错的。针对N76E003如何实现低功耗谈谈个人的经验。

    首先肯定是配置掉电模式,一条set_PD语句都可以直接将MCU进入到POWER DOWN(掉电模式),如果你准备让你的设备从此不再醒来,只有这一条语句还是可以满足你的要求的,因为进入到POWER DOWN模式之后所有的外设都关闭,定时器也不会再跑,如果你无法判断你是否进入到了低功耗模式,那么有一个很简单的方法,本人使用的是KEIL FOR C51的开发工具,进入到调试模式,如果成功进入到POWER DOWN 模式,那么在调试窗口中就会不断的刷新"MCU POWER DOWN"直到将MCU唤醒。

使用特权

评论回复
沙发
643757107|  楼主 | 2019-6-11 22:15 | 只看该作者
所以现在就该说说唤醒的事情。

    N76E003提供了管脚触发中断,可以有管脚高电平中断触发,低电平触发,上升沿触发,下降沿触发,但是在使用这个中断的时候一定需要注意下面的一个问题,如果你需要有多个管脚触发中断,那么你的IO口就一定要选对,因为,N76E003的管脚触发必须是在同一个PORT口下才能触发,这个可以去查看N76E003的管脚中断的框图以及PICON寄存器,换句话说,如果需要两个管脚触发中断,假设一个是P0.1,一个是P1.0,那么你到底是使能哪一个PORT口呢?回到去看PICON寄存器的PIPS[1:0]两位,你会发现,怎么会有四种情况,所以,从这里就可以推出,假设你先使能P0.1再使能P1.0的管脚中断,最后P0.1的配置就被P1.0覆盖了。所以,这个地方是需要注意的,尤其是在画PCB板的时候,需要用到管脚中断的IO脚,都放在同一个PORT种,比如全部放在P0口。否则之后你只能使用飞线的办法,并且需要重新改板。

    当然N76E003还支持其他的一些唤醒,但是作者的项目中一般都只要用到按键唤醒和USB充电唤醒,这些都是通过管脚中断唤醒。

使用特权

评论回复
板凳
643757107|  楼主 | 2019-6-11 22:16 | 只看该作者
我的低功耗的处理方法:

(1)关闭BOD,一个是使用clr_BOD;另一个是在下载选项中,将欠压检测使能去掉,两个都做吧。

(2)关闭ADC,将ADC的使能为关闭,并且关闭ADCS位

(3)寻找到功耗最低的IO口配置的方法,首先必须确保IO口的初始的配置能保证你的系统正常的运行,然后在进入休眠之前该IO口的配置,并将其赋值为1或者0,这样说的原因是为什么呢,因为有一些IO口是你需要正常操作的时候必须配置的模式,但是进入休眠前可以选择更加低功耗的方式,这些都是可以根据你的硬件来进行判断的。但是一定需要注意有上拉电阻的那个IO口吗,优先去设置这些IO口,然后看静态电流的大小。

(4)在唤醒之后第一时间“恢复现场”,重新初始化最开始的配置。

使用特权

评论回复
地板
dongnanxibei| | 2019-6-14 00:01 | 只看该作者
其实还可以使用新唐新推出的低功耗51系列。

使用特权

评论回复
5
yiyigirl2014| | 2019-6-15 00:00 | 只看该作者
一条set_PD语句都可以直接将MCU进入到POWER DOWN(掉电模式)

使用特权

评论回复
6
dongnanxibei| | 2019-6-15 16:26 | 只看该作者
经验之谈。

使用特权

评论回复
7
小灵通2018| | 2019-6-16 23:52 | 只看该作者
低功耗的功能。

使用特权

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

本版积分规则

212

主题

3780

帖子

11

粉丝