一、功耗控制调整

1、硬件功能调整

2、软件功能调整

3.经验

  • 3.3V供电比5V更省电
  • HSI比HSE更省电
  • 晶振频率越低越省电
  • 读写RAM比FLASH更省电
  • 片上资源会影响功耗,不用的应该用PCG功能关掉。

二、电源管理

怎么进入模式?

进入等待模式:asm("WFI");

进入活跃停机模式:asm("HALT"); //开启AWU再执行此句会进入活跃停机

进入停机模式:asm("HALT"); //没有开启AWU再执行此句会进入停机

三、自动唤醒AWU结构和配置

自动唤醒单元用于单片机活跃停机模式,

1、时钟源

AWU可以选用两个时钟源:LSI和HSE

通过选项字节OPT4中的“CKAWUSEL”位来选择:

置0 ==》LSI (默认);

置1 ==》HSE。

2、时钟源分频系数

通过选项字节OPT4中的“PRSC[1:0]”位来选择:

通过1、2步的设置得到1个粗略的时钟LS

3、修正时钟频率(不常用)

使用AWU_CSR控制/状态寄存器中的“MSR”位和TIM3或者TIM1的输入捕捉通道1来检测LS的时钟频率,发现误差则通过重新配置异步预分频器AWU_APR中的APR[5:0]来进行定时时间修正。

4、配置异步预分频器

配置异步预分频器AWU_APR中的APR[5:0]来配置适当的分频值

APR :预分频系数

5、写时基选择寄存器

写时基选择寄存器AWU_TBR中的AWUTB[3:0]来选择需要的自动唤醒延时间隔

AWUTB: 时间间隔

到底该怎么设置??

参考这张表:

比如:我们想设置6ms定时,则查表可得:AWUTB=0101

根据计算公式:3秒=

其中fLS=128000,则可以计算出:APR=48

再查APR表

确定APR应赋值2E

6、控制位使能

置位控制/状态寄存器(AWU_CSR)的AWUEN位

7、执行HALT命令进入活跃停机

        asm("HALT");

四 具体操作如下

① 开启LSI,同时设置快速唤醒功能,此两个功能都在CLK_ICKR寄存器中.

        CLK_ICKR|=0x0C;  //打开LSI时钟,从活跃停机模式快速唤醒使能

② 确定FLASH进入活跃停机后是否掉电

        FLASH_CR1&=0x0B; //活跃停机模式下Flash不掉电

③ 设置预分频值

        AWU_APR=0x26;    //配置预分频值

④ 设置AWU唤醒时间间隔

        AWU_TBR=0x0C;    //配置AWU唤醒时间间隔

⑤ 使能AWU

        AWU_CSR1|=0x10;  //使能“AWUEN”启动AWU

⑥ 进入活跃停机模式

        asm("HALT");

⑦ 如果写了活跃停机的唤醒中断,会在醒来时触发,所以应该写一个中断响应函数

        #pragma vector=3
__interrupt void AWU_IRQHandler(void)//自动唤醒AWU中断函数
{  //此处写中断响应函数AWU_CSR1|=0x10;//继续使能AWU//asm("HALT");
}

可以把前几步写作一个初始化函数:AWU_init()

        void AWU_init(void)
{CLK_ICKR|=0x0C;  //打开LSI时钟,从活跃停机模式快速唤醒使能FLASH_CR1&=0x0B; //活跃停机模式下Flash不掉电AWU_APR=0x26;    //配置预分频值AWU_TBR=0x0C;    //配置AWU唤醒时间间隔AWU_CSR1|=0x10;  //使能“AWUEN”启动AWU
}

STM8电源模式管理及功耗控制相关推荐

  1. Tbox电源模式管理

    Tbox电源模式 当 Tbox 进行电源模式切换时应该通知 CSP.在车辆熄火(ignition off)后 Tbox 有不同的电源模式.在执行远程车辆信息服务时电源模式将对用户体验产生影响. Tbo ...

  2. 车联网Tbox电源模式管理

    Tbox电源模式 当 Tbox 进行电源模式切换时应该通知 CSP.在车辆熄火(ignition off)后 Tbox 有不同的电源模式.在执行远程车辆信息服务时电源模式将对用户体验产生影响. Tbo ...

  3. 智驾系统的设计瓶颈之:电源管理和功耗分配

    作者 | Orchid 知圈 | 进"滑板底盘群"请加微yanzhi-6,备注底盘 高阶自动驾驶系统在进行架构设计时,其域控内部的架构通常涉及主控芯片MCU.计算芯片SOC.电源管 ...

  4. ubuntu 电源按钮操作_桌面应用|在 Ubuntu 中使用 Slimbook Battery Optimizer 切换电源模式...

    Slimbook Battery Optimizer 是一个美观实用的指示器小程序,它可以让你在安装了 Linux 的笔记本上快速切换电源模式来延长续航时间. Slimbook 是一个销售 预装 Li ...

  5. Android7.0 PowerManagerService 之亮灭屏(二) PMS 电源状态管理updatePowerStateLocked()...

    本篇注意接着上篇[Android7.0 PowerManagerService 之亮灭屏(一)]继续分析量灭屏的流程,这篇主要分析PMS的状态计算和更新流程,也是PMS中最为重要和复杂的一部分电源状态 ...

  6. 恢复Surface Pro 高级电源设置里各类配置项提高外接电源模式下的性能(外接电源莫名很卡,拔掉电源又正常,实则被降频)

    转自:恢复Surface Pro 4高级电源设置里各类配置项提高外接电源模式下的性能 写在前面: 本贴内容:如何恢复Surface Pro 4自带Windows 10系统控制面板-电源选项-更改计划设 ...

  7. 计算机电源高效率模式,Windows7的三种电源模式对硬件工作频率的影响

    Windows7的三种电源模式对硬件工作频率的影响 发布时间:2014-03-09 16:12:38   作者:佚名   我要评论 Windows 7系统提供以下三种电源模式,在不同的模式下工作,电脑 ...

  8. linux-RAID磁盘阵列、进程管理、日志管理、systemctl控制

    RAID磁盘阵列 廉价冗余磁盘阵列RAID – Redundant Arrays of Inexpensive Disks – 通过硬件/软件技术,将多个较小/低速的磁盘整合成一个大磁盘 – 阵列的价 ...

  9. Autosar模式管理系列介绍01-BswM

    本文框架 1.概述 2. BswM属性介绍 2.1 模式仲裁 2.1.1 Rules 2.1.2 LogicalExpression 2.2 模式控制 2.3 基本控制过程 3. BswM功能介绍 3 ...

最新文章

  1. 使用 .NET 框架轻松开发完美的 Web 窗体控件
  2. 子程序与中断程序的异同_【干货】plc怎样理解中断功能,其作用是什么?
  3. harmonyos2.0如何申请,华为鸿蒙HarmonyOS2.0手机开发者Beta版公测申请地址方法_专题_53货源网...
  4. html如何让图片跟字体重叠,CSS设置图片与文字的间距
  5. [转]# python中init和new的区别
  6. python与excel-Python与Excel之间的交互
  7. 前端学习JQuery篇03——基本操作(效果)
  8. 一个简单的string类,读书看报系列(一)
  9. pandas读取csv文件数据并对指定字段使用matplotlib画折线图
  10. 基于强化学习的综合能源系统管理综述-笔记
  11. ckfinder php 漏洞,编辑器漏洞
  12. AJAX框架眼镜穿搭夏天,30度的夏天,男生应该如何穿搭?看这9种时尚组合!
  13. [BUGKU] [PWN] PWN5
  14. 【Godot 插件】获取编辑器上所有的节点
  15. Flink SQL搭建实时数仓DWD层
  16. 印度软件和中国软件工程师_如何成为印度的软件工程师?
  17. 第四代iPod Touch iOS5.1不完美越狱教程
  18. 关于活动开始时间大于结束时间的验证
  19. 渗透测试——bluecms安装及seay代码审计
  20. 系统架构师论文-财务数据仓库系统的设计与实现

热门文章

  1. c#反射,类型XX对象无法转换为类型XX,XX是一样的问题
  2. 2022年最细Java 17新特性,是真的猛,被征服了!
  3. 嵌入式Linux学习笔记之Linux内核裁剪
  4. 前端常说的优化之图片优化
  5. 阿里架构专家教你打通Git任督二脉,20分钟搞定Git工作原理
  6. 傻傻分不清:时间趋势项与时间虚拟变量
  7. python 实现自动化点击界面方案
  8. JavaScript - 将 Allegro 坐标文件转为嘉立创坐标文件(CSV 格式)的工具
  9. PowerDesigner生成带中文注释的ER图
  10. 2021年新媒体运营不可缺少的24大类工具!