《基于GSMGPRS通信模块的无线通信系统设计毕业论文(22页).doc》由会员分享,可在线阅读,更多相关《基于GSMGPRS通信模块的无线通信系统设计毕业论文(22页).doc(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-基于GSMGPRS通信模块的无线通信系统设计毕业论文-第 18 页基于GSM/GPRS通信模块的无线通信系统设计【摘要】21世纪是信息化的社会,在科技高速发展的影响下,人们也对生活质量提出了新的要求。人们希望在这个信息化的时代下,不受距离和环境的限制实时的掌握重要的信息。本设计目的是设计一个基于GSM/GPRS模块GTM900C的小系统,设计主要要求实现使用单片机发送相应的控制指令实现对GTM900C的控制,当出现警报的时候自主向用户端发送报警信息,正常模式下,用户发送查询信息,GTM900C接收并解码信息,这些信息到达单片机后被识别,可以控制单片机。本设计实现了简易的智能采集系统温湿度并实
2、现返回控制监控系统。【关键字】GSM,AT指令,STC90C516RD+,监控系统【Abstract】The 21st century, as known to us all, has been informational, under the impact of the quickly evolution of technology, it is also the new requirements were asked by people about the quality of life . grasping of the important information in real tim
3、e without the restriction of the distance and the surrounding is peoples wish, in this age of information technology. The purpose of this design is that designing a wireless communication system base on the GSM / GPRS module. The main requirements of the design is use MCU STC90C516RD+ to transmit AT
4、 commands to control the GSM / GPRS module, to sent independent alarm information is to the client when there is the alarm, in normal mode, the user sends the query information, GSM / GPRS module to receive and decode the information, these information reach minute controller after decoded, the minu
5、te controller can control the action. The Design is the Implementation of a simple remote temperature and humidity monitoring system.【Keywords】GSM,AT commands,STC90C516RD+,Monitoring system目录第一章 绪论11.1课题背景11.1.1基于GSM无线通信系统的发展现状及应用前景21.1.2 本课题研究的目的和意义21.2本文的研究工作和内容安排4第二章系统总体结构及硬件设计62.1系统的总体框架62.2系统各模
6、块的硬件设计62.2.1单片机 STC90C516RD+的控制模块62.2.2 GTM900C短信息的处理模块82.3温湿度采集模块112.4 LCD显示模块12第三章 软件设计153.1 软件设计流程概况153.2 单片机的初始化153.3 GTM900C软件编程173.3.1 GTM900C指令说明173.3.2 GTM900C指令设计流程183.4 LCD1602显示子程序203.4.1 LCD1602指令说明及时序203.4.2 1602LCD的RAM地址映射243.4.3 1602 LCD程序设计过程263.5 DTH11读取数据子程序26第四章 系统功能测试284.1 系统功能测试
7、的概况284.2 单片机模拟采集数据284.3 GTM900C性能测试294.3系统超过预设值发报警短信测试304.4系统收短信控制单片机测试31第五章 结论335.1 论文总结335.2 未来工作的展望33致谢35参考文献36附录37附录:GTM900C电路原理图37第一章 绪论1.1课题背景信息化的时代里,如何利用现代化的技术有效的检测一些重要信息引起人们广泛的关注,如何实现实时的,不受环境,距离的限制传送检测信息给相关人员是时代新的话题。与此同时,智能化的产品在我国得到了一定的发展。根据相关的调查,“智能家居“这一概念已经被大众所接受,并且他们有意购买具有此类功能的产品,但是这类产品的价
8、格普遍高于消费者所能接受的价位,也许正是这个原因,类似于智能家居功能的产品没有在大众的家庭中得以普及。用户的需求和当前产品不足之间的矛盾日益激烈,如果研究一款价格在大众的承受范围内,实用性良好的,功能又相当的产品将有很大的市场潜在需求。本设计就是一款简易的智能家居的雏形产品,可以智能化的采集家庭中的温度和湿度,以短消息的方式发给用户。温度和湿度家庭安全的重要参数,本设计可以采集了家庭中的温度和湿度参数。目前监控温湿度的主流方式是将采集到的信息显示在PC端,需要固定的成员整天在PC前监视着这些数据的变化,不仅要浪费人力资源并且监控范围也受到了距离的限制。无线通讯系统的发展为这个问题提供了不同的解
9、决方案,GSM就是其中之一,GSM作为一种移动电话标准,目前已被广为应用,如智能化的抄表系统,现今很多地方采用的这种方式,省去了过去查表人员挨家挨户查表的麻烦。基于GSM的无线信号接收系统利用当前的GSM网络来传输无线数据,而不需要自行构建无线通信网络,为用户节省了建网费。对于那些检测环境较恶劣、监测点相距较远、不适合人为监测、传输数据量小但是又不能没有监控的情况来说,使用基于GSM网络以短信的方式来传递信息的无线通讯系统,比采用其他的通讯方式来得更加稳定,灵活性也更好,同时具备运营成本更低等优势。GSM系统是全球最大的数字蜂窝系统,属于2G时代的技术,发展有一定的时间,其技术相当的成熟,维护
10、简单且费用较为合理12。本文设计了一个简易型的可以采集温度和湿度,根据实际的设置由单片机控制是否把这些数据传送给用户的系统,同时该系统可以接受用户的控制。系统的要求如下:将温湿度传感器采集来的信息传送到单片机,并在LCD上实时的显示,单片机判断采集的值是否超过设定值,若有超过就发报警短信给用户,同时还接受来自用户的查询短信和控制短信,根据短信的内容确定单片机的工作内容。1.1.1基于GSM无线通信系统的发展现状及应用前景一九九二年,在浙江嘉兴,建成并开通了我国的首个GSM演示系统,并于次年九月份起开始营业,为大众提供服务,至今天为止,GSM系统被广为应用,这也使得其占用很大的市场份额并且很快的
11、成长起来。本设计是智能家居的雏形产品,当然这类功能相当的产品在市面上已经出现了不少,这些产品中它们无外乎采用的是导线,红外线,超声波,WiFi,蓝牙来传输信号,或者采用zigbee网络等传输的方式,暂且不说这些产品的投资成本,维护费用等比基于GSM网络的通讯系统高,最为重要的是他们的传输距离是有限的,而人是移动的,不可能一直生活在短距离的范围内,而且这些产品的监控范围有限也对用户的数量有所限制,更不用说这些产品只能进行数据的检测而无法实现用户的返回控制。GSM网络具备有许多的优点,同时,GSM不限定用户的数目,这是传统的通信系统无法达到的。本设计采用的是GTM900C模块作为信息收发的终端,可
12、以以短信息的方式来传输我们采集的数据,又可以实现用短信息来控制家中的电器设备,这体现了信息化社会对现实生活的影响3。该设计成本较低、可靠性较高、占地面积小,在对温湿度要求高、采集点相距比较远的环境中,使用这个方案可以很好节省一些不必要的资源,提高了资源的利用率。1.1.2 本课题研究的目的和意义传统的检测系统的方式主要包裹有如下几种:短距离范围内通过明线传输检测的方式,通过市区电话线的检测,利用英特网的来检测,通过自组网路再通过数传电台,和短距离无线传输等方式。无论采用以上何种方式,都很多缺点,如表1-1所示: 表1-1 传统无线传输缺点序号缺点内容1建设专用型网络投资花费高,维护设备费用高2
13、监控范围狭小,只允许的一定数量用户接入3只能进行信号检测,不能实现返回控制4抗干扰能力差5传输距离短采用GSM网络系统彻底地改变了传统的检测,它很多优势,具体如表1-2所示:表1-2 GSM的优点序号优点内容1GSM技术成熟,市场份额大,可以为用户节省不少建网费和维护费2对使用者的数量没有限制3能够实现数据的双向传输,当受控制的节点出现错误,它自动发送远程的出错报告给中心节点或者移动设备,从而实现控制被控设备4GSM网络运行稳定5GSM网络传输能到达的范围更广,覆盖率更大 而以上这些还只是GSM 技术所能带来的一部分好处,使用GSM技术的检测系统将达到传统检测系统不能达到的标准。通过上面的比较
14、,GSM网络的优点变得更加的明确。本设计中以短消息方式来传递信息,其中的消息的接收和发送以及编解码的工作都是基于GSM网络的。在设计的初期考虑阶段,曾想是否利用3G即GPRS来传送这些家庭中的信息会更具吸引力,后来研究发现GPRS适合于数据量较大的传送中,而采集环境的温湿度信息的数据量很小,用GPRS有点大材小用了。况且,在本设计中若采用GPRS,其难度会上升很多,需要的开发时间更长。最终,确定本设计采用GSM传递信息,利用一条短信即可查询当前的环境值,也可以智能的控制家中的电器,是颇具吸引力的。随着智能化产品逐渐步入市场,该设计肯定会被很多方面使用到,并且有一定发展前景。1.2本文的研究工作
15、和内容安排本设计的工作包括了硬件设计和软件设计两个部分。其中硬件部分有短信处理模块和单片机模块及其外围部分组成,其中短信处理模块采用的是GTM900C,用于短信的编解码。GTM900C支持中英文短信编解码,即PDU方式和TEXT方式,本设计采用的是英文短信编码方式。单片机模块为MCU STC90C516RD+的最小系统及其外围电路(温湿度采集模块,LCD1602,串行接口,LED显示部分,蜂鸣器等);本设计的软件部分有三部分的程序构成,其一是GSM900C初始化和短信处理子程序,其二是LCD1602的显示程序和读DTH11数据的子程序,最后是单片机的主控程序。完成本设计的方法是软硬件交叉式互调
16、。第一步,先找到GTM900C模块,了解了它的工作原理和编码解码方式,测试它的功能是否正常;第二步,根据第一步的内容编写控制GTM900C的程序,测试该程序是否能完成正常的收发短信;第三步,了解DTH11,编写读DTH11内部数据的程序,测试本程序是否完成温湿度显示在LCD上;第四步,整合DTH11和GTM900C的程序,加上串口的控制形成一个工程,优化加调试,测试是否达预期效果;第五步,焊接单片机最小系统板,调试最小系统和GTM900C的通讯工作;第六步,完成论文的撰写工作。设计所完成的功能有:1)单片机STC90C516RD+的P20口输出特定时序的电平供给DTH11,以便实时采集温度和湿
17、度,并且实时的显示在LCD上 2)单片机STC90C516RD+处理采集的数据,判断是否超过预设值,超过则控制GTM900C发短信到用户手机,若单片机没有查到超过预设的情况及进入下一轮采集温度和湿度的循环3)单片机STC90C516RD+能够处理通过GTM900C解码的用户短信,根据短消息内容的不同控制指示灯的亮灭和控制蜂鸣器是否工作。本文一共可以分为5个章节,分别对本设计的内容进行介绍:第一章:简要介绍课题背景、基于GSM无线通信系统的发展现状及应用前景做该设计的意义和介绍本文的内容安排。第二章:介绍本设计总的架构的构想以及各个硬件模块设计的内容。第三章:介绍本设计软件的设计的过程。第四章:
18、对本设计进行总体的测试。第五章:对本设计内容进行总结,提出需要改进的部分。第二章系统总体结构及硬件设计2.1系统的总体框架本系统的硬件有四部分构成,分别是MCU STC90C516RD+的控制部分,GTM900C短信息的处理模块,数据采集电路,LCD1602显示部分。系统原理框图如图2-1所示1。系统总的工作原理是:数据采集电路采集实时的温湿度信息,并传送到LCD1602上实时的显示,MCU STC90C516RD+判断所采集的数据是否超过设定的范围,不超过设定范围则继续正常工作,超过则通过发送控制指令到GTM900C,从而发送短信给用户。同时单片机也在不断地查询是否有来自用户的短信,若有,则
19、让GTM900C完成编解码工作,根据短信内容相应控制单片机动作4 5。图2-1 系统原理框图2.2系统各模块的硬件设计硬件设计部分包括四个部分,分别是MCU STC90C516RD+的最小系统模块,GTM900C短信息的处理模块,温度及湿度采集电路,LCD1602显示部分。2.2.1单片机 STC90C516RD+的控制模块所谓的单片机就是在一块半导体硅片上集成了中央处理器CPU,存储器(RAM/ROM)和各种I/O接口,定时计数器,串口,AD转换器以及外围设备。这样的一块集成电路芯片具有微型计算机的特性,因此单片机又称为微型计算机。单片机主要应用于测试和控制领域,因此单片机又通常被称为微控制
20、器MCU。本设计采用的单片机为STC90C516RD+6。STC90C516RD+单片机是新产出的一代单片机,具备强抗干扰性能,运行速度很快,能耗低等许多特点,其主要特点如表2-1所示:表2-1 STC90C516RD+特点序号特点1机器周期时钟频率的12分频2工作电压5.5V - 3.8V(5V 单片机)3工作频率040MHz4 ROM空间片上集成 4KB Flash ROM 5 RAM空间片内RAM为128B,片外最大可以外扩64KB6 I/O口可供使用的I/O有32个,P1P3为准双向IO口,P0为漏极开路的IO口,可做地址和数据总线的复用端口。P3也具有第二功能7编程支持在系统可编程和
21、在应用可编程8 EEPROM功能具有EEPROM 功能9WDT内部具有看门狗WDT的功能,防止死机10定时计数器2个16位定时器、计数器可供使用11中断中断资源丰富12串行口1个通用型的异步串行口,若需要多个,可以使用定时器来模拟13工作温度范围正常工作温度范围为0到7514封装分为直插式40脚和贴片44脚封装 STC90C516RD+最小系统由复位电路,晶振电路和电源电路组成,如图2-2所示。图2-2 单片机最小系统2.2.2 GTM900C短信息的处理模块2.2.2.1GTM900C简介GTM900C7是华为公司生成的,这个无线通讯模块具有GSM功能,目前被广泛的应用于智能化控制产品中,可
22、以工作在两种频率下,分别为900MHz和1800MHZ,内部高度集成化,是由GTM900B升级而来的。内部嵌有TCP/IP协议模块,使用简单方便,方便使用者的开发工作,缩短了开发周期。GTM900C应用广泛,比如远程监控系统等。GTM900C支持AT命令8,由AT指令控制它与其他设备通讯。GTM900C通过通用串行接口UART接口与外部CPU通信,通讯速率为9600bit/s,主要功能是利用GSM网络以发短信的模式来完成消息的交换等。同时,GTM900C模块也可以在GT800 的网络下运行。GTM900C模块就相当于一般功能较为单一的手机。GTM900C 的产品特性如表2-2所示,GTM900
23、C如图2-3所示。表2-2 GTM900C产品特性图2-3 GTM900C实物2.2.2.2GTM900C与MCU STC90C516RD+的通信GTM900C通过UART接口与外部CPU通信,必须遵循串口通信原则。因此单片机模块想与GTM900C通信必需使用串口,输入输出必须使用串口电平,而MCU STC90C516RD+外接通信端口发送和接收的输入输出都为晶体管逻辑电平,因此单片机端必须使用MAX232进行电平的变换。GTM900C与单片机通讯波特率为9600bit/s,单片机以方式1工作,方式1真正用于数据的串行接收和发送。TXD脚和RXD脚分别用于发送和接收数据。方式1收发一帧数据为1
24、0位,1个起始位(0),8个数据位,1个停止位(1),先发送或接收低位。2.2.2.3 MAX232简介 TI公司的MAX232 9正常工作下的电压为3到5.5伏,自带了静电保护功能,能与5V逻辑输入兼容,-9-3认为0,+3+9认为1,含2路接收、2路发送串行通信接口。MAX232的功能是将单片机的TTL电平和串口电平进行互转,方便STC90C516RD+与GTM900C的通信。在本设计中采用的是MAX232的16pinDIP封装,其中16脚接地,15脚接电源VCC,11,12,13,14脚为第一组接收发送端口,7,8,9,10 脚为第二组接收发送端。MAX232芯片引脚1 C1+和2 C1
25、-,4脚C2+和5脚C2-,2脚V+和6脚V-,15脚VCC和16脚GND,这些四对脚之间接104的电解电容。这个转换电路接线简单,使用单电源就可以使其正常工作,这个电路耗电量少,价格便宜。MAX232与STC90C516RD+相连如图2-4所示。图2-4STC90C516RD+电平变换示意图2.3温湿度采集模块本设计采集的数据是环境中的温度和湿度,所用的传感器为复合式的温湿度传感器DTH1110,其产品特性如表2-3。温度和湿度都是随时间变化模拟的数据,普通的检测方法是采集了这些数据之后在单片机端进行AD转换,以显示数字量,用DTH11则可以更加的方便,它的输出为数字信号,可以由外部CPU以
26、总线的方式直接读取。DTH11特殊的构造,使其具备可靠和稳定的良好性能。传感器内部集成了感湿材料和电极,其原理是当湿度变化是,电极之间就会出现阻值的变化根据阻值变化算出相应的湿度变化。同时,DTH11内部含有NTC元件,用于测量温度,当温度升高,电阻值变小,根据电阻值的变化再加上相应的算法就可以知道温度的变化。DTH11通过data数据端和8位MCU相连。表2-3 DTH11产品特性DHT11采用较为简单的单条总线与性能优良的MCU进行通信11 12。所谓的单总线即利用一条线就可以完成不同设备间数据交换的一种简单的通讯方式。单总线方式内部采用特殊的结构,以允许其他设备在该设备非忙碌时间段里利用
27、该总线来传送数据。为了使该条总线在不发送数据的时候为高电平,通常的做法是,外加接上一个阻值为5.1K的电阻。DTH11和单片机是主机和从机关系,只有单片机能够呼叫DTH11,而DTH11不能够呼叫单片机,即主机访问从机都一定要严格按照单总线时序进行,如果不按正常的通讯时序,从机将不理会主机。DTH11和单片机STC90C516RD+的通信需要同步信号才能正常的通讯,同步信号有DTH11的数据输出脚DATA提供。DTH11一次输出40位数据,共5个字节,第一个字节为湿度的整数数据,接着第二个字节为湿度的小数数据,接着第三个字节为温度的整数数据,接着第四个字节为温度的小数数据,最后一个字节为校验位
28、,其中温湿度的小数部分为0,我们在写程序中读写DTH11过程中不使用。2.4 LCD显示模块 本设计显示部分采用LCD1602 13,实物如图2-5,电路图如图2-6所示。LCD1602为字符型液晶,用来显示字母,数字和符号,但是LCD内部没有中文字库,所以没办法显示中文字符,要显示字符可以直接赋字符。LCD1602液晶的电路原理简单,其数据输入来自P0口。本设计中之所以加上了显示部分,是为了查看当前传送的数据是否正确,方便了后面的测试工作,根据我们的生活习惯,视觉效果来得比其他的感觉都更强烈一些,所以本设计也体现人性化的特点。图2-5 LCD1602实物图2-6 LCD1602电路原理图LC
29、D1602参数说明如表2-4所示:表2-4 LCD1602参数说明LCD1602有16个管脚,管脚的名称及简介如表2-5所示:表2-5 LCD1602引脚说明第三章 软件设计3.1 软件设计流程概况本设计的软件部分包括单片机的初始化部分,GTM900C软件编程及LCD1602的显示子程序和编程实现采集DTH11数据。程序的大概流程是,初始化单片机为串口中断模式,9针串行口的通讯速率为9600bit/s,分别调用LCD显示的初始化子程序,GTM900C的初始化子程序(让GTM900C连上GSM网络),接下来就是进入单片机的主函数体。在主函数里面不停的采集温湿度数据送到LCD显示,下一步判断温湿度
30、是否超过预设值,有则启动发短信,没有则进入下一步查看是否有收到短信,有则进入短信处子程序,没有则返回到主函数体开始,整个程序的运行过程如图3-1所示。图3-1 程序流程图3.2 单片机的初始化MCU STC90C516RD+使用9针串行口与GTM900C数据交换,通讯速率为每秒9600比特,相关寄存器的介绍和设置7如表3-1,表3-2,表3-3,表3-4所示:(1) 表3-1:IE(2) 表3-2:SCON(3) 表3-3:PCONSMOD:频率选择位 例:方式1 (4) 表3-4:TMOD (5)由波特率为9600可以计算定时器初值值在本设计中波特率为9600,根据公式解得X=250=FAH
31、,所以在初始化中设置TH1=TL1=0xFA3.3 GTM900C软件编程3.3.1 GTM900C指令说明初始化GTM900C过程中,采用的是AT命令14。AT命令是一种用来控制移动无线设备行为的命令,通过AT命令可以实现手机之间发短信,打电话,发传真等多种服务。AT命令种类很庞大,有专门的AT指令集,常用AT指令如表3-5所示。表3-5 常用AT指令3.3.2 GTM900C指令设计流程1、GTM900C初始化过程15:(1)设置关闭返回显示。发送指令ATE0rn到GTM900C可以将其关闭,当GTM900C回复OK,表示此设置成功。(2)设置来短信提醒。只有设置提醒,GTM900C才会在
32、收到短信时发送“+CMTI”至单片机,单片机通过查询缓存是否有字符“+CMTI”来判断GTM900C是否收到短信。(3)设置发送TEXT即英文短信编码。目前,GTM900C有两种编码方式,即TEXT编码和PDU编码。TEXT编码只能发送数字和英文字符,而PDU编码可以发送中文短信,但是发送PDU格式的短信需要先在PC端使用unicode工具将中文短信编码为其特定的字符才能发送,即一次只能发送一遍固定的中文短信,本系统发送的短信内容为实时变化的温湿度数据,不适合PDU格式,因此发送AT+CMGF=1rn给GTM900C设置其接受英文短信模式。(4)测试是否连接GSM网络。GTM900C模块只有正
33、常的连接上GSM网络才能够正常的收发短信,发送AT+CREG?rn到GTM900C,当接收回复的第9位和第11位为0,1或者0,5时表示GTM900C连上GSM网络,且信息质量正常。信号质量正常表GTM900C已经成功完成初始化工作,如果不成功则需要重新执行这一步,直到连接上网络为止。2、GTM900C发送短信(GTM900C已连上GSM网络且信号质量正常)(1)设置发送短信息的服务中心。发送AT+CMGS=1895929*rn到GTM900C,回复“OK”即设定了短信的目的用户,发送的短信会被号码为1895929*的用户收到。(2)设置发送短信的内容。设置第一步完成后,GTM900C缓存内等
34、待短信内容,直到收到短信的结束符。(3)发送短信的结束标志。0X1A为短信的结束标志,此时短信内容装载完毕,由短信发送模块主动发到GSM网络。3、GTM900C收短信(1)清除SIM卡中的第X条短信,以便后面接收到的短信存到该位置,便于读取。发送指令AT+CMGD=Xrn到GTM900C后收到回复“OK”即清除第一条短信成功。(2)不断的查询短信是否到来(3)识别新短信已经到来。到有新短信到来时单片机会收到“+CMTI”,所以只要查询缓存里是否出现该串字符即可判断是否有新的短信到来。相应的指令为strstr(aa,+CMTI)!=NULL.(4)同理用语句strstr来查询相应的短信内容从而控
35、制单片机(5)删除该条短信,下次接收短信的时候就可以直接读取。3.4 LCD1602显示子程序3.4.1 LCD1602指令说明及时序16编程实现让LCD1602显示的指令一共有11条,在程序中通过不同的指令控制对LCD1602读和写,以及屏幕上的显示和光标的动作。(注:1为高电平、0为低电平)当状态字的第七位D7为1时,允许位为高时,此时液晶允许进行读和写,当D7为0时液晶的读写被禁止。为了确保液晶读写正确,必须在读或者写之前,检查状态字是否液晶允许读和写。指令说明如表3-6至表3-16所示:1、表3-6:清除显示2、表3-7:返回3、表3-8:输入方式设置4、表3-9:显示开关控制5、表3
36、-10:光标与整体移位的设置6、表3-11:功能设置7、表3-12:设置CGRAM地址8、表3-13:设置DDRAM地址9、表3-14:读忙标志位及地址10、表3-15:写数据11、表3-16:读数据LCD1602基本操作如表3-17所示:表3-17 基本操作时序表读写操作时序如图3-2和3-3所示:图3-2 读操作时序图3-3 写操作时序3.4.2 1602LCD的RAM地址映射相对于单片机处理数据的速度,LCD1602显示速度是较慢的,因此在每次执行指令之前必须先判断液晶是否处于忙碌的状态,若液晶处于忙碌状态,所写的指令将不被理会,即该控制指令失效。让液晶显示字符,首先要设定液晶的显示位置
37、,再输入要显示的字符。1602的内部显示地址如图3-4。图3-4 1602LCD内部显示地址比如,要在液晶上的第一行第三个位置显示字母“a“,应先写入地址字符“82H”(该位置的地址其实是“02H“,但是液晶要求写入显示地址时要求最高位D7恒为1,即02H+80H=82H)。在对液晶LCD1602的初始化过程,首先应设置液晶的显示模式,如光标显示与否,闪烁与否等,显示字符时光标的右移是自动,无需写指令来控制。3.4.3 1602 LCD程序设计过程1、 初始化过程如图3-18所示:2、 读数据、显示数据过程如图3-8所示:3.5 DTH11读取数据子程序读取DTH11温湿度的步骤17:步骤一:
38、DHT11刚刚上电的1S内处于不稳定的状态,因此上电1S内不能发送任何指令,等不稳定状态越过后,再测量环境当中的温度和湿度,并记录数据,同时 DHT11在上拉电阻的作用下,第二脚一直保持为1(高电平);这个时候 DHT11是处于输入状态,时刻准备接收外部信号。步骤二:将微处理器STC90C516RD+的P20设置为输出同时输出低电平,且维持为低的状态不少于18毫秒,然后STC90C516RD+的P20设置为输入状态,由于DTH11外加了上拉电阻,STC90C516RD+的P20变高,时刻准备接收来自DHT11信号。步骤三:当DHT11的第二脚发现到外面的输入信号为0时(低电平)时,等待一段时间
39、,直到外面的输入信号为低的状态结束,此时的DHT11处于输出状态,先输出低电平,维持80微秒,作为回应单片机的信号,然后输出高电平信号,维持80微秒,通知MCU STC90C516RD+开始接收数据,此时处理器的P20 此时处于输入状态,检测到P20出现低电平状态后,等待高电平结束,时间为80微秒,然后开始接收数据。步骤四:由DHT11的第二脚引脚输出40位当前采集到的数据,单片机STC90C516RD+根据P20电平的变化开始接收40位数据,其中数据“0”用50微秒低电平加26-28微秒高电平表示;数据“1”用50微秒低电平加70微秒高电平表示。第四章 系统功能测试4.1 系统功能测试的概况
40、整个系统比较复杂,一起调试比较困难,因此采用的分步调试。主要分为单片机模拟采集数据,在LCD上显示,GTM900C性能测试,系统温湿度超过设定范围发报警信号测试,系统收信息控制STC90C516RD+测试。4.2 单片机模拟采集数据这部分只是为了调试单片机是否能够正常的采集温湿度,并且正确的显示在LCD上。步骤:(1)编写读取数据并驱动LCD显示的程序,编译下载到单片机。 (2)接好线路,LCD不能插反,否则容易烧坏 (3)上电,观察是否与预期相符,若不是,改程序,反复调试调试结果与预期相符,如下图4-1所示。 图4-1 单片机采集数据及显示调试4.3 GTM900C性能验证整个系统中单片机起
41、主控作用,同时GTM900C也起主导作用,只有GTM900C确实可以使用,且可以连上GSM网络并且信号质量正常,只有这样才能实现正常的收发短信。GTM900C功能验证步骤如下:(1)在GTM900C的插卡口装上SIM卡(非电信卡即可)(2)用串口线把GTM900C和电脑相连,插上电源(3)打开电脑端的调试工具(4)分别点击GSM调试区域的各项,其实信号质量最为重要,返回01或者05正常,否则代表GTM900C测试出错,应找到出错的原因。验证结果如下图4-2所示:图4-2 GTM900C信号测试4.3系统温湿度超过预定范围发报警信号测试系统设置温度上限为26C,湿度上限为65%,当采集的数据高于
42、这个值的时候系统会发送报警短信到用户手机,短信内容为当前的温湿度,同时LCD上答应出WARNING字符。测试结果如图4-3,图4-4所示。图4-3 LCD显示出现WARNING情况图4-4 用户手机收到WARNING短信4.4系统收短信控制STC90C516RD+测试用户手机给GTM900C发短信,GTM900C解码后把短信内容传送到单片机,从而使其有所动作。本设计中用户发送短信“c1”,单片机经GTM900C回复“OK”,同时开启蜂鸣器BUZZER,LCD上打印出“OPENBUZZER”,如图4-5所示;用户发送短信“c2”,单片机关闭蜂鸣器BUZZER,LCD打印出“OFFBUZZER”,
43、如图4-6所示;用户发送短信“c3”,单片机回复用户当前的温湿度信息,如图4-7所示。系统整机如图4-8所示。图4-5 用户手机发短信”c1”,单片机收到”c1”时LCD打印字符“OPENBUZER”即开启蜂鸣器,同时回复短信“OK”图4-6 用户手机发短信”c2”, LCD打印字符“OOFFBUZER”即关闭蜂鸣器图4-7 用户手机发短信”c3”,单片机回复当前温湿度信息图4-8 系统整机实物第五章 结论5.1 论文总结本设计主要有单片机STC90C516RD+的最小系统,GTM900C短信收发系统,LCD显示模块和数据采集模块组成。其中单片机系统采用的是STC90C516RD+的最小单元,
44、包括了复位电路,晶振电路,报警模块。短信处理采用的是GTM900C模块,GTM900C自带异步串行口,方便与PC及外围的CPU连接。支持中英文短信的收发,本设计采用的是英文短信。GTM900C高度集成,使用方便,功能稳定强劲,方便开发者的拓展应用。本设计实现了实时的采集温湿度并显示在LCD上,单片机判断当前温湿度是否超过预设值,超过则发短信给用户。同时实现接收用户的控制短信,如收到用户的短信“c1”后,单片机回复用户“OK”,并打开蜂鸣器,在LCD上打印出相应的字符。在整个系统的设计过程中,不管是前期阅读相关材料,中期的软件,硬件设计,以及后期的系统调试,我都学习到了很多,很大程度的提高了自己
45、的实践能力,也从中学会了自己查资料,与相关人员的探讨,等等。5.2 未来工作的展望目前本文所设计的基于GSM/GPRS模块GTM900C的小系统的设计已经完成了软、硬件设计,并且成功通过了相关的测试,但是本设计仍有一些缺点以及需要进一步改进的地方,如:(1)单片机STC90C516RD+的RAM空间只有128字节,而接收短信内容用去几乎一半,且这个时候的短信内容不能很长,这部分仍需优化。方法使用RAM更大的MCU(2)目前所用的单片机没有自动将中文转为PDU编码的功能,所以只有外部的PC转中文为PDU编码才能够发送中文短信,在本系统当中采集的数据是随时间变化的,不能变化一次又人工的让PC编码一
46、次,所以本设计采用TEXT编码,但是中文短信即PDU编码显得更加符合中国人的阅读习惯,后续可以拓展单片机的功能,在实现智能化的过程中显得更加符合个人的习惯。(3)目前的检测系统只能实现实时的检测,没能把每个时段的温度和湿度值保存以研究,在下一步工作中可以实现单片与PC通信,把每个时段的温度与湿度值都存到数据库中。(4)目前使用的是基于GSM的数据采集和传送,数据量小的时候,GSM网络的成本和GPRS网络的成本相当,当数据量大的时候,GSM网络成本还是比较高的,假如可以利用GPRS网络来传送数据,按流量来计费,会比较合理,但是同时GPRS的开发难度加大,开发的时间就会更长。参考文献1韩冰.李芬华
47、.GPRS技术在数据采集与监控系统中的应用J.电子技术,2003(8):P1-32Chen,P.J& X.H.Jiang.Design and Implementation of Remote Monitoring System Based on GSMJ. Computational Intelligence and Industrial Application ,2008(12) P43林承华.覃青生. 基于GSM 的远程控制系统J.电气自动化,2012(1): P2-34张璘.基于GSM网络的远程温湿度监测系统的研究及实现J.电子技术应用,2012-06:5 张慧宁.毕立恒.基于GSM短消息的水情实时监测系统J.办公自动化,2012(04): P2-36宏晶科技技术有限公司.STC89C51RC/RD+系列单片机器件手册Z.2006-04-067华为技术有限公司.GTM900C技术手册Z. 200