①ATmega 324p选择Power-save模式的理由:在Pow-er-save睡眠模式下,除了Power-down模式下的所有功能外,Timer/Counter2可以正常工作,所以在Power_save睡眠模式下,系统的实时时钟系统可以正常运行,这也给系统功耗测试中的定时无线收发提供了条件。
②基于功耗模式转换的无线收发工作过程:当便携式控制器没有接收和发送任务时,进入睡眠模式,即LCD关闭,ATmega324p处于Power-save模式,IA4421处于SLEEP模式。在实际应用中,便携式控制器处于睡眠模式的时间应该最长。
如果用户有传输数据的要求,便携式控制器可以通过按键、异步定时器2(实时时钟)以及接收到主机的信号后产生的外部中断信号(INT2)唤醒控制器,进行发送和接收的相关操作。任务完成后,再次进入睡眠模式。
(2)低功耗键盘软件设计
ATmega 324p的PortA、PortB、PortC、PortD共有32个I/O口,每个I/O口都是一个外部中断源。当端口上检测到有电平跳变时,就可以产生一个外部中断(PCINT)。这个功能使得控制器的外部中断口数量不再受到限制。3×3键盘的6个接口分别接在普通的I/O口上就能实现中断按键。中断按键在本系统中有如下优点:
①中断按键程序不需要控制器一直处于扫描运行状态,比用Polling方式下的键盘扫描程序大大地降低了功耗。
②中断按键程序能够通过按键产生中断来唤醒控制器,在不影响系统功能的前提下,方便系统进行各种模式之间的转换。详细的键盘系统软件设计流程如图1所示。
2 低功耗实验与结果分析
2.1 ATmega324p小系统的功耗实验
ATmega324p小系统包括ATmega324p单片机、三星公司的S6B0741 LCD模块以及供电电源(5 V、2.5 A电源适配器),在最小系统的功耗实验系统中没有加入无线通信芯片部分。
(1)电流消耗理论值
ATmega324p工作在8 MHz频率以及LCD(S680741)工作在开启显示(背光关闭)、睡眠模式和关闭LCD(S680741)时的电流消耗理论值如表2所列。
(2)最小系统在不同工作模式下实际电流值的测定在系统中下载C程序,分别测量系统在不同的组合模式下的电流消耗。测试环境为实验室内,温度20℃左右;使用万用表和100 Ω电阻,ICCAVR开发环境,STK500下载器下载。
在便携式控制器的总电源接口上串联一个100 Ω的电阻,在不同的系统模式下分别测量电阻上的电压值,然后计算电流值。测试值与理论值的对比结果如表3所列。