控制/MCU
摘要:在嵌入式系统设计中,设计师需要特别考虑低功耗,因为这类系统通常用于移动设备和便携产品,其电源供应有限,主要依赖电池供电。因此,设计师必须仔细考虑各个细节,以减少功耗,延长电池寿命。为此,绝大多数芯片都提供了低功耗模式。以CW32L083为例,这是一款32位低功耗微控制器。
一、芯片模式介绍
1.CW32L083工作模式
CW32L083 支持三种工作模式,由内嵌的电源管理模块自动完成电源的统一管理。三种工作模式是:
• 运行模式(Active mode)
• 休眠模式(Sleep mode)
• 深度休眠模式(DeepSleep mode)
系统上电后,将自动进入运行模式。用户可以通过软件切换到休眠或深度休眠模式,以降低功耗。在低功耗模式下,通过硬件中断触发唤醒机制可使系统返回运行模式。
2.进入休眠模式或深度休眠模式
通过使用M0+内核的ARM等待中断专用指令WFI(Wait for Interrupt),结合M0+内核的系统控制寄存器(SCR, System Control Register)的SLEEPONEXIT和SLEEPDEEP位域,可实现立即进入或退出(中断服务程序)时进入休眠模式或深度休眠模式。
• 立即进入
执行 WFI 指令,MCU 将立即进入休眠模式(SLEEPDEEP 为 0 时)或深度休眠模式(SLEEPDEEP 为 1 时)
• 退出时进入
将SLEEPONEXIT置为1,在退出最低优先级的中断服务程序后,MCU将进入休眠模式(当SLEEPDEEP为0时)或深度休眠模式(当SLEEPDEEP为1时),无需执行WFI指令。
在深度休眠模式下,系统将自动关闭高速时钟。若需要在深度休眠模式下保持部分外设运行,需在进入深度休眠模式前启动相应的低速时钟,并将该外设时钟设置为低速时钟。
3.退出休眠模式或深度休眠模式
在休眠模式或深度休眠模式下,可通过中断唤醒CPU,使其返回运行模式。但需注意,若在中断服务程序中执行WFI命令进入休眠(包括深度休眠),则需要更高优先级的中断才能唤醒CPU。因此,我们建议在准备进入休眠前,先处理完所有中断服务程序,并清除所有中断请求和中断标志。
使用中断退出休眠模式时,需在进入休眠(包括深度休眠)前启用该中断的允许位。
中断唤醒退出深度休眠模式时,CPU的运行状态与退出休眠模式时相同。
4.UART控制深度休眠模式
UART控制器工作在双时钟域下,支持在深度休眠模式下进行正常的数据收发,并通过接收完成中断唤醒 MCU回到运行模式。
如果将传输时钟UCLK设置为低速时钟,当系统进入深度休眠模式后,高速时钟将停止,低速时钟将继续运行,UART仍可正常进行数据收发(波特率仅支持2400 bps、4800 bps和9600 bps)。为实现深度休眠模式下UART的唤醒功能,需在进入深度休眠模式之前启用UART接收完成中断(设置UARTx_IER.RC为1)。当数据接收完成时,接收完成中断将唤醒MCU并使其返回运行模式。
若将传输时钟UCLK设置为高速时钟,当系统进入深度休眠模式后,高速时钟将停止运行,UART将无法接收数据。在此情况下,仍可通过GPIO中断唤醒MCU,以实现深度休眠模式下的数据接收。配置步骤如下:
步骤 1:启用UARTx_RXD对应引脚的GPIO下降沿中断;
步骤 2:将UARTx_CR1.START设置为1,选择RXD信号的起始位判定方式为低电平;
步骤 3:启用UART接收(即将UARTx_CR1.RXEN设置为1);
步骤 4:进入深度休眠模式;
步骤 5:等待主机发送数据,产生GPIO下降沿中断,唤醒MCU;
步骤 6:关闭RXD对应引脚的GPIO中断功能,等待RXD接收完成。
什么是低功耗设计,如何评估低功耗MCU性能?——以CW32L083VXTX评估板为实验对象,进行低功耗测试系列实验讲解(1)
国产CW32低功耗芯片概述——以CW32L083VXTX评估板为实验对象,进行低功耗测试系列实验讲解(2)
CW32L083低功耗芯片特性——以CW32L083VXTX评估板为实验对象,进行低功耗测试系列实验讲解(3) CW32L083的评估板及原理图 ——以CW32L083VXTX评估板为实验对象,进行低功耗测试系列实验讲解(4)
评估其性能主要涉及以下方面:
供电电流:评估板上的供电电流测量可以反映MCU在不同工作模式下的功耗开销,例如待机模式、睡眠模式等。
响应时间:测试不同唤醒方式的响应时间,包括外部中断唤醒和串口中断唤醒等。
运行模式下LED1指示灯灭时的功耗为2.955MA。 运行模式下LED1指示灯亮时的功耗为3.849MA。
进入超低功耗模式下功耗为0.64uA。
进入超低功耗时的电流消耗为1.7UA;
运行模式下LED2指示灯亮,功耗为3.849mA。
主频功耗:通过改变MCU的主频,观察功耗的变化情况,以确定最佳主频设置。
不同主频(未进入低功耗模式)实验数据如下:
外设功耗:测试不同外设的功耗开销,例如串口、ADC、定时器等。
不同外设实验结果如下:
通过这些实验,可以全面评估CW32L083VXTX评估板的低功耗性能,并为后续的应用和设计提供参考。
全部0条评论
快来发表一下你的评论吧 !