1、I论文题目:粮仓温湿度监测系统(软件)专 业:自动化本 科 生:孙婷婷 (签名)_指导教师:乐春峡 (签名)_摘 要本设计是以单片机为核心,配合温度传感器(DS18B20)和湿度传感器(HIH-4010),相关的外围电路以及上位机(VB)显示组成了粮仓温湿度监测系统,可以监测粮仓环境的温度和湿度信号,检测人员可以通过 LCD1602 液晶显示的数据或者上位机(VB) ,实时监控粮仓环境的温度和湿度情况。所有的测量操作都可以通过主机控制软件来实现,温度传感器得到的测量信号,经电路转换为电信号,直接送入单片机。湿度传感器则需要经过 A/D 转换芯片(TLC549)的处理送到单片机进行数据处理,然后
2、经过软件分析处理后送显示装置。本系统还应用 RS232 与上位机相连接,可以设置温度、湿度的报警值,也可以实时显示温湿度的采样值,并将其存入数据库,便于以后对于数据的处理。关键词:STC89C52RC 单片机,温度传感器,湿度传感器,LCD 显示,上位机IISubject: Barn Temperature and Humidity Monitoring System (Software) Specialty: AutomationName: SunTingting (Signature) _Instructor: YueChunxia (Signature) _ABSTRACTThis de
3、sign is based on single chip microcomputer as the core including the temperature sensor (DS18B20), humidity sensor (HIH-4010), the related peripheral circuit and PC (VB) . It can monitor the temperature and humidity signal of granary environment. Workers can display data through the LCD1602 or PC (V
4、B) in time to monitor the barn conditions. All of the measuring the operation can be controlled by software .Temperature sensors can get the signal and the circuit converts them into electrical signals to send the microcontroller. Humidity sensor need to make use of A/D conversion chip to convert th
5、e data to analysis them by MCU sending them to display device by software. This system is connected with PC by RS232.It can set alarm value of the temperature and humidity .It also can display temperature and humidity in time, and save them in the database to handle the data conveniently in the futu
6、re. Key words: STC89C52RC microcontroller, temperature sensors, humidity sensors, LCD display, PCIII目 录第 1 章 前 言 11.1 背景 11.2 国内外研究现状及发展趋势 11.3 设计的目的及意义 21.4 设计的主要工作 31.5 本文的主要内容 3第 2 章 系统的软件设计 42.1 单片机及其外围电路软件设计 42.1.1 系统总体框图设计 .42.1.2 主程序流程图 .52.1.3 DS18B20 温度传感器 .62.1.4 HIH4010 湿度传感器 .62.1.5 TLC5
7、49 A/D 转换模块 .82.1.6 LCD1602 显示模块 92.1.7 按键模块 .102.1.8 报警模块 .102.1.9 串口通信模块 .122.1.10 小结 .132.2 上位机软件设计 132.2.1 上位机系统总体设计 .142.2.2 系统各个模块 .142.2.3 小结 33第 3 章 系统调试和结果分析 343.1 单片机调试及分析 343.2 上位机调试及分析 34第 4 章 总 结 35参考文献 36IV致 谢 37附录 381.仿真原理图 .382 硬件原理图 .393.上位机显示图 .404.实物图 .405.单片机程序 .411第 1 章 前 言1.1 背
8、景俗话说“国以民为本,民以食为天” ,粮食是一个国家的立国之本。是一个国家稳定繁荣的基础。所以说粮食对于国家的重要性是不言而喻的。也正因为如此粮食的科学储藏就显得尤为重要。就我们国家来说,粮食一般存放在粮仓中。对于一些大型粮仓或多或少都还存在着不同程度的粮食储存变质问题。根据国家粮食保护法规定,必须定期抽样检查粮仓粮食的温度和湿度,以便及时采取相应的措施,防止粮食的变质。但大部分粮仓目前还是采取人工测量温度和湿度的方法,这不仅使粮仓工作人员工作量增大,且工作效率低,如果检测任务如不能及时彻底的完成,则很有可能会造成粮食大面积变质。 1.2 国内外研究现状及发展趋势随着传感器技术、计算机应用技术
9、、超大规模集成电路技术和网络通信技术的发展,监控系统广泛应用于工农业生产等领域,在此同时,粮仓温湿度监控技术的研究在软、硬件等方面都有了一定的进展。 初期,以热敏电阻,湿敏电阻作为传感器件,通过检测电阻的变化来反映粮食温湿度的变化,为粮食保管提供参考依据。采用人工测量与人工抄录、管理相结合的传统方法,并且用人工的办法对粮食进行晾晒,通风,喷洒药剂防止因存储不当引起的温湿度异常及虫害,消耗了大量的人力和财力,效率较低。这30年里,粮情检测技术在祖国的广大科技工作者不断地探索与努力下,不断完善、进步、并日趋成熟,逐步形成了多样化的粮仓检测系统,推动了安全、科学储粮了发展。目前,国内生产的粮仓温湿度
10、监控系统种类繁杂,系统结构均不相同,在粮仓外部温湿度检测、粮食内部温湿度检测及分析、通风机械的控制等方面,比之前有了不少进步但仍有发展的空间。 国外的温湿度监控系统相对比较先进,主要体现在以下三个方面: (1)无论是传感器的测量精度、反应速度、稳定性、功能多样性还是使用环境方面,国外的传感器都比较先进。 2(2)构成系统整体的测控技术和管理,无论是硬件还是软件,都已普遍采用相应的标准模块集成,并且早已实现组态。 (3)系统结构已经普遍采用网络连接的现场总线技术(FCS),有些需要的场合,则连接到Internet 上,实现远程控制、远程诊断。 粮仓温湿度监控系统主要应用于监测粮仓环境空间的温度及
11、相对湿度,从系统控制的角度来看,属于纯滞后控制,而这一技术已经相当成熟。目前研制高精度,高性能,多功能的温湿度监控系统是主流,提高可靠性、灵活性和降低成本也是其考虑的重点,并且系统在报警、记录、控制、通信等方面的自动化和智能化也将逐步完善。1.3 设计的目的及意义科学储粮是粮食生产的一个重要环节,若管理不当,粮食发霉或生虫会造成极大浪费,而粮仓管理中最重要的问题是监测粮堆中温度和湿度的变化。现在,我国在粮仓建设上己经实现了规范化,但是监测手段一直未能实现同步现代化。我国许多储备粮仓每年都因测控设备的不完善而导致部分粮食霉变,许多大型储备粮仓的测控设备仍需高价进口,因此国家准备在未来的几年内对全
12、国所有的粮仓进行翻新和改造工作,要求规范粮仓管理,实现粮仓管理现代化。 影响储粮安全的最主要因素是粮堆内的温度和湿度,因此这就要求有一种经济实用的粮仓温湿度监控系统能够及时监测粮仓温度和湿度分布,准确分析粮仓温湿度变化,并及时采取相应控制措施,使得管理人员能够方便有效地进行监控操作。 基于以上内容,我们的目的是设计一款经济、操作方便、实用的粮仓温湿度监控系统。该系统,用单片机作为下位机,对现场的温湿度数据进行采集,同时采用PC机作为上位机,对粮仓进行实时监控。通过RS232 实现下位机与上位机的数据通信。 粮仓温湿度监控系统是通过现场的单片机检测粮库中粮食的基本温湿度情况。利用上位机对粮仓进行
13、监控,用户可方便地构造自己需要的数据采集系统,可以查看历史数据,优化现场作业,提高了生产效率,增强了国家粮食储备安全水平,以获得实时粮仓管理,实现自动化、智能化,为实现我国粮仓管理现代化更近了一步。31.4 设计的主要工作该系统主要利用单片机来测量粮仓中的温度和湿度,为了完成系统功能做以下设计:(1) 根据粮仓温度、湿度的测量范围及要求,选择温湿度传感器。 (2) 设计温湿度测量系统,使之具有测量、报警、设定限定值及实时显示的功能。 (3) 设计基于 RS232的通信系统及基于Visual Basic 6.0的人机界面。 1.5 本文的主要内容本文对所设计的系统进行了介绍和总结,具体安排如下:
14、 第一章:引言,主要介绍了本系统的背景,研究现状,发展方向以及本设计主要内容; 第二章:系统的软件设计,分为单片机(下位机)和 VB(上位机)两大部分。第一部分主要介绍了单片机的各个功能模块的软件设计,如温湿度传感器,A/D 转换芯片,LCD1602等,第二部分主要是VB上位机的软件设计 第三章:总结,对本次毕业设计过进行总结,并对系统的功能和存在的问题进行分析,还陈述了可行的改进方案。 第四、五、六章,分别为致谢,参考文献和附录。4第 2 章 系统的软件设计2.1 单片机及其外围电路软件设计2.1.1 系统总体框图设计该系统主要由以下功能块构成:中央控制处理器 STC89C52RC;数据采集
15、系统(包括温度传感器 DS18B20,湿度传感器 HIH4010) ,显示模块,报警电路,键盘控制系统以及上位机显示。系统总框图如图 2-1 所示:温度传感器D S 1 8 B 2 0湿度传感器H I H 4 0 1 0按键 输入控制电路A / D 转换T L C 5 4 91 6 0 2 液晶显示电路C P U 处理器S T C 8 9 C 5 2 R C蜂鸣器报警电路P C( 上位机 )图 2-1 基于 DS18B20 和 HIH4010 的粮仓温湿度监测系统方框图52.1.2 主程序流程图开 始系 统 初 始 化采 集 温 度定 时 器 T 0 定 时 1 S ?采 集 湿 度A / D
16、 转 换按 键 设 定 报 警 线系 统 报 警测 量 值 超 过 报 警 线 ?结 束L C D 1 6 0 2 显 示NY串 口 发 送 数 据串 口 接 收 中 断上 位 机 发 送 温 湿 度 报 警 线 ?NYNY图 2-2 系统流程图62.1.3 DS18B20 温度传感器DS1820 数字化温度传感器是高度集成的单总线式的,体积小、功耗低,抗干扰是它的优点。所以本系统采用 DS18B20 测量粮仓温度值。单片机的 P2.4 作为其控制口,与其 DQ 端口连接。根据 DS18B20 必须严格遵守其读/写时序的特点,并且必须按照其单总线操作协议采集温度数据。协议的流程为:DS18B2
17、0 的初始化发送 ROM 操作命令处理数据。以下是 DS18B20 流程图:开 始初 始 化 1 8 B 2 0跳 过 读 序 列 号 , 启 动 温 度 转 换跳 过 读 序 列 号 , 读 取 温 度 值处 理 返 回 温 度 值温 度 是 否 为 正 ?正 负 温 度 标 志 位 置 1 置 2返 回正 负 温 度 标 志 位 置 0YN图 2-3 DS18B20 读温度流程图2.1.4 HIH4010 湿度传感器本系统的湿度传感器选用霍尼韦尔(Honeywell )公司生产的线性电压输出式集成湿度传感器 HIH4010,该传感器内部包括湿敏电容和信号处理功能电路,可完成将相对7湿度值变
18、换成电容值,再将电容值转换成线性电压输出的任务输出电压为:(2-1) =()(0.0062()+0.16)在本系统中 固定为+5V,其输出电压值与湿度测量值成正比。当湿度传感器suplyV 把测量的湿度值转换成电压信号后,送入 A/D 转换芯片 TLC549,,将其转换为数字量后送单片机 I/O 口。以下是在 0、25、85时,HIH4010 的输出电压 ,与相对湿 度(RH )的关系曲线:图 2-4 -RH 关系图 由图可知:在 0时相对湿度与电压的关系(2-3)=0.0357+0.8在 25时相对湿度与电压的关系(2-3)=0.0310+0.8在 85时相对湿度与电压的关系(2-4)=0.
19、070+0.882.1.5 TLC549 A/D 转换模块所谓 A/D 转换是指将模拟量转换成数字量。A/D 转换器(简称 ADC)是数据采集中常用的 A/D 转换元件,适用于测量系统及仪表。本系统采用 HIH4010 湿度传感器采集湿度,其将采集到的湿度值转换为线性电压最终输出,由于单片机只能处理数字信号,所以必须使用 A/D 转换芯片,将线性电压转换为数字型电压。本系统选用一款常用的 A/D 转换芯片 TLC549,进行湿度数据的转换。A/D 程序流程图如下:开 始C S 置 高 , C L K 置 低 , 移 位 计 数 器 R 0 为 0C S 置低选中 T L C 5 4 91 .
20、4 s 后 C L K 置 高读 D O U T 、 C L K 置 低R 0 加 1 , 8 位 读 完 吗 ?C S 置 高 转 换 值 存 入 缓 冲 区返 回YN图 2-5 TLC549 流程图程序设计时,要将 A/D 转换输出的数字量转化成对应的电压值。设: X 为模拟电压大小,Y 为 TLC549 采集到的数字量,其中 5V 为电压最大值(本系统为 TLC549 的基准电压值) ,255 为 5V 对应的数字量。根据公式: (2-5)25YVX得: (2-6)196.09通过该式可得到 Y 值所对应的模拟电压的大小,再根据湿度传感器的计算公式,算出湿度值。2.1.6 LCD1602
21、 显示模块本系统为粮仓温湿度监测系统,需要将温度、湿度以及温湿度设置值显示出来,供用户使用。所以选用 LCD1602 作为显示器件,P0 口为数据口,P2 口为控制口。液晶第一行显示温度湿度值,第二行显示设置温湿度值。以下是运行时的图形以及程序流程图。图 2-6 运行时的 LCD1602 开 始是 否 忙 碌 ?写 指 令写 数 据设 置 显 示初 始 化显 示结 束是 否 忙 碌 ?定 时 器 T 0 1 S 到 ?YNYNYN图2-7 LCD1602流程图102.1.7 按键模块主程序开始,单片机将温湿度报警线和当前温湿度数据显示在 1602 液晶屏上。如果K2 键按下,则进入菜单 1,光
22、标闪烁到温度报警线。如果按下 K0 键,则温度报警线加1,如果按下 K0 键,则温度报警线加 1;再次按下 K2 键,进入菜单 2,光标闪烁到湿度报警线,如果按下 K1 键,则湿度报警线加 1,如果按下 K2 键,则湿度报警线减 1;再次按下 K2,液晶屏正常显示温湿度。按键流程图如下:K 0 入口程序K 0 按下 ?延时去抖动菜单是 1 ?温度报警线加一菜单是 2 ?湿度报警线加一结束NYNYNYK 1 入口程序K 1 按下 ?延时去抖动菜单是 1 ?温度报警线减一菜单是 2 ?湿度报警线减一结束YYYNNNK 3 入口程序K 3 按下 ?延时去抖动菜单是 1 ?温度报警线菜单是 2 ?湿度
23、报警线结束YYYNNN图2-8 按键流程图2.1.8 报警模块当温度测量值超过温度设定值时,绿灯亮,蜂鸣器报警;当湿度测量值超过湿度设定值时,黄灯亮,蜂鸣器报警。根据硬件电路:当P3.6=0,绿灯亮;当P3.7=0 ,黄灯亮。因为选择的是有源蜂鸣器,所以当P2.3=0 时,蜂鸣器报警。硬件电路图如下:11温度报警灯: 湿度报警灯:图2-9 温度报警灯电路图 图2-10 温度报警灯电路图蜂鸣器电路:图2-11 温度报警灯电路图程序流程图如下:报 警 入 口 程 序绿 灯 亮 , 蜂 鸣 器 报 警温 度 超 过 温 度 报 警 值 ?湿 度 超 过 湿 度 报 警 值 ?黄 灯 亮 , 蜂 鸣
24、器 报 警结 束NYNY图2-12 报警流程图122.1.9 串口通信模块在粮仓温湿度监测系统中单片机作为下位机需要把“温度测量值” 、 “湿度测量值”、“温度设定值 ”、 “湿度测量值”四种数据发送到上位机。为了上位机处理数据的方便,在发送数据时,将每个数据分为高低两个字节,按照“ 温度测量值高字节” 、 “湿度测量值高字节”、 “温度设定值高字节 ”、 “湿度测量值高字节”、 “温度测量值低字节” 、 “湿度测量值低字节”、 “温度设定值低字节 ”、 “湿度测量值低字节”的顺序依次发送。同时由于单片机需要接收上位机传送过来的“ 温湿度设置值 ”,所以使用了串口接收中断。以下分别是串口发送数
25、据流程图 2-13,串口接收中断流程图 2-14。软件流程图:初 始 化 串 口串口发送入口程序发 送 温 湿 度 数 据定 时 器 T 0 定 时 1 S ?结 束NY图 2-13 串口发送数据流程图13初 始 化 串 口设 置 值 显 示 在 L C D 1 6 0 2上 位 机 发 送 数 据 ?返 回NY产 生 串 口 接 收 中 断串 口 接 收 温 湿 度 设 置 值图 2-14 串口接收数据流程图2.1.10 小结本节主要介绍了单片机及其外围电路的软件设计,DS18B20 是数字型温度传感器,采集的信号可以直接送入单片机,而 HIH4010 是集成型湿度传感器,输出的信号送入A/
26、D 转换芯片 TLC549,然后送入单片机。同时可以通过按键设定报警值,最终LCD1602 将采集数据显示出来。2.2 上位机软件设计本次设计主要是完成粮仓温湿度数据的采集,以及上位机显示,所以需要串口通信的相关知识。用上位机显示,就要设计显示界面,因为数据的数目较多,所以采用表格,为了直观、具体同时绘成温湿度曲线。为了分析采集到的数据,需要建立数据库保存温湿度数据,同时设计与数据库相关的一系列模块,比如“查询模块” 、“数据库模块”、“ 报表模块”。同时因为是一个系统,其必须具有完整的用户服务功能,所以设计了“ 用户登陆”、“注册用户” 、“修改密码”模块。由于以上模块的建立,使得本系统的上
27、位机部分,14具有了一般软件的所具备的基本功能。2.2.1 上位机系统总体设计粮仓温湿度监控系统单片机采集检测的温湿度为上位机提供了数据,粮仓温湿度管理系统将实现对这些数据的查询、显示、报表生成等处理功能,建立一个方便使用、便于管理的人机交互界面。 粮仓温湿度监测系统目的是对下位机检测的数据进行二次处理。主要包括以下功能:1.与温湿度度监控系统单片机进行数据通信。2. 将测量数据存入数据库。3. 实现温湿度度信息库的查询、显示、报表生成等处理功能。粮仓温湿度监测信息管理系统模块框图如下图所示:启动画面登录模块系统主界面注册新用户修改密码实时显示画面查询界面报表界面图 2-15 粮仓温湿度信息管
28、理系统软件总体框2.2.2 系统各个模块 1.启动模块运行本系统,首先出现启动窗体(frmsplsh)。向读者显示系统名称,版本信息等。15系统启动时单击该窗体的任何一处,都将进入下一步,登录模块。软件设计:在“ 工程” 中添加窗体,在 “新建”的列表中选择 “展示屏幕”,并把“ 工程属性”中的“启动对象”设置为 frmsplsh 窗体。将所需控件拖入窗体中,并设置属性。编写窗体代码:当卸载本窗体时,返回登录窗体Sub UnloadForm()Unload MeFrm_login.ShowEnd Sub只要单击窗体的任何部分或按下任何按键,都会用 UnloadForm()过程,退出该窗体。Pr
29、ivate Sub Form_Click() 单击窗体UnloadFormEnd SubPrivate Sub Form_KeyPress(KeyAscii As Integer) 按键UnloadFormEnd SubPrivate Sub fraEdge_Click() 单击框架UnloadFormEnd SubPrivate Sub imgLogo_Click() 单击图标UnloadFormEnd SubPrivate Sub lblInfo_Click(Index As Integer) 单击标签16UnloadFormEnd Sub窗体图如下:图 2-16 启动窗体2.登陆模块为了
30、防止非法用户的干扰,本系统只允许注册用户使用,并且当登录失败超过三次,系统将自动退出。登录模块窗体如下图:17图 2-17 登录窗体图软件设计:(1)在“工程 ”中添加窗体,在 “新建”的列表中选择 “展示屏幕”,并把“ 工程属性”中的“启动对象” 设置为 frmsplsh 窗体。(2)将所需控件拖入窗体中,并设置属性。(3)编写窗体代码:当用户名或密码为空时,点击“ 确定”按钮后会显示提示信息“用户名或密码不能为空”如图所示:图 2-18 提示信息图当用户名或密码输入不正确时,点击“ 确定”按钮后会显示提示信息“对不起,无此用户或密码不正确!请重新输入”如下图所示:图 2-19 提示信息图当
31、操作三次仍未输入正确的用户名或密码时,系统将提示“ 您无权操作本系统!”并且自动关闭窗体,退出系统。如下图所示:18图 2-20 提示信息图输入正确的用户名或密码后,将显示 MDI 主窗体。3.MDI 主窗体本系统采用多文档界面(Multi Document Interface,MDI),来组织系统中的多窗体。多文档界面是一种 Windows 用户界面标准,它是由一个父窗体和多个子窗体构成。MDI 窗体如下:图 2-21 MDI 窗体图在“工程”中添加一个 MDI 窗体,将其(名称)属性设置为 frmMain。它作为整个系统的框架和基础,包含“ 菜单栏 ”,”工具栏”,“状态栏” 和“ 子窗体
32、”。19界面设计:(1)菜单栏:为了使用户操作简便,一般都会加入在主窗体中“菜单栏” 。 本 系统的 “菜单栏 ”中,设计了 “系统功能”、”数据库” 、” 查询”、”显示” 、”报表”和” 帮助”这六个主菜单。其中系统功能又包括“用户管理” 子菜单。(2)工具栏: 在系统开发时,一般习惯将常用功能放在工具栏上,以方便与用户操作,当需要使用这些功能时,只要单击“工具栏 “上的相应图标即可。这就避免了用户在菜单栏中层层查找的麻烦。本系统中设计了” 查询” 、”显示”、” 报表”、 ”退出”和”修改密码”这几个工具栏按钮。(3)状态栏: 状态栏用于显示当前状态下的系统的信息,本系统的状态栏包括系
33、统名称“粮仓温湿度系统” ,“设计者”,“ 指导老师”,“ 系统时间”4.注册新用户模块为了用户服务更加全面,本系统设计了“添加新用户” 模块。登陆系统,然后进入MDI 主窗体界面,在“ 系统功能 ”主菜单下,点击“添加新用户”的子菜单,便会弹出以下窗口。如下图所示:图 2-22 添加新用户图(1)当“用户名 ”的 TextBox 为空时,单击“确定”按钮会弹出“请输入用户名” 的消息框。来提醒用户输入。20如下图所示:图 2-23 信息提示图(2)当“密码 ”的 TextBox 为空时,单击“确定”按钮会弹出“请输入密码” 的消息框。如下图所示图 2-24 信息提示图(3)当“用户名 ”的
34、TextBox 的用户名与数据库中用户信息表中的用户名相同时,按“确定”按钮会弹出“用户名已存在,请选择其他用户”的消息框。如下图所示:图 2-25 信息提示图21(4)为了保证密码的正确性,本系统要求输入两次密码,如果两次输入的密码不同,按确定按钮会弹出“两次输入的密码不同,请重新输入密码”的消息框。如下图所示:图 2-26 信息提示(5)本系统的密码形式只允许“数字” ,所以当输入非数字型式的密码时,系统会弹出“密码只能为数字 ”的消息框。如图所示:图 2-27 信息提示(6)当用户名及“ 密码” 均输入正确时,系统会弹出“注册成功,祝贺你”的消息框。如图所示:图 2-28 信息提示225
35、.修改密码模块为了方便用户使用,本系统具有修改密码的功能。面,登陆系统,然后进入MDI 主窗体界面,在“ 系统功能 ”主菜单下,点击“修改密码”的子菜单。将弹出“ 修改密码”的窗体。如下图所示:图2-29 修改密码窗体图(1)为了用户输入密码的准确性,系统要求输入两次密码,如果两次输入的密码不一致,会弹出“ 密码不一致 ”的消息框。如下图所示:图2-30 信息提示(2)本系统的密码形式只允许“数字” ,所以当输入非数字型式的密码时,系统会弹出“密码只能为数字 ”的消息框。如下图所示:23图2-31 信息提示(3)当没有输入密码时,系统会弹出“请输入密码” 的消息框。如下图所示图2-32 信息提
36、示(4)当密码输入正确时,会弹出“注册成功” 的对话框。如下图所示:图2-33 信息提示6.实时显示模块本模块实现将单片机传送的温湿度数据,通过 MSFlexGrid 表格实时显示出来,并且利用 Picture 控件绘制实时曲线图,同时还显示有温湿度数据的“ 最大值”、“最小值” ,以及报警显示,串口号等。本系统具有通过上位机向单片机发送设置温湿度值的功能,按下“设置温湿度” 按钮,24便弹出“温湿度值设定 ”的窗体,在文本框中输入设定值。按“退出”按钮后,上位机发送数据,单片机接收。几秒后上位机又会重新收到单片机传来的温湿度设定值数据,并显示在上位机“ 设置温度” , “设置湿度”的文本框中
37、。显示窗体如图所示:图2-34 显示窗体图25温湿度设置窗体如图:图2-35 设置窗体图此系统的温湿度设置值默认为99和99%以下,当输入数据超出范围时,弹出以下窗体:图2-36 警告窗体图图2-37 设置值显示图(1) 串行通信控件 MSCommVisual Basic 6.0 是 Microsoft 公司推出的 Visual Studio 6.0 可视化程序中一种编程语言,拥有当今世界主流的可视化编程技术。利用 Visual Basic 开发串口通信主要有两种26方法,一种通过 MSComm 控件,二是调用 Window API 函数。使用 MSComm 控件实现通信的方法比调用 API
38、函数更为简便、快速,并且用较少的代码可以实现相同的功能,可以大大地提高编程效率,也可以减少因为编程不当而导致的系统不稳定。本系统采用 MSComm 控件,实现与单片机的串口通信。其全称为 Microsoft Communications Control,是微软公司提供的 ActiveX 控件,它不但可以进行串口通信,而且也可以用来创建功能完备的、事件驱动的高级通信工具。MSComm 控件在串口编程时非常方便,设计人员不必花时间去了解较为繁杂的API 函数,而且可以在多种语言中使用,比如:Visual Basic、Delphi 、Visual C+等。利用它可以建立与串行端口的连接,通过串行端口连接到其它通信设备(如调制解调器),发出命令,交换数据,以及监视和响应串行连接中发生的事件和错误。(2) MSComm 控件的使用MSComm 控件通信的流程图如图 2-38 所示。编写程序时,只需要按照下面流程图,即可实现通信功能。开 始加 入 M S C o m m 控 件设 置 通 信 端 口设 置 波 特 率 、 奇 偶 校 验 , 数 据 位 , 停 止 位 参 数开 启 端 口用 i n p u t 或 o u t p u t 属 性 读 入 或 发 送 完 毕 ?关 闭 端 口NY结 束图2-38 MSComm控件通信的流程图