PWR外设

2023-11-10 07:59
文章标签 外设 pwr

本文主要是介绍PWR外设,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • PWR电源管理单元
    • PWR结构
      • stm32供电模块
      • 三种低功耗模式
    • 标准库函数使用模板
      • 函数使用模板
      • 使能函数
      • PWR标志位

PWR电源管理单元

PWR(Power control)电源控制

  • PWR管理stm32内部电源供电,可实现电压检测器和低功耗模式。
  • PVD(电压检测器)可监控VDD电压,低于某一阈值时触发中断,执行紧急关闭任务。
  • 低功耗模式:睡眠模式(Sleep)停机模式(Stop)待机模式(Standby)

PWR结构

stm32供电模块

在这里插入图片描述

VDDA模拟部分的供电。
VDDI/O电路,待机电路,独立看门狗,电压调节器。
电压调节器(1.8V):负责CPU内核,存储器,内置外设。
VBAT后备供电区RTC。。。

三种低功耗模式

在这里插入图片描述

睡眠模式:

  • 唤醒后从暂停的地方继续运行
  • SLEEPONEXTI为决定STM32是否立刻进入睡眠模式(或等中断处理完成后再睡眠)
  • I/O口维持原有运行状态
  • WFI进入的睡眠模式,可被任意一个NVIC响应的中断唤醒
  • WFE进入的睡眠模式,可被唤醒事件唤醒

停止模式:

  • 唤醒后从暂停的地方继续运行
  • 1.8V区、PLL、HSI、HSE断电,SRAM和寄存器内容不丢失
  • I/O口维持原有运行状态
  • 中断或唤醒事件发生后,HSI被选中为系统时钟
  • 电压调节器处于低功耗模式,启动时会有一定延时
  • WFI进入的停止模式,可被任意一个EXTI中断唤醒
  • WFE进入的停止模式,可被任意一个EXTI事件唤醒

待机模式:

  • 唤醒后程序从头开始运行
  • 1.8V区、PLL、HSI、HSE断电,SRAM和寄存器内容丢失,备份寄存器和待机电路维持供电
  • I/O口变为高阻态
  • WKUP引脚上升沿、RTC闹钟、NRST引脚复位、IWDG看门狗复位,退出待机模式。

模式选择

在这里插入图片描述

标准库函数使用模板

函数使用模板

// 睡眠模式,中断唤醒
void Sleep_Wakeup() {while(1) {/* do something */__WFI();   //中断唤醒}
}// 停机模式,EXTI中断唤醒
void Stop_Wakeup() {RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);while(1) {/* do something */PWR_EnterSTOPMode(PWR_Regulartor_ON, PWR_STOPEntry_WFI);SystemInit();}
}// 待机模式,实时时钟闹钟唤醒
void Standby_RTC() {RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE);uint32_t Alarm = RTC_GetCounter() + 10RTC_SetAlarm(Alarm);while(1) {/* do something *//* 将外设模块一并关闭*/PWR_EnterSTANDBYMode();}
}

使能函数

// 使能后备区域的访问
void PWR_BackupAccessCmd(FunctionalState NewState);// PVD使能
void PWR_PVDCmd(FunctionalState NewState);// 配置PVD电压阈值
void PWR_PVDLevelConfig(uint32_t PWR_PVDLevel);// 使能WakeUp引脚(无需再GPIO初始化)
void PWR_WakeUpPinCmd(FunctionalState NewState);// 进入停机模式
void PWR_EnterSTOPMode(uint32_t PWR_Regulator, uint8_t PWR_STOPEntry);// 进入待机模式
void PWR_EnterSTANDBYMode(void);

PWR标志位

// 获取标志位
FlagStatus PWR_GetFlagStatus(uint32_t PWR_FLAG);// 清除标志位
void PWR_ClearFlag(uint32_t PWR_FLAG);

标志位

// 获取标志位
FlagStatus PWR_GetFlagStatus(uint32_t PWR_FLAG);// 清除标志位
void PWR_ClearFlag(uint32_t PWR_FLAG);


                                     ------ BY Flier

2023.9.10

Reference:江协科技、《stm32f10x用户手册》、《stm32库开发实战指南教程》

这篇关于PWR外设的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/381387

相关文章

PWR电源控制(低功耗模式)

1 PWR简介 1 程序后面是空循环,即使不用也会耗电,所以有了低功耗(例如遥控器) 2 也要保留唤醒模式,如串口接收数据中断唤醒,外部中断唤醒,RTC闹钟唤醒,在需要工作是,STM需要立刻投入工作  3 上电复位和掉电复位   4 PVD可编程电压检测器(需要配置外部中断)    2 低功耗模式介绍  1 WFI(等待中断,任何外设发生中断时候,芯片都会立刻醒来

第二章 感受Mac 之美-惊艳从Mac 外设开始,一周后的使用感受

期望已久,同时老婆也是极力推荐说,既然是吃饭的家伙,那么就下点血本投资下自己,原来那台已经满足不了你现在的工作效率了,继续沿用,得不偿失啊。 衡量了一下目前的情况,同时考虑到自己也是一个程序员爸爸了,也有房贷在身,所以去没有选择 16g 内存,512g 的 ssd,15.4 或者新版 16 寸大屏幕的高配,而是选择了比较适合我现阶段的配置的【Apple 2019 款 MacBook Pro 13

Linux中mount挂载外设

mount挂载外设 -------------------          1.右键client右下角的光盘图标 ->设置          2.iso文件                   选择一个iso镜像文件。          3.右键client右下角的光盘图标 ->连接.          4.创建文件夹/mnt/cdrom                   $>su ro

STM32基础篇:PWR

PWR简介 PWR(Power Control),为电源控制模块,负责管理STM32内部的电源供电部分,可以实现可编程电压监测器和低功耗模式的功能。 1、可编程电压监测器 简称PVD,可以监控VDD电源电压。当VDD下降到PVD阀值以下或上升到PVD阀值之上时,PVD会触发中断,用于执行紧急关闭任务(避免不必要的错误)。 2、低功耗模式 包括:睡眠模式(Sleep)、停机模式(Stop)

Unity接入飞行遥杆外设

readme 最近有朋友玩DSC,对于摇杆操控很感兴趣,然后想要接入外设来子级设计一套飞行逻辑。 设备测试 这里使用的设备是罗技X56摇杆套件、图马斯特摇杆套件 Unity使用插件 Rewired 场景搭建 创建空对象,挂载输入脚本:InputManager 接入硬件后,在右侧 Joy数组,会有遥杆名称,根据名称,展开以下的按键或者向量,即获得遥杆的操作值。 脚本测试 创建测试脚

stm32之I2C通信外设

系列文章目录 1. stm32之I2C通信协议 2. stm32之软件I2C读写MPU6050陀螺仪、加速度传感器应用案例 文章目录 系列文章目录前言一、I2C通信外设1.1 I2C外设简介1.2 软件模拟和硬件外设对比 二、I2C外设电路结构2.1 I2C框图2.2 I2C基本结构 三、I2C外设时序3.1 主机发送3.1.1 起始信号生成 (EV5)3.1.2 发送从机地址和方向

STM32基础篇:SPI片上外设

SPI外设简介 STM32芯片内部集成了SPI片上外设,可由硬件自动执行时钟生成、数据收发等功能,减轻CPU负担。对于STM32F103C8T6,其SPI资源有SPI1、SPI2。 一些参数配置: 8位/16位数据帧高位先行/低位先行时钟频率:PCLK/(2,4,8,16,32,64,128,256)支持多主机模型、主或从操作可精简为半双工/单工通信支持DMA兼容I2S协议 【注意】SPI

《ZigBee开发笔记》第五部分 外设篇 - 协议栈实验 第5章 CC2530继电器模块

1实验目的 通过实验掌握 CC2530 芯片 GPIO 的配置方法;掌握继电器模块的使用。 2实验设备 硬件:PC 机一台;ZB2530(底板、核心板、仿真器、USB 线)一套;继电器模块一个 软件:win7 系统,IAR 8.20 集成开发环境 3实验相关电路图 图1 路继电器模块,低电平触发,买图片中的继电器可以直接插入板子。 (本实验是接在J9 ): 1)、VCC:接电

《ZigBee开发笔记》第五部分 外设篇 - 基础实验 第5章 CC2530继电器模块

1理论分析 1.1概述 继电器(relay)是一种电控制器件,是当输入量(激励量)的变化达到规定要求时,在电气输出电路中使被控量发生预定的阶跃变化的一种电器。它具有控制系统(又称输入回路)和被控制系统(又称输出回路)之间的互动关系。通常应用于自动化的控制电 路中,它实际上是用小电流去控制大电流运作的一种“自动开关”。故在电路中起着自动调节、安全保护、转换电路等作用。 图1继电器 1

《ZigBee开发笔记》第五部分 外设篇 - 基础实验 第3章 A - CC2530 MQ-2气体传感器

1理论分析 MQ- 2 气体传感器所使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2)。当传感器所处环境中存在可燃气体时,传感器的电导率随空气中可燃气体浓度的增加而增大。使用简单的电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。MQ-2 气体传感器对液化气、丙烷、氢气的灵敏度高,对天然气和其它可燃蒸汽的检测也很理想。这种传感器可检测多种可燃性气体,是一款适合多种应用的低成本传