STM32标准库低功耗
1.STM32标准库时钟树设置2.通过keil内置标准库创建stm32工程3.STM32硬件IIC使用4.STM32FATFS文件系统移植5.STM32SPIFLASH读写6.STM32标准库内部Flash读写7.STM32F103xC,xD,xE引脚定义8.STM32标准库通用定时器PWM生成9.STM32标准库通用定时器计数10.STM32标准库基本定时器11.STM32标准库RTC时钟12.STM32ADC单通道转换13.STM32标准库串口DMA空闲中断接收14.STM32OLED使用
15.STM32标准库低功耗
16.STM32标准库通用定时器输出比较17.STM32标准库通用定时器输入捕获18.STM32硬件IIC使用STM32标准库低功耗
1. 睡眠模式
1.1. 进入以及退出方法
睡眠模式较为简单,仅需要简单调用函数即可,且函数定义处于内核层,不需要引用多余的头文件。
-
睡眠模式:仅内核停止,所有外设仍旧运行。
- 调用"__WFI()"函数,退出方式为任意中断。
- 调用"__WFE()"函数,退出方式为唤醒事件。
2. 停止模式
停止模式:时钟停止,外设停止运行。停止模式的函数定义位于"stm32f10x_pwr.h"头文件中,开启需要使用"RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);"函数打开电源管理外设PWR的时钟。
进入函数:
- void PWR_EnterSTOPMode(uint32_t PWR_Regulator, uint8_t PWR_STOPEntry)
- PWR_Regulator:是否使用调压器。
- PWR_Regulator_ON:开启调压器。
- PWR_Regulator_LowPower:关闭调压器。
- PWR_STOPEntry:停止模式唤醒方式
- PWR_STOPEntry_WFI:任意中断唤醒。
- PWR_STOPEntry_WFE:唤醒事件唤醒。
- PWR_Regulator:是否使用调压器。
3. 待机模式
待机模式的进入方法较为简单,函数定义位于"stm32f10x_pwr.h"头文件中,开启需要使用"RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);"函数打开电源管理外设PWR的时钟。之后调用"PWR_EnterSTANDBYMode()"函数即可进入待机模式。
- 待机模式:关闭所有电源,仅能通过下列事件唤醒:
- WKUP引脚上升沿唤醒
- RTC闹钟事件唤醒
- NRST引脚触发复位唤醒
- IWDG独立看门狗唤醒
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 2 本地部署DeepSeek模型构建本地知识库+联网搜索详细步骤