在线情况
  • 头像
  • 级别
  • 门派
  • 职务总版主
  • 声望+9
  • 财富5
  • 积分3065
  • 经验390701
  • 文章6744
  • 注册2006-03-07
[P]焊完了,拿拿临就三两下手工夫弄个低功耗演示例子与大家分享一下。
基本功能是用DS18B20测温、ADC检测电池电量并做低电量时指示,6F22(9V)电池低于约7.5V时就指示出电池符号。正常时电池标志不显示。采用定时工作读取温度值,所以DS18B20的供电我改为了由Q1控制。据说DS18B20由软件控制休眠模式,但我没去试。
下面我是我测量三种情况的电流,MSP430F1232的低功耗模式(LPM3)电流、MCP144正常显示时低功耗电流、DS18B20测量温度时功耗电流(含MCU)。总的来说,基本上达到目的低功耗。如果再加点心思去优化程序的话,电流可能还能做到更小些。由于显示电流特别小,所以全程显示着屏幕数据。
温度的测量间隔完全由程序控制,再加上两个按能添加不同操作;基本上不花销功耗。由这个MCU有ADC10、UART、SPI和TA等等。还可以在上面做些其他的应用,对这8KB FLASH和256B RAM做个小产品是足够了。

   [IMG=0,absMiddle]http://www.microcontrol.cn/HomeImages/MC/LP2/LP2V1_Board_Show.jpg[/IMG]
   板子虽小五脏具全。LP2板上设置有MCU和LCD两个测试点,断开跳线就可以测量各自的功耗。
   另一方面,该板显示部分通过四根跳线连接在一起的。如果断开后,MCP144+MC128U2的显示部分与MCU部分是完全可以独立的。这样用户可以将显示部分也可以用于其他显示用途。

   [IMG=0,absMiddle]http://www.microcontrol.cn/HomeImages/MC/LP2/LP2V1_Board_MCUA.jpg[/IMG]
 单片机工作在LPM3模式下测量功耗。ACLK(32768)用作TimerA的时钟源,定时唤醒读取温度并更新显示。

   [IMG=0,absMiddle]http://www.microcontrol.cn/HomeImages/MC/LP2/LP2V1_Board_LCDA.jpg[/IMG]
   习惯性动作,测量液晶显示部分的工作电流。仅需5.5uA(典型低功耗模式),如果对MCP144软件上再设低一级功耗还可以做到更低一点。但我觉得这么小的就完全可以了。

   [IMG=0,absMiddle]http://www.microcontrol.cn/HomeImages/MC/LP2/LP2V1_Board_1820A.jpg[/IMG]
   DS18B20工作时的电流,约1.2mA。跟手册上的差不多。

这样弄下来,用个9V电池供电,就可以完事一个用普通电池低功耗温度测量应用。当然,真正的应用还需花更多的时间去完善。

采用9V的原因有三个考虑的,第一保持ADC供电有个稳定的REF+参考源。其二,最高参考源可达3.3V,这样使ADC输入的可测量的范围拿到最大。如果用双节电池供电的话,只能依靠ADC内部的1.5V参考源。但这1.5V的测量范围就小了。所以,选择3.3V做AVCC就是我考虑的原因。
第三个原因就是,如果我用两节电池的话,最大是3V,电量再小些时电压可能降到3V以下。当小于3.0V这个电压对于MCU和MCP144来说是没问题的,但于DS18B20来说就有所风险了。因为DS18B20的最小工作电压在3V。如果电压过低可能带来一些不利的影响。

在使用9V电池供电时,也十分方便。同时使用了超低功耗的ULP-LDO:MCP33,该器件却说一直在工作但他的功耗仅消功<1uA电流。所以9V电池配置这MCP33在这个设计上使用非常出色的。[/P]
[ 此贴最后由DC在2012-11-22 13:14:06编辑过 ]
[COLOR=#0000ff]欢迎发贴分享设计心得、开源DIY...[/COLOR]
Powered by LeadBBS 9.2 .
Page created in 0.1875 seconds with 7 queries.