基于单片机和PC串口通信的测温系统设计

发布者:清新时光最新更新时间:2011-10-11 关键字:单片机  PC串口通信  测温系统 手机看文章 扫描二维码
随时随地手机看文章

  温度是工业控制中主要的被控参数之一,在日常生活及工农业生产中经常要用到温度的检测及控制,因此研究温度的测量方法和装置具有重要的意义。传统方法多以热电阻和热电偶等为温度传感元件,而这种模拟温度传感器输出为模拟信号,必须经过A/D 转换环节获得数字信号后才能与单片机等微处理器接口,使得硬件电路结构比较复杂、抗干扰性差、布线麻烦以及成本高等缺点。

  针对上述问题,该设计提出了基于Dallas 半导体公司的数字式温度传感器DS18B20[1-2]和ATMEL 公司AT89S52 单片机构成的温度测量系统,并可通过串口连接在PC 系统上进行实时显示,该系统安装简易,可靠性高,适用于恶劣环境的现场温度测量。

 

  1 系统构成

 

  测温系统由微控制器、温度采集、串口通信、LCD 显示和上位机显示等几部分组成,如图1 所示。

 

  图1 系统组成

  图1 系统组成

 

  数据采集流程为:单片机 AT89S52 获取温度传感器DS18B20 采集的温度值,经处理后传输给LCD1602 现实,并且通过串口通信上传给上位机,供上位机显示。

  1.1 DS18B20 数字式温度传感器

  DS18B20 温度传感器是美国DALLAS 半导体公司推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程读取9~12 位数字温度值。DS18B20 的性能特点如下:

  ①适应电压范围更宽(3.0~5.5 V),在寄生电源方式下可由数据线供电;

  ②独特的单线接口方式。与微处理器连接时仅需要一条线即可实现双向通讯;

  ③DS18B20 支持多点组网功能;

  ④DS18B20 在使用中不需要任何外围元件,全部传感元件及转换电路集成在一只形如三极管的集成电路内;

  ⑤温范围-55℃~+125℃,在-10~+85℃时精度为±0.5℃;

  ⑥可编程的分辨率为9~12 位,对应的分辨率分别为0.5℃、0.25℃、0.125℃和0.062 5℃,可实现高精度测温;

  ⑦转换时间为93.75 ms(9 位)和750 ms(12 位),对于一般的实时测温系统已经足够了;

  ⑧测量结果直接输出数字温度信号,以丹总线串行传送给CPU,同时可传送CRC 校验码,具有极强的抗干扰纠错能力;

  ⑨负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。

  1.2 RS_232 串口通信标准

  RS_232C 是美国电子工业协会(EIA)制定的异步串行通信中应用最广的标准总线。该标准适用于数据传输速率在0~20Kbps 范围内的通信,已成为数据终端设备DTE 与计算机和数据通信设备DCE 的接口标准,是PC 机与通信工业中应用最广泛的一种串行接口。其工作电平规定如下:对于数据(逻辑“1”的电平低于-3V;逻辑“0”的电平高于+3V)。对于控制信号(“信号有效”的电平高于+3V,“信号无效”的电平低于-3V)。在实际工作中应保证电平在±(3~15)V。其串行口的9 根针脚功能有其固定的定义。该设计中,只要用RXD 和TXD 两条数据线即可。

  1.3 AT89S52

  AT89S52 是一款低功耗、高性能CMOS 工艺8 位微控制器,携有8K 在系统可编程Flash 存储器。与80C51 产品指令和引脚完全兼容。使其能为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52 还含有:256 字节RAM、32 位I/O 口线、看门狗定时器、2 个数据指针、三个16 位定时器/计数器、一个6 向量2 级中断结构、全双工串行口、片内晶振及时钟电路。另外,AT89S52 可降至0 Hz静态逻辑操作,支持2 种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保模式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

  1.4 LCD1602 显示模块

  液晶显示模块具有体积小、功耗低、显示内容丰富、超薄轻巧等优点,在袖珍式仪表和低功耗应用系统中得到广泛的应用。目前字符型液晶显示模块已经是单片机应用设计中最常用的信息显示期间,LCD1602 液晶显示模块可以显示两行,每行16 个字符,其字符发生器ROM 中自带数字和英文字母及一些特殊符号的字符库,没有汉字。利用LCD1602可以建立8 个6×8 点阵自定义字库的特点。它采用单+5V电源供电,外围电路配置简单,价格便宜,具有很高的性价比。

  LCD1602 的驱动方式有并口驱动和串口驱动两种,并口驱动须占用单片机大量宝贵的I/O 接口;而串口驱动须在单片机的UART 接口空闲的基础上。其主要功能如下:40 通道点阵LCD 驱动、可选择当作行驱动或列驱动、输入/输出信号:输出能产生20×2 个LCD 驱动波形;输入接受控制器送出的串行数据和控制信号,偏压(V1∽V6)、通过单片机控制将所测的频率信号读数显示出来。

 

  2 硬件系统设计

 

  2.1 温度采集电路

  在设计电路时,要想使DS18B20 能够进行精确的温度转换,I/0 线必须在转换期间保证供电。由于DS18B20 的工作电流达到了1 mA,所以仅靠5 K 上拉电阻提供电源是不行的,当几只DS18B20 挂在同一根I/0 线上并同时想进行温度转换时,这个问题变得更加尖锐。考虑到本系统只进行单点测量,故采用从VDD 引脚接入一个外部电源的方法。

  2.2 主控电路及复位电路

  AT89S52 具有多种封装形式,该系统为便于焊接,采用PDIP 封装形式。AT89S52 单片机内资源丰富,为解决该系统的设计提供了多种多样的方案设计,该系统占用AT89S52I/0 端口P1、P2、P3 的部分资源。

  2.3 电平转换电路

  RS_232 是用正负电压来表示逻辑状态,与TTL 以高低电平表示逻辑状态的规定不同,因此,为了能够同计算机接口或终端的TTL 器件连接,必须在RS_232 与TTL 电路之间进行电平和逻辑关系的变换,实现这种变换的方法可用分立元件,也可以用集成电路芯片。考虑到数据的双向传递性,该系统采用MAX232 芯片,可以完成TTL 到RS_232 双向电平转换。

  2.4 显示电路

  LCD1602 是常见的液晶显示器,其特点是读写简易,显示精度高,与用动态数码管显示相比其占用资源较少,且显示数据稳定,抗干扰能力强。

  2.5 硬件构成总电路图

  系统整体硬件电路包括温度采集电路、主控制器电路、电平转换电路和显示电路这四部分,电路如图2 所示。

 

  图2 系统硬件电路总图

  图2 系统硬件电路总图

 

  3 软件系统设计

 

  3.1 下位机软件设计

  下位机程序设计包含三部分:微控制器的初始化、对DS18B20 的访问和对LCD1620 的读写。AT89S52 是该系统的核心部分,控制着温度的转换以及读取温度数值并转化成十进制数以及相应的ASCII 值在1602 上进行显示,通过RS232供PC 机读取温度值。其主要工作流程为:初始化内部部件以达到环境运行要求、初始化DS18B20 以及LCD1602;读取温度值并将采集到的数据进行相应的转化传送到1602 上进行显示;当遇到中断时,进入中断服务函数,检查上位机是否向其请求发送数据。一旦检测到正确的请求即将读取的温度数值按照一定的格式放到缓冲器中,直到数据发送结束,返回中断点继续执行原函数。流程图如图3(a)所示。

  3.2 上位机软件设计

  为方便进行远程控制可将采集到的温度数据通过RS_232 口传输到控制中心的电脑上,以便实时监测。采用VB6.0[4]作为开发平台,可高效快速地完成软件的开发设计。

  采用Viusal Basic 开发串口通信程序主要有两种方法:①使用MSComm 串口控件;②调用Window API 函数。

  使用MSComm 串口控件实现通信的方法比调用API 动态链接库函数的方法方便、快捷、而且用编写代码量少的有点,可以大大地提高编程效率和系统设计的稳定性。该部分软件完成窗体的设计,设置Timer 的间隔为300ms,完成MSComm控件的添加,设置其相应的属性,对所得的数据进行分析计算并在窗口中显示。流程图如图3(b)所示。

 

  图3 测温系统程序流程

  图3 测温系统程序流程

 

  4 结语

 

  这里项目根据实际需要完成了测温系统的设计和实现。

  包括:整体架构设计、下位机底层硬件和软件的具体实现、PC 串口上位机软件设计,较好地达到了预期目的。系统实物图如图4 所示,前后台温度显示如图5(a)、图5(b)所示。

  系统充分利用了DS18B20 微型化、低功耗、高性能、抗干扰能力强等优点,将温度数据通过串口传输到上位机进行统一管理,有利于温度数据的保存和查询,节省了人力成本。

  该系统可应用于较多的测温场合。更高级的基于嵌入式系统和无线传感网络的测温系统目前也是人们研究的热点。下一步的工作将展开基于反馈控制的温控系统设计。

 

  图4 系统实物

  图4 系统实物

  图5 测温结果显示

  图5 测温结果显示

关键字:单片机  PC串口通信  测温系统 引用地址:基于单片机和PC串口通信的测温系统设计

上一篇:单片机控制MGLS-12864接口研究
下一篇:基于单片机的Zigbee传感器节点的硬件设计

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

51单片机C语言教程(六) 变量
上课所提到变量就是一种在程序执行过程中其值能不断变化的量。要在程序中使用变量必须先用标识符作为变量名,并指出所用的数据类型和存储模式,这样编译系统才能为变量分配相应的存储空间。定义一个变量的格式如下:       数据类型   变量名表   在定义格式中除了数据类型和变量名表是必要的,其它都是可选项。存储种类有四种:自动(auto),外部(extern),静态(stat IC )和寄存器(register),缺省类型为自动(auto)。   而这里的数据类型则是和我们在第四课中学习到的名种数据类型的定义是一样的。说明了一个变量的数据类型后,还可选择说明该变量的存储器类型。存储器类型的说明就是指定该变量在C51硬件系统中所使用的存储
[单片机]
基于AT89C51单片机的微型PLC详解
可编程控制器PC(Programmable Controller),为与个人计算机PC(Personal Computer)相区别,可简称为PLC。它是按照成熟而有效的继电控制概念和设计思想,用先进的单片机技术来实现I/O的实时检测和控制,可靠性高,编程简单、易学,因此,得到广泛应用。 将PLC技术引进电工学、电力拖动课程,是课程建设现代化的重要措施。在教学经费相对紧张的情况下,我们自己动手,以AT89C51单片机为核心,设计并研制了LD型微型PLC,应用于继电控制实验,取得了良好的效果。 用单片机构成的PLC,实际上就是一个单片机测控系统。用这样一个程序控制的计算机系统去执行继电控制的梯形图程序,由于继电控制梯形图中各被
[单片机]
基于AT89C51<font color='red'>单片机</font>的微型PLC详解
单片机控制GSM模块实现短信收发的软件设计
摘要:借助系统模型,阐明GSM模块收发短信的基本概念以及串口控制SMS的基本原理。详细介绍单片机控制GSM模块工作的软件实现过程,对怎样用单片机控制GSM模块收发短信进行探讨,也对程序设计的主体思想作了较为细致的分析。 关键词:单片机 短信收发 软件设计 GSM(Global System for Mobile communication)系统是目前基于时分多址技术的移动通信体制中,比较成熟完善,且应用最广泛的一种系统。目前已建成的覆盖全国的GSM数字蜂窝移动通信网,是我国公众移动通信网的主要方式。基于GSM的短信信息服务,是一种在移动网络上传送简短信息的无线应用,是一种信息在移动网络上存储和转寄的过程。由于公众GSM网络在全
[应用]
基于STM32单片机的数据记录装置设计
引言 本文针对电动汽车研究的实际需求,设计一款数据记录装置,该数据记录装置是搭建在电池能量管理系统基础上的,通过与能量管理系统通信,记录电动汽车实际运行时电池的外部状态(如:电池电压、电流、温度等),一方面为了研究电池的工作特性,另一方面为了对能量管理系统的工作情况做验证,为电动汽车动力电池的理论研究提供数据支持。 1 系统总体设计 本数据记录装置的设计包括硬件设计与软件设计两方面,软件设计主要包括数据接收的编程以及数据存储的编程,而硬件设计主要有几个方面:主控芯片的选择、复位功能的实现、电源模块、实时时钟、通信模块以及SD卡连接等。主控芯片是控制系统的核心,它内部所集成的模块越多,就能省去更多的外部电路,使得电路的设
[电源管理]
基于STM32<font color='red'>单片机</font>的数据记录装置设计
符合汽车ASIL-D的看门狗应用设计
当下,一边汽车自动化驾驶的发展势头节节攀高,一边频频出现各类痛心的质量事故。需求促进变革,需求促进功能安全在汽车电子的快速落地,本文就带你领略高安全等级设计中的看门狗。 在汽车安全性要求越来越高的电子系统中,为保证系统程序按照预期流程运行,看门狗对程序的监控措施已成为功能安全需求不可或缺的部分。比如实现程序运行逻辑的监控,实现程序运行时间的监控等,这样的看门狗应用需求,一般的看门狗是无法满足的, ZLG 为用户推荐使用 FS45/65 电源管理芯片,其看门狗基于“question/answer”原理实现,可以很好的支持相关功能安全设计。 一、看门狗介绍 图 1 Challenger WD FS45/65 的
[嵌入式]
符合汽车ASIL-D的看门狗应用设计
单片机 温度调控 大功率设备调整PWM输出
计算式:PWM_Out=100-(75-50)/0.223=10;//50– 正常温度 75–当前温度 通过计算75°时,PWM调整为10% /*热敏管理任务*/ xdata uint8_t CoefficientVaue = 100; //温度调节值% HeatValue = AD_to_TEMP(Config_GMTemp_CH); //读取温度值 Temperture_Management(HeatValue, &CoefficientVaue); //温度管理 #include GM_Temp.h #include math.h xdata uint8_t
[单片机]
51单片机上拉电阻多大
1、51单片机的p0口为了实现准3态,采用了oc输出,也就是集电极悬空输出,也有叫图腾柱输出的。这种电路结构,只有下拉能力,高电平输出没有电流,在高电平时表现为高阻态;加上上拉电阻,就会失去高阻态,变成 1、0 两态。 2、p0口上拉电阻的选择,应遵循基本的电路设计原则,不能盲目套用,要看后级情况而定: 例如,后级驱动的是1只npn三极管,这个三极管的放大倍数(β)=100倍,三极管的负载电流(ic)要求100ma,当电源为5v时: a、三极管的ib=ic/β=1ma; b、上拉电阻大约=r=5v/ib=5kω; c、为了使三极管注入ib后就迅速进入导通(开)状态,r应再小一些,如4k3; 3、由上面计算可见,三极管的负载大小、放
[单片机]
51单片机学习第二天
(1)数字电路中只有两种电平: 高电平和低电平 高电平:5V或者3.3,取决于单片机电源。 低电平:0V (2)RS232电平:计算机串口的电平 高电平:-12V 低电平:+12V 由上面的两个可知,当我们使用单片机跟电脑通信的时候,需要通过各种元器件将单片机的电平转换成计算机可识别的电平才能跟电脑进行通信。 二、进制 二进制 十六进制 三、二进制逻辑运算 四、8051的引脚封装 五、单片机工作的基本时序,一共四种 (1)振荡周期:也称时钟周期,是指为单片机提供时针脉冲信号的振荡源的周期。 (2)状态周期:每个状态周期为时针周期的2倍,是振荡周期经二分频后得到的。 (3)机器周期:一个机器周期包含6个状态周期
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

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

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