AT32 MCU低功耗模式--AT_SURF案例19
简介
AT32F437 系列MCU 工作电压范围为2.6V 至3.6V,为了降低功耗,提供了三种省电模式——睡眠模式,深度睡眠模式和待机模式,使用户可以在CPU 运行时间要求、速度和功耗进行折中取舍。三种低功耗模式下功耗依次为:睡眠模式>深度睡眠模式>待机模式。
资源准备
硬件环境:
对应产品型号的AT-SURF-F437 Board
软件环境:
AT32F435_437_Firmware_Library_V2.x.x\project\at_sufr_f437\examples\low_power_mode
硬件设计
本案例使用的硬件资源有两个独立按键,对应的引脚如下:
对应的电路原理如下:
软件设计
低功耗测试
将按键配置成EXINT 上升沿触发模式,用于唤醒低功耗模式
MCU 进入低功耗模式
按下按键唤醒低功耗模式代码介绍
main 函数代码描述
int main(void)
{
/* 初始化系统时钟 */
system_clock_config();
/* 初始化中断优先级分组 /
nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);
/ 初始化延时函数 /
delay_init();
/ 初始化LCD /
lcd_init(LCD_DISPLAY_VERTICAL);
/ 初始化唤醒引脚(按键2) /
wakeup_pin_init();
/ 使能PWC 时钟 /
crm_periph_clock_enable(CRM_PWC_PERIPH_CLOCK, TRUE);
/ 显示信息 */
lcd_string_show(5, 20, 310, 24, 24, (uint8_t )“Low power mode test”);
/ 延迟1 秒 /
delay_ms(1000);
#if defined TEST_SLEEP_MODE
/ 显示信息 */
lcd_string_show(5, 60, 310, 24, 24, (uint8_t *)“Enter sleep mode”);
lcd_string_show(5, 90, 310, 24, 24, (uint8_t )“Prese button 2 to wakeup”);
/ 进入sleep 模式 /
pwc_sleep_mode_enter(PWC_SLEEP_ENTER_WFI);
/ 从sleep 模式唤醒 */
lcd_string_show(5, 140, 310, 24, 24, (uint8_t )“Wakeup from sleep mode”);
#elif defined TEST_DEEPSLEEP_MODE
/ 显示信息 */
lcd_string_show(5, 60, 310, 24, 24, (uint8_t *)“Enter deepsleep mode”);
lcd_string_show(5, 90, 310, 24, 24, (uint8_t )“Prese button 2 to wakeup”);
/ 配置LDO 模式 /
pwc_voltage_regulate_set(PWC_REGULATOR_LOW_POWER);
/ 进入deepsleep 模式 */
pwc_deep_sleep_mode_enter(PWC_DEEP_SLEEP_ENTER_WFI);
/* 初始化系统时钟 /
system_clock_config();
/ 从deepsleep 模式唤醒 */
lcd_string_show(5, 140, 310, 24, 24, (uint8_t *)“Wakeup from deepsleep mode”);
#endif
while(1)
{
}
}
下载验证
1.在上电1 秒后进入低功耗模式
2.当按键2 按下时从低功耗模式唤醒
AT32 MCU低功耗模式--AT_SURF案例19相关推荐
- AT32 MCU OTG使用----AT_SURF案例16
1.简介 AT32F437 芯片内部含有两个独立的OTGFS 模块,支持控制传输.大容量.中断和同步传输, OTGFS 模块由OTGFS controller.内置物理层(PHY)以及独立1280 字 ...
- MCU低功耗模式浅析
1.低功耗简介 MCU的低功耗有三种,分别是待机模式.睡眠模式以及停止模式. 在系统或电源复位以后,微控制器处于运行状态.运行状态下的 HCLK 为 CPU 提供时钟,内核执行程序代码. 当 CPU ...
- 转《MCU低功耗设计》
关键词: 低功耗设计, 无线通信产品, LoRa长距离, Contiki系统, 能耗实时跟踪 引言: 能耗对电池供电的产品来说是一个重大问题,一旦电能耗尽设备将"罢工".在< ...
- 【STM32】【STM32CubeMX】STM32CubeMX的使用之八:低功耗模式及MCU唤醒
文章目录 0.前言 1.低功耗模式简介 2.CubeMX设置 3.软件设计 下载工程文件: https://gitee.com/Joseph_Cooper/stm32-cube-mx-stm3 ...
- SH367309 BMS 锂电池保护板方案 该电池管理系统由SH367309和MCU实现,其主要功能包括:充电管理、放电管理、容量计、安全保护、数据备份、ISP、静 置功耗和低功耗模式等
SH367309 BMS 锂电池保护板方案 该电池管理系统由SH367309和MCU实现,其主要功能包括:充电管理.放电管理.容量计.安全保护.数据备份.ISP.静 置功耗和低功耗模式等 烧写工具 W ...
- stm32低功耗模式下mcu的实际功耗(ST芯片手册)
STM32F103xC. STM32F103xD和STM32F103xE增强型产品支持三种低功耗模式,可以在要求低 功耗.短启动时间和多种唤醒事件之间达到最佳的平衡. ● 睡眠模式 在睡眠模式,只有C ...
- RS485通信--AT_SURF案例No.10
RS485通信–AT_SURF案例No.10 简介 RS485通常采用两线制总线,为半双工通讯,常用于工业控制,理论上最大传输距离可达到1200米.总线上可以连接多个设备,在使用时只需要将设备的A口和 ...
- STM32开发 -- 低功耗模式详解
很多单片机都有低功耗模式,STM32 也不例外.当 CPU 不需继续运行时,可以利用多个低功耗模式来节省功耗. 这部分不是我负责,但是也是有必要看一下的. 参看: STM32F1开发指南-库函数版本_ ...
- 32怎么通过一个按键实现不同工作模式_stm32几种低功耗模式的实现和差别
点击上方蓝字关注我哦- 01 前言 按功耗由高到低排列,STM32具有运行.睡眠.停止和待机四种工作模式.上电复位后 STM32 处于运行状态,当内核不需要继续运行,就可以选择进入后面的三种低功耗模式 ...
最新文章
- git 查看修改的代码行数,新增的文件以及删除的代码行数
- 今天说的是必须要熟练掌握的归并排序
- 我的世界服务器称号显示,服务器插件 称号 超级好用
- nginx:413 Request Entity Too Large 及 修改 PHP上传文件大小配置
- 初中数学分几个模块_【初中数学】8大模块61个必考易错知识点!
- Android系统(127)---Android6.0存储中加入总内存和系统内存项和在西语下把,换成.
- redis常用操作-键的生存时间
- 转载一篇短小精悍的博文:强可学习在什么条件下与弱可学习等价
- eclipse调试java web_eclipse调试web项目
- AngularJs+bootstrap搭载前台框架——基础页面
- php 置多条cookie,php 在cookie存储多个的简单示例
- 不同修饰符的访问权限(private,缺省(默认即default),protected,public)
- 专升本计算机综合-数据结构篇
- 神经网络训练集和测试集,神经网络验证集作用
- Ubuntu 域名解析失败解决
- 浏览器插件:脚本注入插件Tampermonkey(油猴)
- 谷歌浏览器打开本地堡垒机应用发布服务器cmd的方法
- dedecms联动筛选_织梦dedecms联动筛选[伪静态版]
- aria2的安装使用
- CMPedometer 计步器的使用—— 基于API分析