【STM32】串口唤醒低功耗

发布者:EtherealGlow最新更新时间:2021-10-14 来源: eefocus关键字:STM32  串口唤醒  低功耗 手机看文章 扫描二维码
随时随地手机看文章

项目场景:

MCU:STM32G070


MDK:V5.25


Software Pack:Keil.STM32G0xx_DFP.1.0.0

问题描述:

单片机进入低功耗之后,想让另一个设备通过串口把它唤醒,可以正常唤醒,但是唤醒之后,串口收发貌似就不正常了。


原因分析:

串口进入低功耗之前,是把串口的接收引脚配置为了外部中断输入脚,唤醒之后再重新配置为串口,但是这个配置流程需要正规一点,需要HAL_UART_MspInit一下才可以正常。


解决方案:

在唤醒之后,按如下顺序对串口重新配置:


HAL_UART_MspInit(&huart4);

MX_USART4_UART_Init();


关键字:STM32  串口唤醒  低功耗 引用地址:【STM32】串口唤醒低功耗

上一篇:【STM32】解决J-Flash烧入固件无法正常运行
下一篇:【STM32】解决加入flash擦除、读写之后程序“卡死“的问题

推荐阅读最新更新时间:2024-11-11 11:09

STM32学习笔记-GPIO使用超强总结
1 GPIO使用步骤 1.1. 使能GPIO对应的外设时钟 例如://使能GPIOA、GPIOB、GPIOC对应的外设时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA |RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOC , ENABLE); 1.2. 声明一个GPIO_InitStructure结构体 例如: GPIO_InitTypeDef GPIO_InitStructure; 1.3. 选择待设置的GPIO管脚 例如://选择待设置的GPIO第7、8、9管脚位 ,中间加“|”符号 GPIO_InitStructure
[单片机]
STM32的PWM波的频率和占空比
网上看到一篇文章,不是很完整,但是有助于我理解,个人觉得还可以,具体的代码,网上有很多,大家可以参考参考计算一下。 下面的这个是stm32的定时器逻辑图,上来有助于理解: TIM3的ARR寄存器和PSC寄存器, 确定PWM频率。 这里配置的这两个定时器确定了PWM的频率,我的理解是:PWM的周期(频率)就是ARR寄存器值与PSC寄存器值相乘得来,但不是简单意义上的相乘,例如要设置PWM的频率参考上次通用定时器中设置溢出时间的算法,例如输出100HZ频率的PWM,首先,确定TIMx的时钟,除非APB1的时钟分频数设置为1,否则通用定时器TIMx的时钟是APB1时钟的2倍,这时的TIMx时钟为72MHz,用这个TIMx时钟7
[单片机]
<font color='red'>STM32</font>的PWM波的频率和占空比
基于STM32L低功耗穿载式手环方案
针对 物联网 (IOT)方案, 意法半导体 (ST Microelectronic)推出了具备高性能、低功耗、低成本特性的STM32系列产品,采ARM Cortex-M架构。低耗电产品可以26~33DMIPS驱动,一般产品则具38~63DMIPS的性能。高性能产品则提供150~225DMIPS效能,并内建LCD控制器,可以低功率控制显示器。每颗价格仅32美分,让低阶型装置也能实现优越的性能。而智能型手环加速测量运动量和移动距离。温度和高度等也可利用传感器测量。微控制器(MCU)芯片可处理数字讯号,并转换成有意义的数据。 【系统功能】 -信号测量 :使用ST 位移侦测组件(LIS3DH/LIS2DH12)来侦测感应用户
[单片机]
基于STM32L<font color='red'>低功耗</font>穿载式手环方案
stm32 系统嘀嗒(SysTick) 定时器
系统嘀嗒校准值固定为9000,当系统嘀嗒时钟设定为9MHz(HCLK/8的最大值),产生1ms时间基准。 在3.5 的库中 void SysTick_CLKSourceConfig(uint32_t SysTick_CLKSource) 位于 misc.c 文件中 然后在core_cm3.h 文件中,定义了一个内联函数,完成定时配置,中断开启,定时器开启的功能。 /* ################################## SysTick function ############################################ */ #if (!defined (__Vendo
[单片机]
Maxim宣布与Aizip达成合作,为业界提供最低功耗的IoT人形识别
Maxim Integrated宣布与Aizip达成合作,为业界提供最低功耗的IoT人形识别方案 MAX78000 AI微控制器与Aizip的视觉唤醒词模型相结合,将人形检测引入IoT图像和视频应用,每次推算仅消耗0.7 mJ-------功耗降低100倍! 中国,北京 – 2021年4月22日 –Maxim Integrated Products, Inc 与专注于物联网(IoT)领域人工智能(AI)技术开发的Aizip公司达成合作,Maxim Integrated的MAX78000神经网络控制器采用Aizip的视觉唤醒词(VWW)模型在图像中检测人形,将每次运算功耗降至0.7 毫焦(mJ)。这种功耗水平比传统的软
[物联网]
Maxim宣布与Aizip达成合作,为业界提供最<font color='red'>低功耗</font>的IoT人形识别
如何实现stm32单片机每次接上电源就进行一次重启动?
如何实现stm32单片机每次接上电源就进行一次重启动? 在嵌入式系统中,单片机的重启有时是十分必要的,它可以解决一些系统启动过程中的问题、恢复系统的正常运行、使系统更加稳定等。 然而,有时候我们需要每次接上电源就进行一次重启,也就是实现系统的自动重启。本文将给出一个思路,来实现stm32单片机每次接上电源就进行一次重启动。 一、背景知识 在嵌入式系统中,有两类重启,分别是软重启和硬重启。 1.1 软重启 软重启是指通过程序控制单片机重新开始执行,实现系统的重启。在stm32单片机中,一般采用如下代码进行软重启: ```c NVIC_SystemReset(); //调用此函数进行软重启 ``` 1.2 硬重启 硬重启是指通过硬件控
[单片机]
STM32跑马灯配置流程
跑马灯配置流程(战舰开发板V3) LED的初始化 相应功能引脚的确定 插上一句:这里的IO引脚可以输出低电平/高电平,那就说明这个引脚采用的输出方式为“推挽输出模式”。 确保在文件中添加了相应库文件 这两个文件是STM32开发板的启动文件,可以启动你添加进其中的所有库文件。只注意就行,正点原子给你的template(库函数版本)中已经添加进入这两个文件,只会用就基本上OK了。 先建立LED硬件初始化文件并添加进项目工程中 在创建好的文件中编写初始化LED硬件的程序 Led.h文件 led.c文件 函数参实设置小技巧 第一步:返回函数定义的位置 第二步:寻找参数的定义形式 找到参数的合
[单片机]
<font color='red'>STM32</font>跑马灯配置流程
STM32—IWDG独立看门狗的使用
STM32---IWDG独立看门狗的使用 独立看门狗(IWDG)由专用的40kHz的低速时钟驱动, 即使主时钟发生故障它也仍然有效。 窗口看门狗由从APB1时钟分频后得到的时钟驱动, 通过可配置的时间窗口来检测应用程序非正常的过迟或过早的操作。 IWDG最适合应用于那些需要看门狗作为一个在主程序之外, 能够完全独立工作,并且对时间精度要求较低的场合。 WWDG最适合那些要求看门狗在精确计时窗口起作用的应用程序。 IWDG主要性能 ●自由运行的递减计数器 ●时钟由独立的RC振荡器提供(可在停止和待机模式下工作) ●看门狗被激活后,则在计数器计数至0x000时产生复位 在键寄存器(IWDG_KR)中写入0xCC
[单片机]

推荐帖子

【ST AMG SensorTile开发大赛 健身小管家】一次烂尾的提交
【STAMGSensorTile开发大赛健身小管家】一次烂尾的提交johnrey参与活动的相关帖子如下:健身小管家(作品网页提交版本)【STAMGSensorTile开发大赛健身小管家】01ST家的BLE软硬件产品初探【STAMGSensorTile开发大赛健身小管家】02ALLMEMS1试用【STAMGSensorTile开发大赛健身小管家】03sensorTile蓝牙开发初探【sensorTile评
johnrey MEMS传感器
定时器当选择外部时钟源模式1,计数器是在上升沿计数还是上下都有,那着怎么解释
这两处对比的话有点不对劲啊?定时器当选择外部时钟源模式1,计数器是在上升沿计数还是上下都有,那着怎么解释这个很好理解啊,就是在时钟延的上升沿或者下降沿都进行计数michael_llh发表于2016-9-1621:50这个很好理解啊,就是在时钟延的上升沿或者下降沿都进行计数 但是上面的寄存器说没下降沿计数,我就感觉有点矛盾 哪有下降沿计数的,你要这个干嘛,你实际中有用到吗,就算是下降沿计数,那请问和上升沿计数有什么区别 这样啊,谢谢啦:)
electrics stm32/stm8
【直播FAQ】ADI赋能工业4.0—助力PLC/DCS技术创新问答汇总
直播主题:ADI赋能工业4.0助力PLC/DCS技术创新内容简介:工业控制系统是由各种自动化控制组件以及对实时数据进行采集、监测的过程控制组件共同构成的确保工业基础设施自动化运行、过程控制与监控的业务流程管控系统。其核心组件包括数据采集与监控系统(SCADA)、分布式控制系统(DCS)、可编程控制器(PLC)、远程终端(RTU)、人机交互界面设备(HMI),以及确保各组件通信的接口技术。其中DCS和PLC在系统中扮演中数据处理及执行等核心功能。ADI一直追求持续创新赋能各行业,
EEWORLD社区 工控电子
我想转向Linux驱动开发,请教各位一些问题
感谢抽空看我帖子的GG和MM,我工作半年了.我的公司是专门给保险公司做软件的,主要用unixc.我在大学的时候是学软件的,我的计算机理论,数据结构,操作系统数据库,比较扎实,还有熟悉JAVA和C/C++,但是我没接触过硬件的知识,比如说单片机,电路等.请教一下各位:做Linux驱动开发,有和硬件无关的,或者是不需要很深的硬件知识的开发工作?按照我现在的情况,转向驱动开发,各位觉的可行吗?Linux下的驱动开发有哪几类工作?
whimsy Linux与安卓
限位触发电机停止,再发指令让他反转离开限位,电机没有任何反应,请问为啥?
tmc5240驱动控制电机,限位我直接接在他引脚内部,它会自动停止相关电机的动作,整个功能就是串口助手发送指令,让电机正反转,碰到限位,电机停止,这个点相当于起始点,,然后我发送01指令,电机反转,到目标位置;现在遇到的问题就是我发送正转指令碰到了左限位,电机停止,然后我发送反转指令,让电机离开限位,电机不动,若我手动的吧阻碍限位的东西移开,电机就能转了,我以为这个可能是被锁住的原因,我写了一个清除函数,但是也不行,所以不知道问题出在哪里?因为我是第一次上手电机部分限位触发电机停止
xbxdbd 电机驱动控制(Motor Control)
嘉楠K230AI开发板测评5---颜色识别、摄像头物体计数与巡线
嘉楠科K230AI开发板测评5--机器视觉篇1.单一颜色识别预先设定颜色阈值,如红、绿、蓝,这样K230摄像头采集图像后就能自动识别了。CanMV集成了RGB565颜色块识别find_blobs函数(其位于image模块下),主要是基于LAB(L:亮度,取值0-100,表示从纯黑到纯白的变化;A代表从绿色到红色的范围,取值是-128--127;B代表从蓝色到黄色的范围,取值是-128--127)颜色模型,每个颜色都是用一组LAB阈值表示。ima
dfjs 国产芯片交流
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved