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

苏州市吴江住房和城乡建设局网站西安网站推广公司

苏州市吴江住房和城乡建设局网站,西安网站推广公司,免费网站软件大全,软件开发软件下载【STM32笔记】低功耗模式下的RTC唤醒(非闹钟唤醒,而是采用RTC_WAKEUPTIMER) 前文: blog.csdn.net/weixin_53403301/article/details/128216064 【STM32笔记】HAL库低功耗模式配置(ADC唤醒无法使用、低功耗模式无法烧录…

【STM32笔记】低功耗模式下的RTC唤醒(非闹钟唤醒,而是采用RTC_WAKEUPTIMER)

前文:
blog.csdn.net/weixin_53403301/article/details/128216064
【STM32笔记】HAL库低功耗模式配置(ADC唤醒无法使用、低功耗模式无法烧录解决方案)

在这里插入图片描述
低功耗模式如图所示

停止模式有三种 分别是0 1 2
其中 0 1可以由串口唤醒
2只能由LPUART唤醒
在这里插入图片描述
在这里插入图片描述
在手册里可以查到

进入也很简单:

/*!* @brief       	进入低功耗模式   	** @param 	[in]	mode_flag: 模式标志* 								0/大于4 不进入任何模式,1 进入睡眠,2 进入停止,3 进入待机,4 关机*  				[in]	WakeUpPinPolarity: 待机模式下WKUP唤醒引脚极性配置,其他模式无用** @return				None*/
void Enter_Low_PWR(uint8_t mode_flag,uint32_t WakeUpPinPolarity)
{	__HAL_RCC_PWR_CLK_ENABLE();switch(mode_flag){case 0:{printf("[INFO] 不进入低功耗模式\n");break;}case 1:{printf("[INFO] 进入睡眠模式\n");delay_ms(10);  //消抖__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);	HAL_PWR_EnterSLEEPMode(PWR_MAINREGULATOR_ON,PWR_SLEEPENTRY_WFI);break;}case 2:{printf("[INFO] 进入停止模式\n");delay_ms(10);  //消抖__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON,PWR_SLEEPENTRY_WFI);break;}case 3:{printf("[INFO] 三秒后进入待机模式\n");delay_ms(3000);printf("[INFO] 进入待机模式\n");HAL_PWR_EnableWakeUpPin(WakeUpPinPolarity);delay_ms(10);  //消抖__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);HAL_PWR_EnterSTANDBYMode();break;}case 4:{printf("[INFO] 三秒后进入关机模式\n");delay_ms(3000);printf("[INFO] 进入关机模式\n");HAL_PWR_EnableWakeUpPin(WakeUpPinPolarity);delay_ms(10);  //消抖__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);HAL_PWREx_EnterSHUTDOWNMode();break;}default:{printf("[INFO] 不进入低功耗模式\n");break;}}
}

要进入停止2模式则需要在pwr_ex.c中配置
HAL_PWREx_EnterSTOP2Mode();函数

其中
HAL_PWR_EnterSTOPMode中的PWR_MAINREGULATOR_ON、PWR_LOWPOWERREGULATOR_ON分别是开启稳压器和关闭稳压器 分别对应STOP 0和1

所有的模式都可以用RTC唤醒
在这里插入图片描述
在这里插入图片描述
可以在手册里面找到外部中断线 所以RTC可以唤醒任一模式
在这里插入图片描述
RTC开启Internal WakeUp

在Wake Up配置中 完全不用设置(后面的语句可以直接配)
另外开启唤醒中断
在这里插入图片描述
在进入低功耗前 需要先调用RTC唤醒中断配置

HAL_RTCEx_SetWakeUpTimer_IT(&hrtc,counter,clock);

同样 退出时 要在注册的回调里面关闭中断

void HAL_RTCEx_WakeUpTimerEventCallback(RTC_HandleTypeDef *hrtc)
{__HAL_RCC_PWR_CLK_ENABLE();SystemClock_Config();__HAL_RTC_WAKEUPTIMER_EXTI_DISABLE_IT();	
}

打包一下就是:

/*!* @brief       	配置RTC在低功耗模式下的唤醒   	** @param 	[in]	counter: 计数值*					[in]	clock: 时钟值*					[in]	EnableNotDisable: 使能或者关闭** @return				None*/
void Ctrl_RTC_WakeUp(uint32_t counter,uint32_t clock,bool EnableNotDisable)
{	if(EnableNotDisable){HAL_RTCEx_SetWakeUpTimer_IT(&hrtc,counter,clock);}else{__HAL_RTC_WAKEUPTIMER_EXTI_DISABLE_IT();	}
}

调用:

	Ctrl_UART_StopMode_WakeUp(&huart2,true);Ctrl_RTC_WakeUp(2000,RTC_WAKEUPCLOCK_RTCCLK_DIV16,true);Enter_Low_PWR(2,0);/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){printf("[INFO] ADC: %f\n",Get_Real_ADC_Value(&hadc2));Count_ADXL345();Count_TMP75();TIM_Delay_ms(1000,&htim6);Ctrl_UART_StopMode_WakeUp(&huart2,true);Ctrl_RTC_WakeUp(2000,RTC_WAKEUPCLOCK_RTCCLK_DIV16,true);Enter_Low_PWR(2,0);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}
http://www.yayakq.cn/news/329993/

相关文章:

  • 网站登录验证码怎么做护肤网站的功能设计
  • 什么网站做展板的多旅行做攻略的网站
  • 天津网站建设优选企业百度关键词点击
  • 用我在线网站建设网站建设策划书的心得
  • 星大建设集团招聘网站女性购物平台排行榜
  • 做网站百度新闻源系统官网网站模板下载
  • 做推广哪个食品网站好wordpress 商城插件
  • 网站的分类有哪些内容什么公司做网商网站的
  • 郑州 服装网站建设网站被k十大原因
  • 泰州seo排名扣费扬中如何优化网站
  • 南通建设网站哪家好旅游网站效果图
  • 行业网站建设价格wordpress又拍云cdn伪静态
  • 东台网站建设公司广东东莞最新病例
  • 无锡本地做网站如何用asp编写网站后台
  • 济南网站设计开发潍坊 logo设计公司
  • 找人做网站需要花多少钱广州整合营销
  • 网站建设免费空间注册导航做网站很赚钱
  • 网站开发与建设课程谷歌google下载安卓版 app
  • 一级域名免费注册江西seo
  • 会议论坛网站建设周杰伦做的广告网站
  • 中国建设建行网站番禺区pc端网站建设
  • 可以接单做网站的软件软件开发文档模板下载
  • 现在.net做网站的多吗模板网站建设包括哪些
  • 山东城市建设厅网站网站建设要花钱吗
  • 微信视频网站怎么做的好处做网站样品图片怎么拍照
  • 京网站建设首选白龙马网站页面优化分析
  • 广东省建设交易中心网站首页网站运营做哪些工作呢
  • 网站制作实验报告哪里的网站建设
  • 手表网站排行榜外发加工网接单
  • 网站如何建立品牌形象数字展厅公司排名