1 引言
随着电子计算机信息技术的不断发展和完善,采用单片机实现的温度监控系统的应用越来越多。且采用单片机实现的温度监控系统具有自动化和无人值守等特点,使得它们在许多应用场合得到了广泛的应用。本文介绍的温度采集报警系统具有一定的通用性,它采用传感器与单片机的A/D通道相连,简化了模拟采集的设计,从而减小设计的复杂性,增加系统的可靠性,也同时减小了PCB的面积。报警和显示模块主要是驱动蜂鸣器实现报警功能和便于实时观察。该系统充分体现了智能化、低功耗、高精度的发展趋势。重点在于传感器的设计及智能化、低功耗的硬件电路设计上。
2 系统硬件设计与实现(单元电路设计)
系统以单片机MSP430F149为核心。本系统的功能设计目标应该包括以下几个方面:键盘输入模块、传感器采集模块、显示模块、报警模块、CPU处理模块和电源供电及复位模块等。下面详细介绍一下各单元的硬件电路和实现的功能。
2.1.1 电源部分设计
整个系统采用3.3V供电,考虑到硬件系统对电源要求具有稳压功能和纹波小等特点,另外也考虑到硬件系统的低功耗等特点,因此该硬件系统的电源部分采用TI公司的TPS76033芯片实现,该芯片能很好满足该硬件系统的要求,另外该芯片具有很小的封装,因此能有效节约PCB板的面积。为了使输出电源的纹波小,在输出部分用了一个2.2uF和0.1uF的电容,另外在芯片的输入端也放置一个0.1uF的滤波电容,减小输入端受到的干扰。
2.1.2 复位电路部分设计
在单片机系统里,单片机需要复位电路,复位电路可以采用R-C复位电路,也可以采用复位芯片实现的复位电路,R-C复位电路具有经济性,但可靠性不高,用复位芯片实现的复位电路具有很高的可靠性,因此为了保证复位电路的可靠性,该系统采用复位芯片实现的复位电路,该系统采用MAX809芯片。为了减小电源的干扰,还需要在复位芯片的电源输入腿加一个0.1uF的电容来实现滤波,以减小输入端受到的干扰。
2.1.3 键盘输入电路部分设计
键盘输入电路主要是用来输入数据,从而实现人机交互。该系统的键盘设计是采用扫描方式实现的矩阵键盘。该矩阵扫描键盘由行线和列线组成,键盘的行线作为键盘的控制输出端,键盘的列线作为键盘的输入端。键盘的列线通过上拉电路将两个管脚拉高,这样在没有按键按下的情况下,这两个管脚的电平为高电平,如果有按键按下,则相应的列线管脚为低电平,从而触发中断进入中断服务程序,进而获得输入的数据。
2.1.4 显示电路部分设计
系统的显示电路采用的是简单的LED显示方式,这样的方式能满足该系统的要求,也可以减低系统的成本。该显示电路直接与单片机的数据I/O口进行连接,由于MSP430F149具有丰富的I/O口资源,这样采用并行的接口方式非常容易,减小了系统设计的复杂度,也可以增加系统的可靠性。
2.1.5 报警电路部分设计
该部分电路主要是驱动一个蜂鸣器,这样只需要将蜂鸣器的一端接地,另外一端与单片机进行相连就可以了,考虑到MSP430F149的驱动能力,需要加一个放大电路。为了减少电源的输入纹波对放大电路的影响,在电源的管脚增加一个0.1uF的电容来实现滤波,以减小输入端受到的干扰。图2为报警电路。
2.1.6 温度采集电路部分设计
该系统的温度采集部分是采用MAX6613温度传感器来采集温度数据,该芯片具有宽电压供电、较高的精度、大的测量范围、较小的封装等特点。如图3:
由图可以看出,该采集电路具有简单、实用等特点。为了减少电源的输入纹波对采集电路的影响,在电源的管脚增加一个0.1uF的电容来实现滤波,以减小输入端受到的干扰。
2.1.7 单片机电路部分设计
单片机电路作为整个系统的核心控制部分,主要是完成与其他电路的接口,从而获得数据进行处理,将处理的结果采用某种方式表示出来,比如显示或报警。单片机的接口电路非常简单,分别采用单片机的一般I/O口实现与其他电路的连接,在单片机的时钟设计上与其他单片机有一定的区别,MSP430F149单片机采用两个时钟输入,一个32kHz的时钟信号,一个8MHz的时钟信号。该系统的时钟部分都是采用晶体振荡器实现的。考虑到电源的输入纹波对单片机的影响,在电源的管脚增加一个0.1uF的电容来实现滤波,以减小输入端受到的干扰。
3 系统软件设计
本系统的软件主要包括采集模块、输入模块、显示模块、报警模块和主处理模块。采集模块重要是获得MAX6613温度传感器的数据,该部分主要是通过MSP430F149片内的A/D转换来完成数据的采集任务,采集的模拟参考电压采用片内的参考电压。系统的输入部分为矩阵扫描键盘。P1.0和P1.1构成了键盘的列线,P1.2、P1.3、P1.4、P1.5和P1.6构成了键盘的行线。显示电路直接与单片机的数据I/O口进行连接。P4.0~P4.6是用来显示数据,P2.1是用来控制小数点的显示,P2.2、P2.3和P2.4是用来控制数码管的选通状态。报警处理相当简单,包括初始化端口和数据产生两个部分。主处理模块主要是将各个模块进行协调处理和实现数据交互。主处理模块首先完成初始化工作,初始化后进入循环处理,在循环过程中主处理获得采集模块的数据,并将数据进行处理,根据处理后的结果来进行显示或者报警。由于报警的上限和下限需要设置,另外考虑到对数据的保存,因此主程序先检查门限是否在FLASH里面有,如果没有则进行等待设置数据,设置完成后才进入下一步处理,也就是程序必须在有设置数据的情况下才能正常运行。具体的流程图如图4所示。
4小结:
本文作者创新点是系统通过一个集成的传感器实现温度采集报警系统具有设计简单、运行可靠等特点。并且单片机采用的是MSP430F149,该单片机的功耗非常低,别外加上采用的传感器具有很小的封装,这样该系统经过扩展改进可以用于手持设备。该系统的CPU采用MSP430F149也是考虑将来便于对硬件和软件进行升级扩展。比如,硬件系统中的单片机还有两个UART串口资源,因此该硬件系统可以进一步升级,实现可以与上位机进行通信的系统,也可以通过与MODEM连接来实现远程温度采集监控与报警系统。