当前位置: 首页 > java >正文

STM32-待机唤醒实验

STM32低功耗模式:

  1. 睡眠模式:CM3内核停止工作;外设运行
  2. 停机模式:时钟都停止
  3. 待机模式:1.8v内核电源关闭;功耗最低 

 (配置了RTC时钟不是以下步骤看数据手册)

代码流程:

  • 使能电源时钟
  • 设置WK_UP脚为唤醒源
  • 进入待机模式

代码如下

#include "wkup.h"/*******************************************************************************
* 函 数 名         : Enter_Standby_Mode
* 函数功能		   : 进入待机模式
* 输    入         : 无
* 输    出         : 无
*******************************************************************************/
void Enter_Standby_Mode(void)
{RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR,ENABLE);//使能PWR外设时钟PWR_ClearFlag(PWR_FLAG_WU);//清除Wake-up 标志PWR_WakeUpPinCmd(ENABLE);//使能唤醒管脚	使能或者失能唤醒管脚功能PWR_EnterSTANDBYMode();//进入待机模式
}

主函数代码(一定要在初始前增加延时只有在延时期间才能烧录代码)

#include "system.h"
#include "SysTick.h"
#include "led.h"
#include "usart.h"
#include "wkup.h"/*******************************************************************************
* 函 数 名         : main
* 函数功能		   : 主函数
* 输    入         : 无
* 输    出         : 无
*******************************************************************************/
int main()
{SysTick_Init(72);NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);  //中断优先级分组 分2组LED_Init();USART1_Init(115200);while(1){printf("time: 5\r\n");LED1=0;delay_ms(1000);	//隔1秒显示计数printf("time: 4\r\n");LED1=1;delay_ms(1000);printf("time: 3\r\n");LED1=0;delay_ms(1000);printf("time: 2\r\n");LED1=1;delay_ms(1000);printf("time: 1\r\n");LED1=0;delay_ms(1000);printf("进入系统待机模式\r\n");Enter_Standby_Mode();	}
}

http://www.xdnf.cn/news/14975.html

相关文章:

  • 搭建一款结合传统黄历功能的日历小程序
  • S7-200 SMART :通过以太网下载程序详细步骤
  • ServBay Windows 1.2.0 更新!新增 PHP 设置与 Ollama 支持
  • Docker 高级管理 -- 容器通信技术与数据持久化
  • 人工智能-基础篇-27-模型上下文协议--MCP到底怎么理解?对比HTTP的区别?
  • 如何卸载本机的node.js
  • 【视频观看系统】- 需求分析
  • 沃丰科技海外客服系统综合解决方案
  • 【DB2】load报错SQL3501W、SQL3109N、SQL2036N
  • 持续更新!国内免费使用 claude code 方案
  • LLaMA-Omni 深度解析:打开通往无缝人机语音交互的大门
  • C++学习笔记三
  • 使用 Docker Compose 简化 INFINI Console 与 Easysearch 环境搭建
  • 跨部门协作难以对齐项目进度,如何促进协同
  • 【动手学深度学习】4.10 实战Kaggle比赛:预测房价
  • S7-1500——(一)从入门到精通1、基于TIA 博途解析PLC程序结构(一)
  • 【04】MFC入门到精通——MFC 自己手动新添加对话框模板 并 创建对话框类
  • 从零开始学前端html篇2
  • React 编译器与性能优化:告别手动 Memoization
  • 网关助力航天喷涂:Devicenet与Modbus TCP的“跨界对话“
  • windows指定某node及npm版本下载
  • Linux入门篇学习——Linux 编写第一个自己的命令
  • 【TCP/IP】3. IP 地址
  • 250709-通过命令行上传模型文件到ModelsScope
  • yolo8实现目标检测
  • Mysql: Bin log原理以及三种格式
  • 权限分级看板管理:实时数据驱动决策的关键安全基石
  • python 在运行时没有加载修改后的版本
  • NLP:初识RNN模型(概念、分类、作用)
  • 从救火到赋能:运维的职责演进与云原生时代的未来图景