此例子可以测试sleep时候的功耗,测试的时候 要注意sleep退出时间,不能让其反复立马进去,要不然,不好测试。


参考miniC编程助手测试例子,方便自己测试验证
//===========================================//
// 休眠
//主要介绍了省电模式和掉电模式
//省电模式介绍了用计数器唤醒和IO唤醒,
// 例中介绍了T16唤醒后且num自加超过100后退出休眠,即针对不是IO脚电平变化的唤醒条件的唤醒
// IO唤醒的唤醒条件可参考掉电模式,其他不变
//掉电模式介绍了IO唤醒
// 例中介绍了IO脚电平变化后唤醒,即针对IO脚电平变化的唤醒条件的唤醒
//===========================================//
#include "extern.h"
byte CLKMD_BK;
//=======省电模式=========
byte num;
word reload_T16;
BIT KEY : PA.4;
bit LED : PA.3 //定义LED灯的引脚
void Save_power(void)
{
//======User can add code=====
//进入省电模式前动作,如关灯、关计数器等
//============================
CLKMD_BK = CLKMD; //保存休眠前的时钟
num = 0;
while(1)
{
$ CLKMD ILRC/1,En_IHRC

本文档介绍了如何在嵌入式系统中实现省电和掉电模式,通过计数器和IO唤醒条件进行测试。示例代码展示了如何使用MiniC编程助手在两种模式下设置唤醒条件,以及进入和退出低功耗状态的细节。测试时需注意避免立即重新进入睡眠以确保准确测量功耗。
最低0.47元/天 解锁文章
1116

被折叠的 条评论
为什么被折叠?



