摘要:介绍了可同时测量本地温湿度和异地温度的系统的硬件和软件设计,并就电池供电的低功耗要求,详细讨论了增加的光控电路、电子开关等硬件节能措施和保证收发同步的软件措施。
关键词:HT48R06A-1单片机 MSP430F135单片机 低功耗
便携式智能仪器具有体积小、重量轻和便于携带的特点,一般用电池作为其供电电源,因此降低功耗便成为主要的设计指标。在设计过程中,除了选用各种低功耗的器件和芯片外,还必须在满足(或牺牲一点)速度等指标要求的前提下,进行降低功耗的硬件和软件设计,以使整个系统运行的功耗最小。本文详细介绍了一种低功耗的便携式无线温湿度测量系统的设计,该系统能同时测量20米范围内的异地温度及本地温湿度,还具有时间显示、闹钟提醒等功能。
图1
1 系统的硬件设计
本系统由无线发送和接收两部分组成,发送部分由HT48R06A-1单片机、温度/频率转换电路、无线发送模块等组成,接收部分由MSP430F135单片机、无线发送模块等组成,接收部分由MSP430F135单片机、无线接收模块、温湿度测量电路、时钟电路及其它电路组成。系统硬件框图如图1所示。
1.1 无线发送部分
发送部分的处理器采用HT48R06A-1单片机,片内集成了一个外部中断、一个8位定时器和一个看门狗定时器,其休眠状态电流仅为5μA,可以满足本系统硬件的要求和低功耗要求。HT48R06A-1内部没有A/D转换器,出于成本考虑,采用图2所示的由555定时器组成的温度/频率转换电路。它其实是一个多谐振荡器,Rt为热敏电阻,图中多谐振荡器产生的高、低电平脉宽分别为:
TH=(R3+Rt)C4ln2
TL=RtC4ln2
于是可得:Rt=[(TL)/(TH-TL)]R3
利用HT48R06A-1的定时器测出TH和TL后,便可求出热敏电阻值,查表后即可得到相应的温度值。
1.2 接收部分
接收部分的处理器选用TI公司的MSP430F135单片机,它的片内集成了丰富的功能单元,能够满足本系统的硬体要求;它同时提供ACLK、MCLK和SMCLK三种不同频率的时钟给不同的模块,使整个系统具有超低功耗。单片机在低功耗模块3下,耗电仅为1.6μA左右,且ACLK仍保持活动以提供实时时钟,可以满足系统的低功耗要求和实时性要求。
液晶驱动器选用Holtek公司的HT1622芯片,它的工作电压为2.7~5.2V,可驱动32%26;#215;8段段码,正常工作时耗电80μA(Vcc=3V)左右,液晶玻璃片的工作电压不超过2.7V。时钟电路选用Philips公司的低功耗实时时钟芯片PCF8563,它有1.0~5.5V的大工作电压范围,工作电流仅为0.25μA(Vcc=3.0V,25℃)左右。
为进一步降低系统功耗,在系统中加入光控节能电路。在光线不足时,关闭液晶驱动器和无线接收模块,单片机进入低功耗模块3,以降低功耗。图3为光控节能电路的原理图,Rg为光敏电阻。P1口是具有施密特输入特性的带中断功能的I/O口,设置P1.2为上升沿触发,P1.3口为下降沿触发。随着光线的增强(减弱),Rg阻值减小(增大),P1.3(P1.2)口电位下降(上升),当下降(上升)到下降沿(上升沿)输入门槛电压时,触发中断,单片机退出(进入)低功耗模块,同时打开(关闭)液晶驱动模块和无线接收模块电源。实验测得,加入该节能电路后,接收部分在夜间耗电至少少白天减少70μA。
图3
1.3 无线收发模块
从成本和可靠性的角度考虑,选用河南安阳新世纪电子研究所的F05C(发射模块)和J04H(接收模块)。它们的频率一致性好,采用AM调制方式,两者相配合,开阔区最大通信距离约为250m,特别适合多发一收无线遥控及低速数据传输系统。
2 系统的软件设计
2.1 发送部分主程序
发送端主要完成温度的测量及数据发送任务。为降低功耗,HT48R06A-1单片机不需工作时应处于休眠状态。单片机内的8位定时器用于温度的测量,看门狗定时器和片内RC振荡器配合控制连续两次测量和发送数据的时间间隔。发送部分的主程序流程图如图4所示。看门狗定时器溢出时,系统复位并置状态寄存器(STATUS)的T0位,故在程序开始时应先查询STATUS的T0位和PD位以确定系统复位源。若是由WDT溢出导致的系统复位,则先确定是否应进行新的测量和数据发送,若是其它复位方式,则先对系统初始化,然后测量温度并把测量数据发送出去。
图5
2.2 接收部分主程序
为降低系统功耗,接收端MSP430F135单片机在不需要工作时应处于低功耗模块。接收端主程序流程图如图5所示。主程序在完成初始化和第一次测量任务后,单片机立即进入低功耗模式3,同时内部定时器开始工作,每隔一段时间(例如白天1秒,晚上1分)唤醒单片机一次,执行中断处理程序。中断处理程序执行完后,若需测量,则跳到主程序,完成一次测量;否则,直接进入低功耗模块3。无线数据的接收由外部中断完成,数据接收完成后,退出中断处理程序,进入低功耗模式3。
3 低功耗设计
在本系统中,发送端的结构功能较简单,这里主要讨论接收端的节能措施。除了前面所述的硬件节能手段外,由于本系统中选用了待机电流(实测)约为0.7mA(Vcc=3.3V)的J04H接收模块,发送端不能和接收端很好地实现同步,为了既保证数据的可靠接收,又不能系统带来的过大的功耗,必须使用合适的软件措施控制J04H的电源供给。本系统采用预测下次数据发送时间的方法,即以前两次连续接收数据的时间间隔为基准,推测本次数据发送的时间,以实时地打开接收模块电源开关来接收数据。
图6(a)是接收模块J04H正常工作时的程序流程图。系统在下列四种情况下都要进行图6(b)所示的通信异常处理过程:系统上电或复位、系统的环境光线由不足变为充足、系统无线通信工作中出现异常、手动重新接收按键被按下。通信异常处理的步骤如下;
(1)给接收模块供电,准备接收数据,设置开始通信异常处理标志,并计算等待时间。
图6
(2)等待一段时间(如5分钟),若一直没有收到数据,则关闭接收模块电源,清除通信异常处理标志,退出处理程序。
(3)若收到数据,则关闭接收模块30s(设发送端约1分钟发送一次数据)后打开,等待接收新的数据,同时重新开始计算等待时间。
(4)第二次数据没有收到,则回到(2);第二次收到数据后,计算出这两次数据发送的时间间隔,判断此间隔值是否有效。
(5)时间间隔无效,则回到(3);有效,将此时间间隔值作为下次打开接收模块电源开关的时间基准,同时清除通信异常标志,置通信正常标志,退出异常处理过程。
试验表明,本系统很好地完成了预计的各项功能,通过文中所述的软硬件手段,接收端白天运行时耗电为120μA左右,晚上运行时耗电为50μA左右,使用普通的电池,系统可连续工作三个月以上。而对于功耗相近的系统,选用51系列低功耗单片机时,系统的耗电达50mA。
编辑: 引用地址:低功耗高性能无线温温度测量系统的设计和实现