停止模式下USART为什么可以唤醒MCU?

在MCU的停止模式下,USART之类的外设时钟是关闭的,但是USART章节有描述到在停止模式下可以用USART来对MCU进行唤醒:

大家是否会好奇在外设的时钟被关闭的情况下,USART怎么能通过接收中断或者唤醒事件对MCU进行唤醒的呢?

其实除了USART可以做到外,I2C同样也可以做到相同的唤醒功能。

为什么这两个外设可以呢?

它们有一个相同点就是支持双时钟域,简单来说,假如外设挂在APB总线上,一般它们的时钟就直接来自于总线时钟,但是I2C和USART,它们的时钟源选择可以来自于HSI,这就给它们提供了从停止模式唤醒的一个条件,但是即使是HSI作为时钟源,在stop mode下,HSI也是关闭的状态,好像也无法唤醒?

当I2C或者USART时钟源选择为HSI的时候,且配置了它们在Stop mode下唤醒MCU的功能,此时进入stop mode后,HSI的时钟关闭,当有信号进入外设时,HSI会先一步被唤醒,供给I2C或USART,使得两个外设开始工作,当它们接收到对应的信息后,确认是否是可以唤醒CPU的事件,例如I2C接收到的地址是否匹配,若不匹配,则不会生成对应的唤醒事件用于唤醒MCU,且HSI再次关闭,如果信息匹配,则会生成唤醒事件用于唤醒CPU。大致的时序图如下:

但是也不是所有的时钟源可以选择为HSI的外设都可以在stop mode下对MCU进行唤醒,具体的还得需要去啃芯片手册,只有设计时做了对应唤醒功能的外设才可以。

相关推荐
坐看风云变幻2 小时前
《嵌入式工程师的软硬件修仙之路》第 5 期|STM32/GPIO 寄存器操作:从地址映射到点亮一盏灯的全过程
stm32·单片机·嵌入式硬件
POMAGTOR2 小时前
【硬件笔记|磁吸连接器安装规范、失效分析与选型验证方案】
网络·嵌入式硬件
路上有只喵2 小时前
认识元器件 ·贴片电阻· 规格书解读
嵌入式硬件·硬件架构
dqsh062 小时前
STM32开发用调试器ST-Link V2.1的制作 保姆级教程
stm32·单片机·嵌入式硬件·调试工具·st-link
2601_958352902 小时前
一款模块通吃15类语音产品?AN-93如何实现录音笔、门禁、IPC的快速适配
前端·人工智能·嵌入式硬件·回声消除·降噪处理
果壳science3 小时前
张祥前最新研究成果登上SCI期刊!
笔记·嵌入式硬件·算法·硬件工程·几何学
路上有只喵3 小时前
认识元器件 ·贴片电阻· 电阻选型
嵌入式硬件·硬件架构
zhenming_123q3 小时前
如何接入 PLC、上位机或物联网平台?
单片机·嵌入式硬件·物联网
TechVoyager_82463 小时前
IT66612 分路器三组DDC与两路检测解析
单片机·嵌入式硬件·分路器·ddc总线·热插拔检测
NamoAmitabha1284 小时前
Zynq 芯片的“上帝视角”--deepseek
嵌入式硬件·zynq--ps