打印

KL03不能正常进入低功耗模式的原因及解决办法

[复制链接]
214|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
电子学长|  楼主 | 2018-8-23 12:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    KL03系列是Kinetis L系列的第二代产品,相比于第一代的同一级别的KL02,的确是新添了不少特色。包括出厂自带Boot ROM(IAP功能,直接通过串口,I2C或者SPI下载程序),内部集成了全温度范围精度在1%的48M晶振(所以去掉了冗余的FLL和PLL倍频部分,即省电又省成本,使用起来也比较方便),内部集成1.2v的电压基准源并且对功耗方面做了进一步的优化(虽然KL02本身功耗已经很低了)。所以俺还是很看好它的,哈哈~

    别的先不提,前面我说到KL03对功耗方面做了进一步的优化,自然刚到手KL03就打算先测测它的功耗啦。但是在调试KL03低功耗的时候,通过触发跟KL02类似的进入低功耗指令时却发现KL03并没有真正的进入低功耗模式,此时功耗虽然比全速运行时的小了不少但是仍然还有几百个uA(正常来讲,进入VLPS模式低功耗时应该保持在1~2uA左右),虽然在此状态下也能正常唤醒,但是这种状态却是让人费解的。找了半天的原因,看手册,对代码,一直也没找出真正问题所在,结果最后在KL03的官方Errata(勘误表)里才找到根本原因,如下图,即在进入低功耗模式前需要先把RTC的中断标志清零才可以,看来是一个芯片的小bug了。

<img id="aimg_M82Tc"  class="zoom" height="373" file="http://files.chinaaet.com/images/blog/2015/02/04/2208084171121.jpg" border="0" alt="" />

<img id="aimg_WgVTm"  class="zoom" height="171" file="http://files.chinaaet.com/images/blog/2015/02/04/2208101643301.jpg" border="0" alt="" />

    看来自己还是过于激动,疏忽大意了,呵呵,不过既然知道了问题所在那就好办了,只需在程序开始部分把RTC的中断标志清掉即可,当然RTC的TIF标志清零过程还是需要先打开RTC的Clock Gate才行,具体如下图所示。然后我们重新编译整个工程再下载进入,让其进入VLPS低功耗模式下再测一下电流,竟然直接降到1.7uA(实测数据),正常进入低功耗模式,貌似比KL02还真低了不少,顿时有种捶胸顿足的兴奋劲,哈哈。

<img id="aimg_kDHtn"  class="zoom" height="304" file="http://files.chinaaet.com/images/blog/2015/02/04/2208119111152.jpg" border="0" alt="" />









——————————————————————————————————————

使用特权

评论回复

相关帖子

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

本版积分规则

424

主题

447

帖子

1

粉丝