在芯片KV30F128切换到低漏电流停止模式(LLS)后,如果想要让芯片功耗最低,除了禁用未使用的管脚外,还有哪些方式推荐使用?
芯片在主循环切换到LLS模式后,如果使用外部管脚唤醒,当外部信号来临后,芯片进入LLWU_IRQHandler()中断服务程序,当这个中断执行完毕后,程序是不是还是在主循环切换到LLS模式的地方停止?
在中断服务程序LLWU_IRQHandler()中,能不能把芯片工作模式由LLS模式切换到RUN模式,切换完成后,程序是在进入LLS模式的主循环处运行,还是程序复位执行?
VLLS0/1/2/3四种低功耗模式,在外部管脚唤醒,进入LLWU_IRQHandler()中断服务程序,执行完后是否程序就直接复位执行了?
Hi 兴 姚
楼主你好!
1. 关于芯片功耗低的推荐
建议你看看我们这篇应用笔记:
https://www.nxp.com/docs/en/application-note/AN4470.pdf
2. 芯片在主循环切换到LLS模式后,如果使用外部管脚唤醒,当外部信号来临后,芯片进入LLWU_IRQHandler()中断服务程序,当这个中断执行完毕后,程序是不是还是在主循环切换到LLS模式的地方停止?
答:LLS唤醒之后是顺序执行,所以你中断执行之后,唤醒了芯片,会接着进入低功耗下面的代码运行。
3 在中断服务程序LLWU_IRQHandler()中,能不能把芯片工作模式由LLS模式切换到RUN模式,切换完成后,程序是在进入LLS模式的主循环处运行,还是程序复位执行?
答:LLS不会复位,是顺序执行。
4: VLLS0/1/2/3四种低功耗模式,在外部管脚唤醒,进入LLWU_IRQHandler()中断服务程序,执行完后是否程序就直接复位执行了?
答:VLLS是用LLWU唤醒,唤醒之后,复位。
希望能帮到你!
Kerry
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
感谢回复!
1.对所有的KV30F128的管脚而言,是不是在进入低功耗之前都可以配置为关闭,即使在mcuxpresso中没有disable选项?也就是PORT->PCR寄存器的MUX部分都配置为0的话,是不是所有的管脚都可以禁止?
2.为获得更低功耗,在关闭不必要的模块时钟时,是不是只要关闭程序中进行过配置的外设时钟就可以了?如下所示:
3.能提供一个切换到低功耗模式前,比如LLS/VLLS模式,MCU需要完成的一些配置的例程吗,想参考下如何在这个芯片低功耗模式获得最低功耗。
楼主你好!
1. 关于引脚的情况
请查看KV30 reference manual的如下章节
10.3.1 KV30F Signal Multiplexing and Pin Assignments
default规定的是什么引脚,默认就是那个引脚功能。
用不到的引脚,进入低功耗之前可以关闭
2. 模块时钟
SIM里面有对于各个模块时钟的打开和关闭,其实就是配置SIM对应的模块时钟
3. 关于低功耗代码,
到这个链接:
Welcome | MCUXpresso SDK Builder
下载SDK, SDK里面有低功耗代码。
Kerry
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
多谢回复!
在调试不同的模式功耗时,发现LLS3和VLLS0消耗的电流差别很大,进入低功耗模式前,同样关闭IO口,关闭不使用的外设时钟,
只用电池供电时,LLS3模式下测得的电流在1.7mA,VLLS0模式下测得的电流在80uA,是这两种模式本身消耗的电流就不一样,还是
LLS3模式配置时有注意事项?
不客气!
我看到KV30datasheet已经把LLS3的功耗去掉了,我建议你试试VLPS功耗,看看你那边电流多少。
不同功耗模式的电流肯定是不一样的,VLLS0是所有功耗模式中,功耗最低的。
Kerry
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
我在看文档An4470时,寄存器文件在所有模式下都能保持通电状态,包括低功耗模式,如下所示:
这个寄存器文件是指所有外设的寄存器吗?如果是指所有外设寄存器,是不是意味着可以如参考手册所描述的,任意寄存器地址
写入一个数值,低功耗唤醒后再去读出来?如果不是指所有外设地址,那么它是具体指哪里?
楼主你好!
我认为这个就是外设寄存器配置值还是保留的。就是你之前配置的寄存器的值,进入低功耗之后,这些寄存器的值还是和进入之前一样,没有丢失。
Have a great day,
Kerry
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
实测下来,进入低功耗模式VLLS0后,如果再次唤醒,外设FTM寄存器中的值并未保留,如SC,MOD寄存器等,如果要保留是还有需要配置的选项吗?
第二点,看文档AN4470,32字节系统寄存器文件,32字节VBAT寄存器文件,他们的地址范围是多少?KV30F128芯片。
其实你也不能完全参考AN4470,因为我发现AN4470里面提到寄存器文件,KV30的RM里面并没有提到,所以AN里面应该是其他kinetis芯片的表格,比如K60 100M,而且我发现那个register files还有个备注:
4. These components remain powered in BAT power mode.
所以,你的KV30可能是不支持的。
包括你说的VBAT,KV30都没有这些,所以应该不支持,如果进入到VLLS0,连SRAM的数据都丢了,而且唤醒是复位,建议你还是重新配置下相关外设。
具体内容,还请参考KV30 参考手册第7章:Power Management
Have a great day,
Kerry
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------