各位大家好!
【CuriosityNano测评报告】的第1个测试里,我按照测试方案进行了通过定时器唤醒休眠模式的测试和仿真。在这一期的测试里,我继续按照方案进行第二期的测试,测试休眠模式下各模块的电流消耗情况。
在上一期的测试里,因为我在用MCC进行初始化配置时,基本上把无关的模块都关闭了没有激活,所以休眠电流是在16-17uA左右。这一期测试里,我就分别测试几个常用的模块对电流的影响。
1.FVR模块
我们知道,PIC单片机的FVR模块是给ADC模块提供参考基准电压的,在FVR工作的情况下,在休眠模式时的耗电是比较大的,具体电流看我的测试结果;
继续上一次的代码,这一次,我要用MCC配置打开FVR,如图所示:
第一步,打开MCC,选择点击FVR前面的+号将FVR模块增加到代码工程中。
第二步,将FVR设置为2.048V
第三步,编绎代码并下载到开发板运行,这时我们可以看到休眠电流由原来的17uA变成了200uA。
第四步,测试ADC模块的休眠电流,在通过MCC配置好ADC功能时,我们可以看到代码里是激活了ADC模块的。在void ADCC_Initialize(void)中的最后一行,
根据以往其它厂商单片机的应用经验,ADC模块在使能时,其工作电流也比较大,对休眠电流的影响比较大,那么PIC18F16Q系列的情况是怎么样的呢?我们来看一下,首先,在代码中增加休眠前配置关闭FVR和ADC的代码。
通过在休眠前关闭FVR,我测试休眠后的电流回到了开始的17uA左右。
第五步,在休眠前关闭ADC模块,测试ADC对休眠电流的影响,修改代码,增加关闭ADC模块的功能。
第六步,编绎代码,重新进行测试,我发现休眠电流基本没有变化,还是维持在17uA左右。
在以上的步骤 中,工都是基于常见的其它厂商单片机影响休眠电流最大的2个模块进行了测试,测试结果表明,除了FVR的电流确实影响很大,常见的ADC对休眠电流的影响在PIC18F16Q中影响并不明显。另外我还测试了IO口在配置为输入、输出、开漏、模拟量输入等模式下对休眠电流的影响,测试结果,休眠电流都是大约在17uA,没有变化,证明PIC18在对芯片工作过程中没有使用的模块的功耗管理做的还是比较好的。
|