基于单片机MSP 430 F 1232的多路温度测试仪的设计

2012-08-02 08:14:00国建岭
上海电气技术 2012年2期
关键词:液晶显示温度传感器端口

国建岭

(太原科技大学 电子信息工程学院,太原030024)

在工农业生产中,经常要对实时温度进行检测。在温度数据的采集领域,传统的方式主要是在多点放置温度测量仪器或者是放置温度计,进行人工读取实际数值。这样不仅操作维护不方便,而且还浪费大量的人力物力去采集温度。另外,在一些恶劣的工业现场,以人工方式直接去读取测量仪器的温度也不现实。本文提出了一种基于单片机技术和集成温度传感器DS 18 B 20的多路温度测试仪,该系统可以方便地实现多路温度数据的远程实时采集。并且该系统可以与上位机实现通信,以便数据报表的生成与打印,提供良好的人机界面。该系统具有抗干扰性强、测量精度高等优点。

1 系统总体设计

系统以高性能、低功耗单片机 MSP430F1232为核心控制器,集成多路温度传感器DS18B20、数据存储器、LCD液晶显示模块、RS232以及电源模块。单片机负责接收来自温度传感器的实时温度数据,将需要显示的温度数据传输到LCD显示模块进行显示,同时对采集到的温度数据进行存储,并且还可以通过RS232接口将采集到的温度数据传输给上位机;温度传感器DS18B20采集现场温度,并将数据通过数据线输出到单片机;LCD液晶显示模块用来显示需要显示的数据。系统可以通过键盘设置温度报警预定值,如果采集到的温度达到预先设定的温度值时,单片机启动报警程序进行报警。电源模块采用LM2574降压型DC-DC电源变换器。系统的结构框图如图1所示。

图1 系统结构框图

2 系统硬件设计

硬件电路的设计以MSP 430 F 1232为核心控制器[1],P 1口和 P 3口控制显示电路(12864);P 2口的(P 2.2、P 2.3、P 2.4、P 2.5)分别外接8路温度传感器,构成多路温度采集系统,负责温度数据的采集;通用串口 UATR0(P 3.4、P 3.5)外接 RS232与上位机进行数据通信;P 3.6、P 3.7模拟串行通信接口与存储器进行数据传输;LM 2574为系统提供3.3 V的工作电压。通过按键K 1、K 2可以预先设定各温度采集点的报警温度值。系统硬件电路图如图2所示。

2.1 MSP 430 F 1232单片机

MCU采用德州仪器(TI)的MSP 430 F 1232单片机,此单片机是一种超低功耗微控器,采用16位的体系结构,16位的CPU集成寄存器和常数发生器,实现了最大化的代码效率。包括1个内置16位的定时器、一个快速12位A/D转换器,一个通用串行同步异步通讯接口和22个I/O端口。它的主要特性:低电源电压输入范围,DC 1.8~3.6 V;超低功耗,2.5 u A @4 k Hz,2.2 V;具有5种节电模式;唤醒时间小于6 us;12位200 Ksps的A/D转换器,自带采样保持;一路串行通讯接口可用于异步通信模式或者同步通信模式;2个8位并行端口,1个6位并行端口;片内包含8 KB FLASH ROM和256 RAM;1个通用的16位定时器,并具有片内温度传感器。

单片机是整个系统的核心控制器,负责温度数据的采集、存储、控制液晶模块内容的显示、与上位机通讯等。

图2 系统硬件电路图

2.2 DS18B20温度传感器

DS18B20是美国DALLAS公司生产的单总线数字温度传感器芯片,采用3引脚T 0-92小体积封装;它的测温范围为-55~+125℃,具有9~12位A/D转换精度,最小温度分辨率可达0.062 5℃,以16位补码方式串行输出所测量的环境温度;DS18B20的工作电源既可由远端引入,也可采用寄生电源方式;多个DS18B20可以并联到2或3根线上,此时CPU只需用一根端口线就可以实现与多个DS18B20传感器的通信,这样占用微处理器的端口也比较少,可广泛用于多路温度检测与控制中[2]。

DS18B20中的温度传感器可以实现对环境中温度的测量,当温度转换指令出现后,转换后的环境温度以补码的形式存放在高速暂存存储器的第0个和第1个字节中。下面以l2位转化为例具体说明:用16位扩展的二进制补码形式提供,以0.062 5℃/LSB的形式表示,其中S为符号位。表XX是12位转化后所得到的12位数据,高字节的前面5位为符号位,如果测得的温度大于0,这5位为0,此时只要将数据乘以0.062 5便可以得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘以0.062 5即可得到实际温度[3]。

例如,+125℃的数字输出为07D0H;25.062 5℃的数字输出位0191 H;-55℃的数字输出为FC90 H。

DS18B20与单片机的接口电路。DS18B20常采用内部寄生电源和外部电源供电两种方式供电,在连接方式上可分为单片连接和多片连接。前者形成单点测温系统,后者构成多点测温系统[4]。本次设计中DS 18 B 20与单片机连接方式为外部电源供电方式:P 2口的(P 2.2、P 2.3、P 2.4、P 2.5)分别外接8路DQ 18 B 20温度测试器,组成32路温度测试系统;VCC接3.3 V电源供电。外部电源供电的优点是电源稳定、抗干扰性强、操作方便。

2.3 液晶显示模块

为方便温度信息的显示,直观地了解各温度测试点的具体温度,以及温度测试点的报警状况,本多路温度测试仪在设计时集成了带中文字库的液晶显示模块。

液晶显示模块采用清达光电公司的HG1286412,它具有8位并行和2线串行接口方式,可以通过设置液晶模块的PSB管脚的电平高低来控制液晶模块工作并行或者串行模式,在多路温度测试仪中采用单片机的P1口并行数据传输方式与液晶显示模块相连。它内置ST 7920汉字字库,可以提供8 192个16×16点的中文汉字和128个16×8点ASCII字符。每屏可显示4行8列共32个16×16点阵的汉字和64个16×8的ASCII字符。只需要向液晶模块写入相应的读写命令和数据就可以将需要显示的内容在液晶模块上显示出来。液晶模块可以根据不同的输入命令分别在液晶屏上显示中文、ASCII码字库或者自己定义的内容。该液晶显示模块工作电压为DC 3.3 V,具有接口方式灵活,控制操作指令简单、方便等特点。

HG12864的数据输入输出端口(DB0~DB7)与单片机的并行端口P1相连接;RS引脚为指令/数据选择信号端口,RS为高电平时单片机向LCD写入数据,RS为低电平时单片机向LCD写入指令;R/W引脚为LCD的读写选择信号端口,R/W高电平时单片机读出LCD端口数据,R/W低电平时单片机向LCD端口写入数据;E引脚为LCD模块的使能信号,高电平有效;分别通过单片机的P3.2、P3.1、P3.0引脚进行控制。LCD模块与单片机的电路连线图如图3所示。

图3 LCD模块与MSP430F1232的连接原理图

2.4 电源模块

系统采用LM2574高性能电压变换器提供工作电压。LM2574技术参数如下:具有宽电压输入范围(DC7 V~DC40 V);该芯片可以输出固定电压或者可调电压;最大输出电流为0.5 A;外围电路简单,只需外接4个电子元器件;内置固定频率(52 KHz)振荡器;转换效率高;具有过热及过负载保护功能。

3 系统软件设计

为方便系统维护与升级,系统软件设计采用模块化程序结构,主要由主程序、温度采集定时器程序、数据显示程序、温度设定程序、数据存储程序以及通信程序等组成。

3.1 主程序

主程序在完成系统初始化后,进入上位机通信查询、显示子程序以及数据存储程序循环,同时等待定时器中断的发生,温度采集采用定时中断方式来实现。主程序流程图如图4(a)所示。

3.2 温度采集中断程序

单片机与DS18B20之间由单总线连接,空闲时单总线状态为高电平,传感器处于既可以写入又可以读取数据的状态。对DS18B20的操作主要包括2类:读取数据与写入数据,以ROM操作命令或存储操作命令的形式出现。常用的命令组成:[F0H]识别总线上的所有传感器;[33H]读单个传感器的序列号;[55H]定位某个传感器;[CCH]跳过ROM操作;[4EH]写存储器;[BEH]读存储器;[44H]完成温度转换。

温度采集中断程序通过定时器中断来实现,当定时器达到预定值时产生中断,系统便进入温度采集程序。进入温度采集程序后,系统将对需要采集的温度采集点进行选择,相应的温度传感器对单片机的请求做出响应,当温度传感器完成温度采集后,单片机对采集完成的数据读取。单片机对读取的数据进行相应的转换后得到温度数值,并且将温度数值进行存储。温度采集中断程序流程图如图4(b)所示。

图4 程序流程图

4 结 语

单片机技术和集成温度传感器设计的多路温度测试仪,具有成本低、精度高、响应速度快等特点。系统硬件以及软件均采用模块化设计,易于升级与维护。经过实际运行,采集数据准确可靠,为多点温度采集应用场合提供了一款全新的测试仪器。避免了以往人工记录存在较大误差的缺点,该系统具有良好的推广价值和应用前景。

[1] 薛小铃,刘志群,贾俊荣.单片机接口模块应用与开发实例详解[M].北京:北京航空航天出版社,2010.

[2] 明德刚.DS18B20在单片机温控系统中的应用[J].贵州大学学报,2006,23(1):106-110.

[3] 金伟正.单线数字温度传感器的原理与应用[J].电子技术应用,2000(6):66-68.

[4] 沙占友.智能化集成温度传感器原理与应用[M].北京:机械工业出版社,2002.

猜你喜欢
液晶显示温度传感器端口
一种端口故障的解决方案
科学家(2021年24期)2021-04-25 13:25:34
温度传感器DS18B20在温度计设计中的应用
电子制作(2019年12期)2019-07-16 08:45:44
一种高性能CMOS温度传感器
XTR105电流变送器在温度传感器中的应用
电子制作(2018年12期)2018-08-01 00:47:40
端口阻塞与优先级
122×32 点阵液晶显示汉字原理实验
初识电脑端口
电脑迷(2015年6期)2015-05-30 08:52:42
生成树协议实例探讨
职业·中旬(2015年4期)2015-05-30 05:54:49
温度传感器在笔记本电脑散热系统中的应用
界面致稳型柔性胆甾相液晶显示器件的制备与性能