4.2 动态控制外设控制寄存器
PXA270处理器提供的接口控制器很多,如ADC、I2C、I2S、LCD、Flash、Timer、UART、SPI、USB等,实际应用中只使用了部分功能,ADC、I2C、I2S和SPI都没有用到,为节省系统功耗,需动态地关注这些接口控制器的状态,及时关闭不需要的外设控制器,因为若不将不用的接口控制器关闭,即使它们没有处于工作状态,仍然会消耗电流。软件通过CLKCON寄存器的设置,关闭不需要的功能模块,经测量可节省2mA的电流。另外,动态关闭一些仍然需要的外设控制器来进一步节省能量。
如在空闲模式下,PXA270内核停止运行,我们还可以进一步关闭一些其他的外设控制器,如USB、SDI、FLASH等,只要保证唤醒PXA270的
I/O控制器正常工作即可,如通过UART唤醒,则UART控制器不能被关闭。等到PXA270被唤醒后,再将USB、SDI、Flash等控制器打开。
上述的软件低功耗设计的两种方式,一种是通过改变了系统的时钟频率,另一种是通过控制外设控制器的开关来达到节约能量的目的。除此之外,同时可通过动态改变处理器的电压和频率来进一步节省功率,我们选择的PXA270微处理器就加入了Intel Speed Step动态电源管理技术,在保证CPU性能的情况下,最大限度地降低嵌入式计算机系统的功耗。
5 结束语
嵌入式计算机系统的低功耗设计,本身就是理论和设计实践相结和的问题,要降低功耗,系统中各个环节都不容忽视,这也是一个不断优化的过程。本文的设计中综合考虑各种可能的因素、条件和状态,对各种细节进行认真的斟酌和分析,取得了较为满意的效果,达到降低系统功耗的目的。该设计已在产品应用,性能稳定,功耗较低。