打印
[MCU]

用MSP430设计极低功耗数字温度计

[复制链接]
852|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Sode|  楼主 | 2019-5-30 11:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用MSP430设计极低功耗数字温度计

       概述
  很多地方都需要测量温度。在设计温度遥测系统时,通常需要采用电池供电的极低功耗模块。传统的测温手段比较多,但不论是采用分立晶体管、热敏电阻,或者是热电偶,功耗都降不下来。
      本文介绍了一种满足低功耗要求的可行方案,该方案使用一枚极低功耗的、带Flash存储器的MCU,以及数字温度传感器、液晶模块(LCD)和一个32kHz的钟表用振荡器。该方案的突出特点是节能耐用,仅需一枚纽扣电池,就可以连续工作10年以上。

  工作原理
  MCU扩展系统的电源是一枚CR-2032型纽扣式锂电池,这种电池的容量为220mAh。要让系统达到连续工作10年(87600小时)的要求,允许的最大负载电流可以用以下方法计算出来:
  220mAh / 87,600小时 = 2.51 A
  这个测温系统不但要测量温度,还要连续显示测量结果。当系统处于单步模式时,TMP100温度传感器每完成一次测量,就会自动进入关断模式,此时的典型功耗为0.1 A;系统处于节能低功率模式(LPM3)时,晶振、LCD驱动器和16位定时器继续工作,此时MSP430的典型功耗为0.9 A;3位半LCD的典型功耗为1 A。

  硬件设计说明
  电池加上一只0.1 F的去耦电容,构成了这个系统的电源。MCU的复位端连接一只68k的上拉电阻,时钟脉冲(ACLK)取自32.768KHz的钟表用晶体。在I2C总线的SCL(时钟)和SDA(数据)上,分别连接一只10K的上拉电阻。
  工作原理
  MCU同温度传感器之间通过I2C总线连接。I2C总线占用2条MCU输入输出口线,二者之间的通信完全依靠软件完成。温度传感器的地址可以通过2根地址引脚设定,这使得一根I2C总线上可以同时连接8个这样的传感器。本方案中,传感器的7位地址已经设定为1001000。MCU需要访问传感器时,先要发出一个8位的寄存器指针,然后再发出传感器的地址(7位地址,低位是WR信号)。传感器中有3个寄存器可供MCU使用,8位寄存器指针就是用来确定MCU究竟要使用哪个寄存器的。本方案中,主程序会不断更新传感器的配置寄存器,这会使传感器工作于单步模式,每更新一次就会测量一次温度。
  要读取传感器测量值寄存器的内容,MCU必须首先发送传感器地址和寄存器指针。MCU发出一个启动信号,接着发出传感器地址,然后将RD/WR管脚设为高电平,就可以读取测量值寄存器。
  为了读出传感器测量值寄存器中的16位数据,MCU必须与传感器进行两次8位数据通信。当传感器上电工作时,默认的测量精度为9位,分辨力为0.5 C/LSB(量程为-128.5 C至128.5 C)。本方案采用默认测量精度,根据需要,可以重新设置传感器,将测量精度提高到12位。如果只要求作一般的温度指示,比如自动调温器,那么分辨力达到1 C就可以满足要求了。这种情况下,传感器的低8位数据可以忽略,只用高8位数据就可以达到分辨力1 C的设计要求。由于读取寄存器时是按先高8位后低8位的顺序,所以低8位数据既可以读,也可以不读。只读取高8位数据的好处有二,第一是可以缩短MCU和传感器的工作时间,降低功耗;第二是不影响分辨力指标。
 MCU读取传感器的测量值后,接下来就要进行换算并将结果显示在LCD上。整个处理过程包括:判断显示结果的正负号,进行二进制码到BCD码的转换,将数据传到LCD的相关寄存器中。
  数据处理完毕并显示结果之后,MCU会向传感器发出一个单步指令。单步指令会让传感器启动一次温度测试,然后自动进入等待模式,直到模数转换完毕。MCU发出单步指令后,就进入LPM3模式,这时MCU系统时钟继续工作,产生定时中断唤醒CPU。定时的长短可以通过编程调整,以便适应具体应用的需要。
  功能扩充
  实现上文所述方案的程序代码只有400字节左右,而MCU的Flash程序存储器有8k之多。此外,虽然MCU有256字节的RAM,但是本程序一个字节都不必用。这256字节的RAM以及那些未用的在系统可编程(ISP)Flash存储器可以用来记录历史数据。另外,MCU还剩余22根输入输出口线、一个双端电压比较器和一个完整的三通道16位定时器Timer A,这些空闲的资源可以用来实现其他一些常用的功能,例如键盘、合成铃声、模数转换、电池电量检测以及串行通信功能。由于系统时钟使用的是32kHz的钟表晶体,所以可以利用定时器中断实现时钟功能(RTC)。
  由于温度传感器和MCU之间采用了I2C总线,所以,可以依靠分配不同的地址连接更多的传感器。以3位地址的TMP100传感器为例,总线上最多可以同时连接8枚传感器。

  小结
  本文介绍了一种极低功耗测温装置的软硬件设计方案,方案采用了MCU、传感器和LCD显示屏,具有功能完善、节能耐用、结构简单、外形小巧、价格低廉等优点。按照该方案制作的测温装置不但可以达到测量要求,而且可以在使用一枚3V电池供电的情况下,连续工作10年以上而不必更换电池。


使用特权

评论回复

相关帖子

沙发
kkzz| | 2019-6-2 16:28 | 只看该作者
MSP430单片机具有LMPO~LMP4等5种低功耗模式  

使用特权

评论回复
板凳
hudi008| | 2019-6-2 16:29 | 只看该作者
TI公司的低功耗微控制器MSP430F149?   

使用特权

评论回复
地板
lzmm| | 2019-6-2 16:29 | 只看该作者
高精度温度测量仪表   

使用特权

评论回复
5
minzisc| | 2019-6-2 16:30 | 只看该作者
谢谢楼主分享的资料了。     

使用特权

评论回复
6
selongli| | 2019-6-2 16:30 | 只看该作者
如何利用软件来对传感器的固有误差进行校正  

使用特权

评论回复
7
fentianyou| | 2019-6-2 16:30 | 只看该作者
使用稳定电路            

使用特权

评论回复
8
xiaoyaodz| | 2019-6-2 16:30 | 只看该作者
高稳定度恒流源模块、模拟开关IC103、传感器、输入模块、双运放差分前置放大模块、模数转换器IC5及单片机IC7   

使用特权

评论回复
9
febgxu| | 2019-6-2 16:31 | 只看该作者
利用软件对测量值进行自动修正  

使用特权

评论回复
10
sdlls| | 2019-6-2 16:31 | 只看该作者
精度较高?               

使用特权

评论回复
11
pixhw| | 2019-6-2 16:31 | 只看该作者
采用高稳定度硬件电路,使电流变化对示值影响大大减小  

使用特权

评论回复
12
selongli| | 2019-6-2 16:31 | 只看该作者
环境温度、电路干扰、电流变化等对仪表精度的影响也很大  

使用特权

评论回复
13
kkzz| | 2019-6-2 16:32 | 只看该作者
LMP的序号越高,该模式下的功耗越低  

使用特权

评论回复
14
minzisc| | 2019-6-2 16:32 | 只看该作者
用MSP430设计极低功耗首选芯片。   

使用特权

评论回复
15
hudi008| | 2019-6-2 16:32 | 只看该作者
数字温度计是测温仪器类型的其中之一   

使用特权

评论回复
16
lzmm| | 2019-6-2 16:32 | 只看该作者
主要是测量的精度问题。      

使用特权

评论回复
17
pixhw| | 2019-6-2 16:32 | 只看该作者
测量精度将不受环境温度影响吗?  

使用特权

评论回复
18
sdlls| | 2019-6-2 16:32 | 只看该作者
整机功耗电流小于2mA?      

使用特权

评论回复
19
febgxu| | 2019-6-2 16:32 | 只看该作者
利用实时校正法、证书校正法或自我溯源法对传感器进行校正并形成校正记录  

使用特权

评论回复
20
xiaoyaodz| | 2019-6-2 16:32 | 只看该作者
超低功耗高精度标准数字温度计稳定电路非常好用的。  

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1049

主题

1522

帖子

8

粉丝