STM32L051实现RTC低功耗唤醒

目录

一、简单介绍

二、cubmx配置

三、实验代码

四、效果展示


一、简单介绍

主要涉及是的RTC的自动唤醒单元

使用1Hz的内部时钟时,最长可以36小时唤醒,方法是增加一个bit,这样原本16位的RTC唤醒寄存器从最大65565s变成65535*2s,约等于36小时

RTC唤醒后需要软件清除WUTF

二、cubmx配置

使能调试口,用于烧录

开启RTC,勾选内部唤醒,设置唤醒时钟频率为1Hz,唤醒计数值5,即每隔5s自动RTC唤醒

笔者选用PB6引脚监控芯片运行状态,配置成推挽输出

使用内部的HSI时钟

三、实验代码

cpp 复制代码
/* Private user code ---------------------------------------------------------*/
/* USER CODE BEGIN 0 */

/* USER CODE END 0 */

/**
  * @brief  The application entry point.
  * @retval int
  */
int main(void)
{

  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_RTC_Init();
  /* USER CODE BEGIN 2 */
__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);
  for (int i = 0; i < 1000; i++)
  {
      HAL_GPIO_TogglePin(TEST_GPIO_Port, TEST_Pin);
      HAL_Delay(2);
  }
  
HAL_PWR_EnterSTANDBYMode();
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

四、效果展示

单片机唤醒后持续翻转TEST引脚电平,持续3s后进入休眠,等待2s,RTC的5s唤醒时间到,芯片被唤醒,重新运行。

相关推荐
rit843249921 小时前
STM32 + DS3231 + TM1640 实时时钟数码管显示系统
stm32·单片机·嵌入式硬件
小懒懒️1 天前
嵌入式常见通信协议学习——UART
stm32·uart·通信协议
zjxtxdy1 天前
STM32开发
stm32·单片机·fpga开发
BT-BOX1 天前
STM32简易数字电流表仿真_LCD1602显示
stm32·电流测量·lcd1602显示·电流表
集和诚JHCTECH1 天前
BRAV-7120加持,让有毒有害气体无处遁形
大数据·人工智能·嵌入式硬件
LCG元1 天前
STM32实战:基于STM32F103的I2C通信(AT24Cxx EEPROM读写)
stm32·单片机·嵌入式硬件
星恒讯工业路由器1 天前
MCU+WiFi与CPU+WiFi模块区别
单片机·嵌入式硬件
LCMICRO-133108477461 天前
长芯微LD7940完全P2P替代AD7940,是一款14位、逐次逼近型模数转换器(ADC)
单片机·嵌入式硬件·fpga开发·硬件工程·dsp开发·模数转换器adc
guygg881 天前
基于STM32的智能小区管理系统设计
stm32·单片机·嵌入式硬件
Deitymoon1 天前
STM32——震动传感器控制led
stm32·单片机·嵌入式硬件