基于单片机的超低功耗电子温度计的设计

发布者:colchery最新更新时间:2011-11-28 关键字:单片机  超低功耗  电子温度计 手机看文章 扫描二维码
随时随地手机看文章

  0  引言

  本文设计的超低功耗电子温度计能够通过温度传感器测量和显示被测量点的温度,并可进行扩展控制。该温度计带电子时钟,其检测范围为l0℃~30℃,检测分辨率为1℃,采用LCD液晶显示,整机静态功耗为0.5μA。其系统设计思想对其它类型的超低功耗微型便携式智能化检测仪表的研究和开发,也具有一定的参考价值。

  1元器件选择

  本系统的温度传感器可选用热敏电阻。在10~30℃的测量范围内,该器件的阻值随温度变化比较大,电路简单,功耗低,安装尺寸小,同时其价格也很低,但其热敏电阻精度、重复性、可靠性相对稍差,因此,这种传感器对于检测在1℃以下,特别是分辨率要求更高的温度信号不太适用。

  显示部分可以采用笔段式LCD液晶显示。特别是黑白笔段式液晶显示器的功耗极低,美观适中,价格低廉,而且驱动芯片可选择性强。为此,本设计选用了技术成熟、功耗较低、性能稳定、价格低廉的通用性LCD驱动器HT1621。

  作为整个系统的核心部件,单片机的选择至关重要。通过比较多家单片机芯片,最终选定了TI公司的MSP430系列控制器,该系列控制器功耗极低,性能强大,成本也较低。

  2 MSP430F单片机的主要特点

  MSP430F系列是美国TI公司生产的一种超低功耗的Flash控制器,该器件有“绿色”控制器(Green Mcu)之称,其技术特征代表了单片机的发展方向。MSP430的片内存储器该器件单元是能耗非常低的单元,消耗功率仅为其它闪速微控制器的五分之一。MSP430F同其它控制器相比,既可缩小线路板空间,又可降低系统成本。

  MSP430F系列器件集成了超低功率闪存、高性能模拟电路和一个16位精简指令集(RISC)CPU,且指令周期短,大部分指令可在一个指令周期内完成。该器件的工作电流极小,并且超低功耗,关断状态下的电流仅为0.1μA,待机电流为0.8μA,常规模式下的(250μA/1MIPS@3V),端口漏电流不足50 nA,并可零功耗掉电复位(BOR)。另外,该芯片属低电器件,仅需1.8~3.6V电压供电,因而可有效降低系统功耗。由于其具有超低功耗的数控振荡器技术,因而可以实现频率调节和无晶振运行。其6μs的快速启动时间可以延长待机时间并使启动更加迅速,同时也降低了电池的功耗。MSP430系列芯片的片内资源丰富,I/O端口功能强大且十分灵活,所有的I/O位均可单独配置,每一根口线分别对应输入、输出、方向和功能选择等多个寄存器里的一位。因此,其温度模拟控制可以采用带隔离的低电压控制方式。

  3超低功耗电子温度计硬件设计

  图1所示是本超低功耗电子温度计的硬件原理框图。下面给出其它单元电路的设计方案。

  3.1温度采集转换电路

  利用MSP430来测量电阻,就可以通过斜率技术而不使用A/D转换电路,处理起来简单易行。对于这种技术,可以使用MSP430系列芯片上的比较器和时钟来完成斜率的A/D转换。

  本系统的具体温度测量是应用电容充放电把被测电阻值转换成时间,再利用MSP430内部的捕获比较寄存器准确捕捉时间,从而测量出热敏电阻的阻值,以间接获得温度值。其温度检测电路结构如图2所示。

  图中,Rref是参考电阻,用于定标,Rsens是被测电阻。[page]

 

  系统工作时首先令MSP430接Rref的口置位,然后输出高电平Vcc并通过标准电阻对电容定时充电,定时时间到后,端口复位,使电容放电,放电过程一直持续到电容上的电压降到充电端口为“0”电平的上限为止,截止时刻由Timer_a内部的捕捉器通过捕捉入口CA0准确地捕捉。这一段放电时间可标记为Tref。然后,对P2.1施以同样的操作,以获得电容通过被测电阻放电的时间Tsens。最后比较Tref和Tsens,并由下式计算出被测电阻值:

  Rsens=RrefTmeas/Tref

  式中,Rsens为被测热敏电阻,Tsens为被测组件放电时间,Tref为参考组件放电时间,Rref为参考精密电阻。

  由上式可以看出,只要电压和电容的值在测量中保持稳定,电压和电容的具体取值便不再重要,这是因为在比例测量原理中,这些因素在计算过程中已被消除。因此,尽管仪表的供电电池的电压具有离散性,并且该电压会随着时间的推移逐渐减小,但是,由于被测电阻值的测量与电源电压值的大小毫无关系,所以该测量方法具有电源电压自补偿特性。

  3.2 LCD液晶驱动显示电路

  LCD显示电路可采用HT1621驱动,HT1621是128点内存映象和多功能的LCD驱动器。HT1621的软件配置特性使它适用于多种LCD应用场合,包括LCD模块和显示子系统。用于连接主控制器和HT1621的管脚只有4或5条。此外,HT1621还有一个节电命令用于降低系统功耗。

  用此LCD液晶驱动器可驱动4路公共端、1/3偏压比的4位液晶板。此驱动电路还具有待机功能。当系统进入待机模式后,驱动芯片和液晶板的总耗电量小于1μA(几乎为零)。

  4软件设计

  4.1  电源管理软件的低功耗设计

  要想最大效率地利用电池的能量,延长便携式仪表的电池使用寿命,除了选择低电压低功耗器件为硬件基础外,还必须编制具有灵活的电源管理软件,具体措施如下:

  (1)由于微处理器内部的基本模块都有各自的电源开关,只有在使用时才打开。因此,进行温度采样时,可通过软件启动定时器Timer_a,开始捕获;采样结束时,再通过软件关闭定时器,禁止捕获;

  (2)由于温度属时慢变参数,因此,温度的采集应采用定时中断方式。即在CPU初始化后立即进入低功耗模式,等待中断。定时器中断将再次唤醒CPU进行温度采集和数据处理,并将此时的温度值存人Flash Ram中,处理完毕后,CPU再次进入低功耗模式;

  (3)对CPU状态进行智能化管理。MSP430单片机具有LMPO~LMP4等5种低功耗模式(LMP的序号越高,该模式下的功耗越低)。不采集温度时,可使CPU处于低功耗模式LMP3(V为3 V,f为32768 Hz),该模式下的工作电流小于2μA。从低功耗模式到工作模式的转换时间小于6μs。

  (4)为了降低电流消耗,可在温度检测电路里用3根I/O口线.并使其平时均处于高阻态,而在数据采集过程中,再通过CPU将相应的口线切换到输出状态。

  4.2软件程序

  本系统软件由主程序、定时中断服务程序和一系列子程序组成。主程序用于完成单片机的初始化以及等待中断。定时中断服务程序包括测量用的定时充电程序、数据处理子程序以及放电时间测量程序等。其放电时间测量程序流程图如图3所示。被测电阻的测量精度取决于放电时间的测量周期数,例如,当所需分辨率为10位时,可设置计数器的最大值为1024个测量周期。

  MSP430的工作模式可通过模块的智能化运行管理软件和CPU的优化状态组合来支持超低功耗的各种要求。主要是使系统中的单片机工作时处于激活模式,工作间隙则将其设定为低功耗模式,以降低系统功耗。

  5  系统测试

  5.1测试方法

  根据环境要求,对本系统的测试可反复在不同温度环境中进行,同时根据数据误差调整软件和硬件来进行校准。温度可采用按度对照校准的方法来测量。

  5.2误差分析

  本测试所使用的仪器包括计算机、EZ430编程器、示波器、精密数字电流表、数字万用表、温度计和秒表等。

  在超低功耗的实现上,可采用极低功耗的组件,并控制漏电流的产生。使微处理器工作在较低频率和使用待机模式,并可优化软件运行,以使整机功耗完全达到最低。

  6结束语

  本电路的优点是分辨率高、功耗低。整个电路的特点是外围组件和可调组件少,工作稳定可靠。该系统设计思想对超低功耗、微型便携式的智能化检测仪表的研究和开发具有一定的参考价值。

关键字:单片机  超低功耗  电子温度计 引用地址:基于单片机的超低功耗电子温度计的设计

上一篇:单片机C868实现无传感器BLDC电机控制
下一篇:基于STCl2C5410AD单片机的四通道声发射信号采集系统设计

推荐阅读最新更新时间:2024-03-16 12:47

基于单片机与传感器模组实现便携式环境测量仪的设计
1 引言 随着人们生活水平的提高, 各电子产品有了突飞猛进的发展, 电子测量仪也逐渐丰富起来, 在各行各业得到了广泛的应用。例如, 在医学方面, 有血糖测量仪, 血压测量仪; 在物理学方面, 有电感测量仪,频率测量仪, 红外测量仪等; 在环境方面, 有空气测量仪, 噪声测量仪等一系列电子测量仪器。而原来的模拟产品也逐步向数字化、综合化转化, 并且不断走向人性化。虽然目前环境测量仪品种很多, 但大多只可液晶显示, 并无语音播报功能。本论文介绍了一种实用的便携式环境参数测量仪的设计, 该测量仪要求充分发挥人性化的特质, 实现光线和温度的播报,并给出相应的温馨提示。为完成该环境测量仪的设计要求, 本设计选择了具有语音播报功能的以凌阳公司
[测试测量]
基于<font color='red'>单片机</font>与传感器模组实现便携式环境测量仪的设计
基于CAN总线和PIC单片机的汽车开关电器盒设计
  0 引 言   随着现代汽车工业技术的不断发展进步,车上安装的电子设备在不断增加,从而使汽车综合控制系统中,有大量控制信号需要进行实时交换。CAN 总线作为一种可靠的汽车计算机网络总线,已经被广泛地推广到汽车控制系统的各个应用领域。将CAN 总线技术应用到汽车开关电器盒中,可使得各汽车计算机控制单元能够通过CAN 总线得到开关电器盒中的工作数据,又能对开关电器盒的各个继电器进行精准的控制,从而达到减少汽车线束、提高通信可靠性、降低系统成本、避免系统功能重复、提高系统工作效率的目的。   1 汽车开关电器盒设计方案   本开关电器盒采用的是基于Microchip 公司生产的PIC18F45K80 芯片作为主芯片的设计方案。
[单片机]
基于CAN总线和PIC<font color='red'>单片机</font>的汽车开关电器盒设计
单片机开发中的几个基本技巧
在单片机应用开发中,代码的使用效率问题、单片机抗干扰性和可靠性等问题仍困扰着.现归纳出单片机开发中应掌握的几个基本技巧. 1、如何减少程序中的bug.对于如何减少程序的bug,应该先考虑系统运行中应考虑的超范围管理参数如下.物理参数:这些参数主要是系统的输入参数,它包括激励参数、采集处理中的运行参数和处理结束的结果参数.资源参数:这些参数主要是系统中的电路、器件、功能单元的资源,如记忆体容量、存储单元长度、堆叠深度.应用参数:这些应用参数常表现为一些单片机、功能单元的应用条件.过程参数:指系统运行中的有序变化的参数. 2、如何提高C语言编程代码的效率.用C语言进行单片机程序设计是单片机开发与应用的必然趋势.如果使用C编程时,要
[单片机]
不可错过的单片机STM32的5个时钟源知识
  众所周知STM32有5个时钟源HSI、HSE、LSI、LSE、PLL,其实他只有四个,因为从上图中可以看到PLL都是由HSI或HSE提供的。   其中,高速时钟(HSE和HSI)提供给芯片主体的主时钟.低速时钟(LSE和LSI)只是提供给芯片中的RTC(实时时钟)及独立看门狗使用,图中可以看出高速时钟也可以提供给RTC。   内部时钟是在芯片内部RC振荡器产生的,起振较快,所以时钟在芯片刚上电的时候,默认使用内部高速时钟。而外部时钟信号是由外部的晶振输入的,在精度和稳定性上都有很大优势,所以上电之后我们再通过软件配置,转而采用外部时钟信号.   高速外部时钟(HSE):以外部晶振作时钟源,晶振频率可取范围为4~16MHz
[单片机]
AVR单片机SPI的应用(AT25256)
/************************************** 硬件:单片机mega162,EEPROM 25256,晶振3.6864MHZ 编译环境:ICC ****************************************/ #include iom162v.h #define BAUD 9600 //波特率4800 #define CRYSTAL 3686400 //晶振3M #define BAUD_set (unsigned int)( (unsigned long)CRYSTAL/ (16*(unsigned long)BAUD)-1 ) //波特率计算 #define BAUD
[单片机]
AVR<font color='red'>单片机</font>SPI的应用(AT25256)
STM8单片机 PWM无波形输出解决方法
  调试STM8单片机PWM功能的时候,经常会遇到一种情况,就是PWM初始化设置完成之后,程序下载到单片机中,确没有任何波形的输出。有时候代码是下载别的调试好的,但是在自己芯片上就是没有波形输出。这时要么骂双穿代码的人忽悠人,上传的代码是错的,要么怀疑自己的单片机坏了。   现在就来分析一下,命名代码正确,但是确没有波形输出这种情况要如何分析判断。   首先来看一下PWM的初始化代码 void TIM1_Init( void ) { TIM1_CCMR2 = 0x60; //TIM1 CH2 输出模式 PWM1 TIM1_CCER1 |= 0x10; //CC2为输出 TIM1_PSCRH
[单片机]
STM8<font color='red'>单片机</font> PWM无波形输出解决方法
PIC单片机的一个简单的SPI小程序
这里介绍一个简单的PIC单片机SPI测试小程序,希望大家能够喜欢。 // DAC module connections sbit Chip_Select at RC0_bit; sbit Chip_Select_Direction at TRISC0_bit; // End DAC module connections unsigned int value; void InitMain() { TRISA0_bit = 1; // Set RA0 pin as input TRISA1_bit = 1; // Set RA1 pin as input
[单片机]
PIC<font color='red'>单片机</font>的一个简单的SPI小程序
51单片机P0口的特性及使用方法解析
一、P0口特性: P0口为三态双向I/O口。对于内部有程序存贮器的单片机基本系统(如定制的8051),P0口可以作为输入/输出口使用,直接连外部的输入/输出设备;也可以作为系统扩展的地址/数据总线口。对于内部没有程序存贮器的单片机(如8031),P0口只能作为地址/数据总线口使用。 1、P0口的输出驱动器中也有一个多路电子开关。输出驱动器转接至口锁动器的Q端时,P0口作为双向I/O口使用。 这时,CPU发来的控制信号为低电平,使输出驱动电路的上拉场效应管T1截止。P0口的锁存器为“1”时,输出驱动器中的两个场效应管均截止,引脚浮空;由于P0口输出电路是漏极开路的电路,必须外接10kΩ拉高电阻才能有高电平输出。而写入“0”时,下
[单片机]
51<font color='red'>单片机</font>P0口的特性及使用方法解析
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved