请教关于飞思卡尔KL系列低功耗启动时间问题(已解决)
本帖最后由 FSL_TICS_ZJJ 于 2014-1-28 11:28 编辑请教各位:
本人评测KL16/KL25芯片的低功耗启动时间,过程为,上电后单片机配置时钟模块MCG,使系统时钟运行在PEE状态,后处于低功耗VLLS3状态,通过外部中断LLWU_P7唤醒,使芯片重新回到PEE状态
测试的时间,就是从外部中断触发开始--------系统完成PEE状态完成,需要多少微秒。
本人测试的时间为276us,下图
为了缩短这个启动时间,我将例程中的pll_init()函数配置修改了一下,只配置时钟到FBE状态,没有执行到PEE状态,就是说,唤醒后没有经过PLL倍频,我以为测试的启动时间会缩短,但是测试结果还是276us,这有点说不通啊,因为这种方式是没有经过PLL倍频,怎么时间没有变呢,是不是芯片本身内部做了什么处理,将这个时间固定了,请各位高人指导!!
PS:上图我修改了一下,本人想测试的唤醒时间,就是说,先将单片机处于低功耗状态,测试的时间从按键开始,到程序执行的下一条命令为止
例程我用的是low_power_demo这个例程,测试的结束时间就是
LowPowerModes_test()
{
...........
case 4://VLLS3
printf("Press any key to enter VLLS3\n\r ");
//uart0_getchar(UART0_BASE_PTR);
printf("Press SW4 to wake up from VLLS3\n\r ");
clockMonitor(OFF);
//UART(OFF);
enter_vlls3(); //系统处于VLLS3模式 此时在外部中断触发,按键按下,计时开始
GPIOE_PTOR |= (1<<29); //系统运行到这,计时结束
break;
.....................
}
我个人认为系统在pll时钟初始化的时候,对pll倍频做了判断,无论你是否倍频,芯片都对pll做判断。 你好,请问你示波器的波形分别测的是什么?
我这边会测试一下。 FSL_TICS_ZJJ 发表于 2014-1-3 16:31
你好,请问你示波器的波形分别测的是什么?
我这边会测试一下。
波形我已经修改过了,开始:低功耗状态下按键按下 结束:程序执行到IO口翻转 huzhen816 发表于 2014-1-3 17:31
波形我已经修改过了,开始:低功耗状态下按键按下 结束:程序执行到IO口翻转 ...
不好意思,刚看到,明天我测试一下给你回复! FSL_TICS_ZJJ 发表于 2014-1-6 20:14
不好意思,刚看到,明天我测试一下给你回复!
谢谢 FSL_TICS_ZJJ 期待你的解答!! huzhen816 发表于 2014-1-7 17:43
谢谢 FSL_TICS_ZJJ 期待你的解答!!
楼主,你的唤醒时间测试方法还是有点问题。
按照datasheet, 48M主频,24MBUS, FEI模式,VLLS3到RUN的唤醒只有大概42us。
而且,这个唤醒时间和频率时钟模式有怎样的关系,还不知道。
建议楼主可以将时钟模式换到FEI模式,然后配置为48M主频,24Mbus,再和datasheet比较一下。
楼主,VLLS唤醒后,其实芯片就复位了。所以,你在进入VLLS之后加语句,等唤醒,下面的一句话并不会跑。
你所测试的IO置位应该是复位产生的。
这样测试是不对的。 FSL_TICS_ZJJ 发表于 2014-1-8 17:34
楼主,VLLS唤醒后,其实芯片就复位了。所以,你在进入VLLS之后加语句,等唤醒,下面的一句话并不会跑。
你 ...
请教版主,我测试了,确实是芯片复位了,为什么LLWU唤醒后芯片会复位呢,我想要的结果是按键中断后能返回程序继续执行。
我用什么方法能达到我的目的呢,是改唤醒源么? huzhen816 发表于 2014-1-9 14:49
请教版主,我测试了,确实是芯片复位了,为什么LLWU唤醒后芯片会复位呢,我想要的结果是按键中断后能返回 ...
你好,这点在我们的reference manual中有讲,各个模式唤醒后是什么状态。
这里我贴出VLLS,和LLS的情况,如下图“:
所以,楼主你可以选择程序中的case 3,进入LLS状态,这样也可以用按键唤醒,就可以接着程序往下跑了。 FSL_TICS_ZJJ 发表于 2014-1-9 15:52
你好,这点在我们的reference manual中有讲,各个模式唤醒后是什么状态。
这里我贴出VLLS,和LLS的情况, ...
版主,您好
我手上测试的开发板为FREEDOM-KL25Z,外部晶振为8M
按照你说的,我的测试结果是,在FEI模式下,由VLLS到RUN的唤醒时间为21us,
在FBE模式下,由VLLS到RUN的唤醒时间为960us,
在PEE模式下,PLL到48M,由VLLS到RUN的唤醒时间也为960us,
首先我说一下我应用的场合,ETC项目,就是不停车收费系统。从目前来看,需要满足以下几点:
1、低功耗3uA以下
这点从测试情况看,VLLS模式1.7uA满足功耗要求。VLLS3模式2.5uA虽也满足条件,但是它的recovery method为 wakeup reset。
2、低功耗模式转换为RUN模式的时间小于500us,且RUN模式的系统时钟不小于16M
这点尚不满足,如果低功耗选FEI模式,转换时间21us能满足要求,但是系统频率不够
如果低功耗选FBE或PEE模式,转换时间太长
请问版主,在保证系统主频的情况下啊,转换时间缩短还有什么办法呢? 我测试过其他厂家如新唐的M0芯片,它的芯片是可以达到要求的,还是我的配置有问题。 huzhen816 发表于 2014-1-13 10:54
版主,您好
我手上测试的开发板为FREEDOM-KL25Z,外部晶振为8M
你好,应该测试方法还是有点问题,
datasheet中run模式是48M主频,
最大唤醒时间也就115us。
本帖最后由 FSL_FAE_JiCheng 于 2014-1-14 23:19 编辑
你好楼主,由于锁相环锁定的时间相比于锁频环要长,所以建议你使用FEI模式或者FEE模式(FEE模式需要将外部8M晶振换成32.768K),我在FEE模式下测的数据是LLS电流为2.1uA,LLS-RUN唤醒时间为12us,完全满足ETC的需求。另外您说的FEI模式,可以通过相应配置将内部32K时钟倍到48Mhz的。
页:
[1]