打印
[APM32E1]

APM32E103低功耗详解

[复制链接]
546|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
a976209770|  楼主 | 2023-6-30 23:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在APM32E103系列芯片进入低功耗模式前,一般会执行如下几行代码
        RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE);       
        PWR_EnterSTOPMode(PWR_Regulator_LowPower,PWR_STOPEntry_WFI);       
以下为此代码详解:
在APM32F103这类微控制器中,电源时钟(通常是主时钟源)与芯片内部的许多部分都有关系。以下是一些主要的相关部分:
中央处理单元(CPU):这是微控制器的主要计算部分,负责执行程序代码。CPU的操作是由时钟驱动的,因此电源时钟对CPU的运行至关重要。
系统外设:STM32F103包含了许多内置的系统外设,如GPIO(通用输入/输出)、UART(通用异步接收/发送)、SPI(串行外设接口)、I2C(双向双线串行总线)、ADC(模拟数字转换器)、DAC(数字模拟转换器)等。这些外设的操作通常都需要时钟信号。
内存:这包括随机存取存储器(RAM)和读-只存储器(ROM),它们用于存储程序代码和运行时数据。内存的读写操作也需要时钟信号。
总线系统:这包括处理器与内存、外设等之间的数据通道。数据的传输通常需要时钟信号。
时钟树:STM32F103有一个复杂的时钟系统,包括外部高速时钟(HSE)、内部高速时钟(HSI)、PLL(锁相环)等。这些时钟源通过时钟树连接到处理器和外设。
在芯片内部,几乎所有的电子系统都需要电源时钟来驱动,因此电源时钟是微控制器正常工作的基础。

PMU_EnterSTOPMode(PMU_REGULATOR_ON, PMU_STOP_ENTRY_WFI);
在这个配置中,微控制器在STOP模式下保持电压调节器开启(REGULATOR_ON)。这意味着微控制器的内核电压在STOP模式下不会降低。尽管这会导致微控制器在STOP模式下消耗更多的功耗,但是从STOP模式恢复到运行模式的唤醒时间会更短。

PMU_EnterSTOPMode(PMU_REGULATOR_LOWPOWER, PMU_STOP_ENTRY_WFI);
在这个配置中,微控制器在STOP模式下将电压调节器置于低功耗状态(REGULATOR_LOWPOWER)。这会降低微控制器在STOP模式下的功耗,但是从STOP模式恢复到运行模式的唤醒时间可能会更长,因为需要时间来重新启动电压调节器。

WFI (Wait For Interrupt):这个指令会将微控制器置于待机模式,直到收到一个中断信号。当微控制器收到中断信号后,它会退出待机模式,开始执行中断处理程序。这个指令通常用于情况下,微控制器无需执行任何操作,可以等待一个特定的中断信号,例如定时器中断或外部硬件中断。

WFE (Wait For Event):这个指令也会将微控制器置于待机模式,但它可以被两种类型的信号唤醒:中断信号和事件信号。事件信号是一种特殊类型的信号,可以由软件设置和清除。与中断不同的是,事件不会导致微控制器开始执行一个中断处理程序。相反,当微控制器收到一个事件信号时,它只是简单地退出待机模式,然后继续执行下一条指令。这个指令通常用于微控制器需要在没有中断发生的情况下被唤醒,例如在多核或多线程环境中。

总的来说,WFI和WFE指令都用于将微控制器置于低功耗模式,直到收到一个信号。这两个指令的主要区别在于它们对待唤醒信号的方式:WFI只能被中断唤醒,而WFE可以被中断或事件唤醒。

使用特权

评论回复
沙发
yangxiaor520| | 2023-7-1 11:33 | 只看该作者
要实现低功耗,不能只看MCU功耗。

使用特权

评论回复
板凳
jkl21| | 2023-7-5 15:30 | 只看该作者
低功耗电流偏高?              

使用特权

评论回复
地板
ccook11| | 2023-7-5 15:39 | 只看该作者
依据实际应用需求配置APM32E103不同功耗模式,最大程度的降低能耗、提高效率。

使用特权

评论回复
5
phoenixwhite| | 2023-7-5 15:48 | 只看该作者
APM32E103xCxE 支持睡眠,停机,待机三种低功耗模式

使用特权

评论回复
6
kkzz| | 2023-7-5 15:57 | 只看该作者
低功耗设计需要综合考虑硬件和软件两方面因素。

使用特权

评论回复
7
mattlincoln| | 2023-7-5 16:17 | 只看该作者
低功耗模式在功耗,唤醒时间长短, 唤醒方式存在差异

使用特权

评论回复
8
pentruman| | 2023-7-5 16:35 | 只看该作者
APM32E103 支持多种低功耗模式,如睡眠模式、停机模式、待机模式等。

使用特权

评论回复
9
ulystronglll| | 2023-7-5 16:40 | 只看该作者
APM32E103最大程度地减少功耗消耗。

使用特权

评论回复
10
10299823| | 2023-7-5 16:56 | 只看该作者
配置中断可以使处理器在任务完成后及时进入低功耗模式。

使用特权

评论回复
11
modesty3jonah| | 2023-7-5 21:02 | 只看该作者
供电电压在2.0V~3.6V               

使用特权

评论回复
12
sheflynn| | 2023-7-6 11:51 | 只看该作者
关闭不必要的时钟源和模块,降低主频,使用更低功耗的振荡器或时钟源。

使用特权

评论回复
13
backlugin| | 2023-7-6 12:16 | 只看该作者
使用合理的时钟配置可节省功耗。

使用特权

评论回复
14
chenci2013| | 2023-7-6 12:26 | 只看该作者
看下APM32E103的手册

使用特权

评论回复
15
timfordlare| | 2023-7-6 15:26 | 只看该作者
尽量减少无用的循环和延时操作,并使用节能的算法和数据结构。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

32

帖子

0

粉丝