1444513_zh-CN

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

1444513_zh-CN

1444513_zh-CN

[LPC43xx] LPC43xx系列(深度)掉电唤醒注意事项

目录

1.问题描述

2.原因分析

3.解决方案

  1. 3.1 SRAM掉电问题解决方案

    3.2 闹钟定时器中断使能问题解决方案

    3.3 减计数器寄存器写入问题解决方案

4. 验证注意事项


1.问题描述

LPC43xx系列运行LPCOpen低功耗演示“misc_pmc_states”时,掉电和深度掉电两种模式无法通过Alarm Timer成功唤醒。本文对这一系列问题进行了分析并提出了相应的解决方案。通过 RTC 唤醒也存在同样的问题和解决方案。

2.原因分析

唤醒失败的原因包括以下三个方面。

- SRAM 掉电问题: LPC43xx系列在掉电模式下,只有8K SRAM不掉电,其他SRAM均掉电。从掉电模式唤醒后,程序继续向后执行,不会复位。因此,应确保进入掉电模式时,数据在不掉电的8K SRAM中,这样唤醒后才能继续运行。

- 闹钟定时器中断启用问题: LPC43xx 闹钟定时器中断启用需要一段时间才能生效。如果在进入低功耗模式之前未成功启用,则无法从低功耗模式唤醒。

- Downcounter寄存器问题:在LPC43xx系列中,为了保证在指定的时间唤醒,需要判断设定值是否成功写入Downcounter寄存器。

掉电和深度掉电模式下唤醒失败的原因总结如下表:

Alice_Yang_0-1650013962934.jpeg

3.解决方案

对于掉电唤醒失败,需要根据三个问题来解决。

深度断电唤醒不存在数据丢失问题。因为从深度掉电模式唤醒后,程序又复位并重新执行,不需要之前的数据。因此解决方案跳过了第一个,只需要 3.2 和 3.3。

3.1 SRAM掉电问题解决方案

如手册所示,LPC43xx系列掉电模式下,只有8kB本地SRAM不会掉电。

注意:带有和不带有内部闪存的芯片具有不同的 8K SRAM 地址范围。

Alice_Yang_1-1650013962982.png

对于不带内部闪存的 LPC4330/LPC4350/LPC4370 系列产品,8K SRAM 地址范围为 0x10090000– 0x10092000 (8KB)。LPC4337/LPC4367等带有内部闪存的芯片的地址范围是0x10088000 – 0x1008A000(8KB)。

 

将数据放置在这个8K SRAM区域可以解决数据丢失的问题。

以LPC4350为例,MCUXpressoIDE中的设置方法如下:

  • 根据Project\Properties\C\C++ Build\MCU设置路径找到如下界面,单独定义这块8K SRAM,地址为0x10090000,大小设置为0x2000。
Alice_Yang_2-1650013963021.png
Alice_Yang_3-1650013963046.png

至此,SRAM区域的掉电问题设置完成。

3.2 闹钟定时器中断使能问题解决方案

为了确保闹钟定时器中断已启用,在其后添加一个while循环轮询,直到成功启用为止。进入src\pmc_states.c中的函数小路。

并添加 while((LPC_ATIMER->ENABLE& 0x01) != 0x01){}

在相应case模式下的Chip_ATIMER_IntEnable(LPC_ATIMER);函数语句之后。

Alice_Yang_4-1650013963255.jpeg

3.3 减计数器寄存器写入问题解决方案

该问题的解决方法与3.2类似。仍然用src\pmc_states.c进入函数路径,并在对应模式的情况下找到LPC_ATIMER->DOWNCOUNTER= RTC_ALARM_TIME*1000(与3.2位置一致)。

在其后添加一个 while 语句:

而(LPC_ATIMER->DOWNCOUNTER!=RTC_ALARM_TIME*1000);

如下图所示。

Alice_Yang_5-1650013963502.jpeg

4. 验证注意事项

当没有内部flash的开发板进行测试时(例如:LPC4370,LPC4350…),比如Hitex LPC4350评估板,需要将启动配置为外部flash启动。参考图如下。

Alice_Yang_6-1650013963574.png

启动时需要将引脚P2_9、P2_8、P1_2、P1-1设置为低、低、高的形式,以SPIFI的形式启动。跳线设置如图所示。

Alice_Yang_7-1650013963793.jpeg
タグ(1)
評価なし
バージョン履歴
最終更新日:
‎01-05-2026 08:35 AM
更新者: