便携式环境信息采集系统设计方案.docx_第1页
便携式环境信息采集系统设计方案.docx_第2页
便携式环境信息采集系统设计方案.docx_第3页
便携式环境信息采集系统设计方案.docx_第4页
便携式环境信息采集系统设计方案.docx_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

便携式环境信息采集系统设计方案1 系统的总体设计1.1 系统设计方案方案一:采用纯硬件的闭环控制系统。该系统的优点是速度较快但可靠性较差、控制精度比较低、线路复杂、调试、安装都不方便,实现题目所有的要求难度较大。方案二:采用单片机、安卓手机与温度传感器结合使用的方式。即使用单片机完成人机界面系统控制,实现信息数据的采集存储、分析处理,由温度传感器完成环境信息的采集与转换。这种方案克服了方案一的缺点,所以本论文的设计是基于单片机和温湿度传感器实现对温度和湿度环境信息采集显示的控制。 1.2 系统设计原理为了实现便携式环境信息的采集,本设计采用基于安卓手机与单片机的温湿度的信息采集,根据环境数据信息的采集、发送,选用51单片机STC89C52,温湿度传感器DHT11实现温湿度数据的采集和传输,通过单片机采集完这些数据后,可通过GSM模块以短信方式发送到手机。本论文采用将安卓手机作为信息接收的设计方案,系统主要由主控中心(单片机)、温度信号采集、温度信号显示及控制等功能模块组成,采用模块化设计,可根据需要设置测温点数量,系统具有很好的灵活性和扩展性。1.3 系统设计框图系统采集的温湿度数据需要进行处理,实现被测数据的存储、显示以及控制,本系统釆用模块化设计思想,设计了数据采集模块,单片机控制模块,显示驱动模块和温度设置模块,驱动电路,通信模块。系统总体设计框图如图1.1所示。图1.1 系统总体设计框图Figure 1.1 system overall design block diagram2 系统的硬件设计该系统的硬件模块由键盘、单片机、LCD显示、GSM短信模块、温湿度传感器等各模块组成。2.1 单片机控制模块本设计的硬件电路,通过单片机控制温湿度传感器,从而对温湿度实时采集和监控,并通过LCD1602显示出来。同时,本设计增加了报警语音模块,可根据需要设定温湿度上下限,若当时温湿度超限便会报警。接入矩阵式键盘实现人机交换功能,并用LCD。显示屏显示出来。通过矩阵键盘设置手机号码,通过GSM手机短信模块,手机发送一个指令,系统便会自动把当前温湿度值短信送设置的手机号码上。2.1.1 STC89C52主要特性STC89C52是一个低电压,高性能CMOS8位单片机,器件采用STCMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),片内置通用8位中央处理器和Flash存储单元,STC89C52单片机在电信息行业中有着广泛推广应用。单片机STC89C52有40个引脚,2个读写口线,2个全双工串行通信口,同时含有2个外中断口,32个外部双向输入/输出端口,3个16位可编程定时计数器,它可以按常规方法进行编程,也可以进行在线编程,也可将Flash存储器和通用的微处理器结合使用,可反复擦写的 Flash存储器能够有效降低开发成本。单片机STC89C52为8 位通用微处理器,采用工业标准的C51内核,它主要用于会聚调整时的功能控制。功能包括对会聚主IC 内部寄存器、数据RAM和外部接口等功能部件的初始化,会聚调整控制,会聚测试控制,红外遥控信号IR的接收解码和主板CPU通信等。单片机STC89C52 提供以下功能:8字节FLASH闪速存储器,256字内部RAM,32个I/O口线,3个16 位定时计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,STC89C52可降至OHz的静态逻辑操作,并支持两种软件可选的节电上作模式。空闲方式停止CPU 的工作,但允许RAM,定时计数器串行通信口及中断系统继续工作1。掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。2.1.2 STC89C52的引脚说明STC89C52的引脚图如图2.1所示。图2.1 STC89C52的引脚图Figure 2.1 STC89C52 pin diagramP0口:P0口是一组8位开路型双向1/O 口,即地址/数据总线复用口。作为输出口时,每位可以吸收电流驱动8个TTL逻辑门电路,对端口P0 写“1”时,作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组端口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在FLASH由编程时,P0口接收指令字节,在程序校验时,输出指令字节,需要外接上拉电阻。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,访问期间会激活内部上拉电阻。P1口:P1口 是一个带内部上拉电阻的8 位双向I/O 口,P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。P1.0 和P1.1 还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),Flash 编程和程序校验期间,P1 接收低8 位地址。P2口:P2口是一组带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动4 个TTL 逻辑门电路。对P2口 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或16 位的地数据存储器(例如执行MOVX DPTR 指令)时,P2 端口送出高8 位地址数据。在访问8 位地址的外部数据存储器(例如执行MOVXRI指令)时,P2 口输出P2锁存器的内容。Flash编程或者校验时,P2也可以接收高位地址和一些控制信号。P3 口:P3 口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能。P3 口还接收一些用于Flash闪速存储器编程和程序校验的控制信号2。P3 口引脚的第二功能如表2.1所示。表2.1 P3 口引脚的第二功能Table 2.1 P3 pin second functions引脚号第二功能P3.0RXD(串行输入)P3.1TXD(串行输出)P3.2INT0(外部中断0)P3.3INT1(外部中断1)P3.4T0(定时器0外部输入)P3.5T1(定时器1外部输入)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储读选通)RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节3。一般情况下,ALE 仍然以时钟振荡频率的1/6 输出固定的脉冲信号,它可以对外输出时钟或者是在用于定时目的。当访问外部数据存储器时将跳过一个ALE 脉冲。对Flash存储器编程时,该引脚可以输入编程脉冲(PROG)。还可通过对特殊功能寄存器区中的8EH 单元的D0位置位,禁止ALE 操作。该位置位后,只有一条MOVX 和MOVC指令才可以将ALE 激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 禁止位无效。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当STC89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号4。EA/VPP:外部访问允许。CPU 仅访问外部程序存储器(地址为0000HFFFFH)的时候,EA 端必须保持低电平(接地)。如果加密位LB1 被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU 就会执行内部程序存储器中的指令。Flash存储器编程时,该引脚加+12V 电平的编程允许电源。XTAL1:振荡器反相放大器及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。VCC:供电电压。 GND:接地。2.1.3 复位电路与晶振电路设计单片机控制模块是整个设计方案的核心,它控制了温湿度的采集、处理以及显示,温度值越限时控制电路的启动。复位电路可以提供单片机复位功能,上电时可给单片机Res脚提供相应的复位电平信号电路本设计的复位电路有单片机STC89C52和外围电路组成。STC89C52内部有一个带反馈的线性反相放大器,用于构成振荡器,但是要形成时钟脉冲,外部需要附加电路,本设计采用内部时钟方式,利用芯片内部的振荡器,在引脚XTAL1和XTAL2两端跨接晶体振荡器,构成稳定的自激振荡器,发出的脉冲直接送入内部时钟电路,两个电容的值通常选择为22pf,晶振选择12kHz,为了减小寄生电容,更好地保证振荡器的稳定性和可靠性,振荡器电容应该安装得更加靠近引脚XTAL1和XTAL2。内部振荡器的输入和输出XTAL1和XTAL2,外接晶振和电容组成震荡器,震荡器在,由加电以后延迟一段时间起振产生时钟,CPU通过复杂的时序电路完成不同的指令功能。引脚XTAL2给单片机内部提供时钟信号。引脚EA接+5V电源,表示允许使用片内ROM。RESET复位是系统归零调整操作。单片机STC89C52第9个脚为RESET引脚。在工作中,RESET引脚接高电平2个机器周期可以产生一个复位,其中6个时钟脉冲为1个机器周期。系统采用12MHz晶振,一个时钟脉冲周期为1/12s,一个机器周期含有12个时钟脉冲,即1s。也就是说在RESET引脚上连接一个2s的高电平脉冲即可产生一个复位动作。时钟脉冲震荡电路的主控制器STC89C52内部有晶振电路。在XTAL1和XTAL0两个引脚连接一个石英振荡晶体就可以实现时钟脉冲振荡电路。此脉冲振荡电路选用的振荡频率为12MHz,满足实际的温湿度数据采集的要求。 由于单片机电路是时序数字电路,需要稳定的时钟信号,所以电源上电时,只有当电压超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作5。按键复位原理:上电后,单片机不能复位,不能运行ROM里的程序。工作期间,按下S,C放电。S松手,C又充电,在10K电阻上出现电压,使得单片机复位。几个毫秒后,单片机进入工作状态。复位键按下以后,电容迅速放电,使RST引脚为高电平,复位键弹起以后,电源通过1k电阻对电容重新充电,引脚RST端出现复位正脉冲。单片机按键复位电路与晶振电路图如图2.2所示。图2.2 复位电路与晶振电路设计Figure 2.2 Reset circuit and crystal oscillator circuit design2.2 温湿度采集模块DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它可应用于数字模块采集技术和温湿度传感技术,确保产品的可靠性和长期稳定性。传感器含有一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接,具有超快响应、抗干扰能力强、性价比极高等优点6。因此,本设计采用DHT11温湿度传感器实现环境温湿度信息的信号采集,通过内部电路进行模数转换,将模拟信号转换成数字信号送到单片机进行数据分析处理并且进行显示。温湿度模块的实物图如图2.3所示。图2.3 温湿度采集模块实物图Figure 2.3 Temperature and humidity acquisition module physical map2.2.1 数字传感器DHT11的特性DHT11温湿度传感器的技术参数为:供电电压:3.3-5V DC;输出:单总线数字信号;测量范围:湿度20-90%RH,温度0-50;测量精度:湿度+-5%RH,温度+-2;分 辨 率:湿度1%RH,温度1互换性:可完全互换;长期稳定性:1%RH/年;低消耗;超长的信号传输距离。它的引脚图如图2.4所示。图2.4 DHT11引脚图Figure 2.4 DHT11 pin diagramDHT11为4针单排引脚封装,它与单片机的连接采用简单的单总线进行通信,仅仅需要一个I/O口,传感器内部温度和湿度数据40bit的数据一次性传输给单片机,数据采用校验和方式校验,有效地保证数据传输的准确性。 引脚1:VDD,供电3-5.5VDC。 引脚2:DSTCA,串行数据,单总线,用于单片机与DHT11之间的通讯和同步,每次通信都是以高位先出的顺序传输40位数据,用时约为4 ms。数据格式为:8位湿度整数数据+8位湿度小数数据+8位温度整数数据+8位温度小数数据+8位校验和数据。数据分小数部分和整数部分,当前小数部分用于以后扩展,现读出为零;数据传送正确时,校验和数据等于“8位湿度整数数据+8位湿度小数数据+8位温度整数数据+8位温度小数数据”所得结果的末8位;传感器输出的是未编码的二进制数据,数据是分开的。 引脚3:NC,空脚,请悬空。 引脚4:GND,接地,电源负极。2.2.2 温度采集模块与单片机的连接电路单总线DHT11温湿度传感器共有4个接线引脚,设计中,第一脚Vcc接5V正电源,第二脚Dout为数据端输出,第三脚NC为空脚,一般可悬空不用,第四脚GND接地。DHT11温湿度传感器是数字传感器,应该在电源正引脚接一个滤波电容以提高系统的稳定性。数据端第二脚Dout引脚可直接接在主控制器STC89C52的I/O口P3.0相连发收串行数据,为了提高温湿度采集数据的稳定性,应在Dout和正电源5V之间接一个4.7k的上拉电阻。连接电路图如图2.5所示。图2.5 温湿度传感器与单片机连接图Figure 2.5 Temperature and humidity sensor and microcontroller connection diagram2.3 键盘模块键盘是温湿度检测系统的关键部件,向系统中输入数据和传送命令。键盘是单片机外部设备中所使用的按键的组合,键盘通常分为独立式键盘和矩阵式键盘。独立式键盘的每一个按键都是独立的,占用一条数据线,数据线利用率不高。这种键盘占用硬件资源多,适用于所需按键较少的场合6。键盘中按键数量较多时,通常将按键排列成矩阵形式来减少I/O口的占用。在矩阵式键盘中,每条水平线和垂直线在交叉处不接通,通过一个按键加以连接会使一个端口构成44=16个按键,线数越多区别就越明显。如再多一条线就可以构成20个按键的键盘。从而,需要的键数比较多时,采用矩阵法来做键盘是比较合理的。本系统用到16个按键,按键数比较多,若采用独立式键盘,会浪费单片机I/O口资源,所以本系统设计选择采用矩阵式键盘。矩阵式键盘显然比直接法要复杂一些,识别也要复杂一些。矩阵式键盘的扫描原理主要是分为两个步骤:首先,确定是否有键闭合,然后逐一扫描以进一步确定是哪一个键闭合。当键盘中无任何键按下时,所有的行线和列线被断开且是相互独立的,输入线都为高电平;当有任意键被按下时,则按键所在的行线和列线被接通,因此,该列线的电平取决于该按键所在的行线。矩阵式键盘常用的扫描方法是“行扫描法”,又称为逐行零扫描查询法,即逐行输出行扫描信号“0”,使各行依次为低电平,然后分别读入列数据,检查行中是否有键按下。如果读得某列线为低电平,则表示此行线与列线交叉处的按键被按下,再对该按键进行译码计算出键值,然后转入该键的功能子程序入口地址;如果没有任何一根列线为低电平,则说明此行没有键按下。接着进行下一行“0”行扫描与列读入,直到8行全部查完为止,若无按键按下则返回。对于本系统设计来说,键盘主要用于设定温湿度数据的上下限,还用于预设报警手机号码,从而通过GSM手机模块向手机发送信息(短信内容包括当前的温度值和湿度值)。矩阵键盘也称为行列式键盘,它用4条I/O线作为行线,4条I/O线作为列线组。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是44个。行线接P1.4P1.7,列线接P1.0P1.3。X0 X3是四根行输入线, Y0 Y3 是四根列输入线矩阵键盘就是个按键阵列,不需要电源和地,电源和地是接单片机的。矩阵键盘与单片机STC89C52的连接如图2.6所示。图2.6 矩阵键盘与单片机STC89C52的连接图Figure 2.6 Matrix keyboard microcontroller STC89C52 connection diagram2.4 LCD显示模块设计1602液晶是一种专门显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位可以显示一个字符,每位、每行之间有间隔,会有字符间距和行间距,所以它不能很好地显示图形。液晶显示(LCD)具有体积小、外形薄、重量轻、能耗小、工作电压低、无辐射等优点。目前,液晶显示器已被广泛应用于各种仪器仪表、电子显示装置等场合,成为结果显示的重要工具。本系统需要显示采集的温湿度数据,可以采用LCD1602液晶显示器。2.4.1 LCD1602的引脚说明1LCD602是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。它的软件编写可以使字符一个个显示,显示效果明显。LCD1602的引脚图如图2.7所示。图2.7 LCD1602的引脚图Figure 2.7 LCD1602 pin diagramLCD1602采用标准的16脚接口,其中:第1脚:GND为电源。第2脚:VCC接5V电源正极。第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高。第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。第6脚:E(或EN)端为使能(enable)端,高电平(1)时读取信息,负跳变时执行指令。第714脚:D0D7为8位双向数据端。第1516脚:空脚或背灯电源。15脚背光正极;16脚背光负极7。2.4.2 LCD1602的指令说明及时序(1)LCD1602液晶模块内部控制器共有11条控制指令,如表2.2所示:表2.2控制命令表Table 2.2 control command table序列指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/管控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移。 S:屏幕上所有文字是否左移或右移。高电平有效,低电平无效。指令4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示;C:控制光标的开与关,高电平表示有光标,低电平表示反之;B:控制光标是否闪烁,高电平闪烁,低电平反之。指令5:光标或显示移位 S/C:高电平移动显示的文字,低电平移动光标。指令6:功能设置命令 DL:高电平为4位总线,低电平为8位总线 ;N:低电平为单行显示,高电平双行显示 ;F: 低电平显示5x7的点阵字符,高电平显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或数据,如果为低电平则表示不忙。指令10:写数据。指令11:读数据8。(2)LCD1602液晶模块基本操作时序表如表2.3所示。表2.3操作时序表Table 2.3Operation Timing Table读状态输入RS=LR/W=HE=H输出D0-D7=状态字写指令输入RS=LR/W=LD0-D7=指令集,E=高脉冲输出无读数据输入RS=HR/W=HE=H输出D0-D7=数据写数据输入RS=HR/W=LD0-D7=数据,E=高脉冲输出无(3)LCD1602液晶模块的读写操作时序图。1 LCD1602液晶模块读操作时序如图2.8所示。图2.8读操作时序Figure 2.8 Read TimingtSP1:指的是当R/W=0时,进入写时序,LCD模块会根据RS给定的值定位到数据寄存器或是命令寄存器,即找到地址,tSP1反应的是找地址所需要的时间,至少要60ns。tF、tR:上升时间和下降时间。tPW:使能信号E的保持时间,至少450ns。tSP2:数据的建立时间,从时序图中可以看出,当总线DB7-0的数据准备好以后,通过控制线E的下降沿把数据打入LCD模块里面,所以在E的下降沿来临之间,必须要有一个数据的建立时间tSP2,至少195ns,在E的下降沿到来之前的195ns,总线上的数据必须保持稳定。tHD2:有建立时间就有保持时间,在E的下降沿来了之后,数据要保保持不变一段时间。tc:不能太过频繁地对LCD模块进行读写,让它内部有一个消化过程。2 LCD1602液晶模块写操作时序如图2.9所示。图2.9 写操作时序Figure 2.9 Read Timing写指令:RS=L,R/W=L,D0D7=指令码,E=高脉冲,现在是写数据,E 引脚是低电平状态,前三句不管怎么写,1602 液晶只要没有接收到 E 引脚的使能控制,它都不会来读总线上的信号的。当通过前三句准备好数据之后,E 使能引脚从低电平到高电平变化,然后 E 使能引脚再从高电平到低电平出现一个下降沿,1602 液晶内部一旦检测到这个下降沿后,并且检测到 RS=L,R/W=L,就马上来读取 D0D7 的数据,完成单片机写 1602 指令过程。归纳总结我们写了个 E=高脉冲,意思就是:E 使能引脚先从低拉高,再从高拉低,形成一个高脉冲。写数据:RS=H,R/W=L,D0D7=数据,E=高脉冲和写指令是类似的,就是把 RS 改成 H,把总线改成数据即可。2.4.3 LCD1602的连接电路STC89C52单片机的P0口在间接访问连接1602数据口、或作普通IO口连接1602控制线情况下,需要上拉10K左右排阻(8位)。而其他口可直接连接。在P0口直接访问方式时,连接1602所有管脚时什么电阻也不需要。LCD1602的显示电流是由LCD1602内部电路提供,是1602的VCC、GND提供的。LCD1602与单片机可以总线(直接访问)/或模拟总线(间接访问)连接。所有连接线上只有信号,没有功率驱动。目的是将接口命令发送给1602内部控制器。LCD1602的三个(E,RW,RS)控制引脚接单片机STC89C52的P2口,其中1602液晶控制器写数据/写命令选择端RS和P2.7相连,读/写选择端RW和P2.6相连,使能端和P2.5相连。液晶驱动3脚是背光调节,接单片机电源VCC要加电阻。1602的8个数据信号接单片机的P0口。LED-接单片机的地,LED+接单片机的电源VCC,。VSS接单片机地,VCC接单片机的电源VCC。LCD1602液晶模块和单片机STC89C52的连接图2.10所示。图2.10 LCD1602液晶模块和单片机STC89C52的连接图Figure 2.10 LCD1602 connection diagram of LCD module and MCU STC89C522.5 报警模块报警模块的主要器件是蜂鸣器LS1,蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动连接至单片机的膜发声。报警采用蜂鸣器报警,当温湿度达到设定值开始声音报警,蜂鸣器通过放大器连接至单片机的P1.7口,当温湿度值达到设定值,P1.7口给出一个信号。电路图中的电阻作为限流电阻。单片机电流驱动能力很弱,所以要经三极管放大一下才可以三极管是NPN管,当单片机P1.7口输出高电平时,三极管T1基极正偏而饱和导通。IO向外输出电流的能力若,向里输入电流的能力强,这样,蜂鸣器正极接VCC,负极接单片机IO,IO高电平时蜂鸣器会响的。通过放大器放大后使喇叭发出声音,便会实现了报警的功能。报警电路图如图2.11所示。图2.11 蜂鸣器报警电路图Figure 2.11 buzzer alarm circuit diagram2.6 GSM手机短信无线控制模块GSM通信模块是数据传输的通信核心。本系统设计中,GSM模块利用C语言平台,使用51单片机,以短信的方式方式采集的温湿度信息以及报警信号,并且通过串口实现与单片机的通信,单片机STC89C52就是通过RS232(TXD、RXD)与GSM通讯模块连接即可。通常SIM900A可以快速安全可靠地实现系统方案中的数据、短消息,GSM模块需要手机里的手机卡,需要安装SIM卡。GSM模块可以提供不同的数据传输速率,据此可以把模块分为GPRS模块、EDGE模块和纯短信模块。短信模块只能提供最基本的短信和语音服务。工程技术人员使用微处理器提供的串口功能与GSM模块通信。微处理器经串口向模块发送标准的STC命令来控制GSM模块完成各种无线通信功能。GSM模块具有一定的独立处理功能,可以将它看作是一个单片机通过串口发送STC指令控制其完成一定的功能。该模块将射频芯片、基带处理芯片、存储器、功放器件等集成在一块线路板上,并提供标准接口的功能模块。模块在启动时需要一个很大的电流,所以对于该模块来说,设计带负载能力很强的电源是非常重要的。该模块具有波特率自适应功能,只要向模块发送STC就可以同步波特率,这个串口编程带来了很大的便利。GSM模块实物图如图2.12所示。图2.12 GSM模块实物图Figure 2.12 GSM module physical map2.6.1 SIM900A简介SIM900A是SIMCOM公司推出的无线通信GSM模块。自带RS232通讯接口,可方便地与PC机、单片机连机通讯,可快速、安全、可靠地实现系统方案中的数据、语音传输、短消息服务(Short Message Service)和传真。SIM900A模块的工作电压为3.35.5V,可以工作在900MHz、1800MHz两个频段所在频段功耗分别为2w(900M)和1w(1800M)。SIM900A模块有40个引脚,通过一个ZIF(Zero Insertion Force,零阻力插座)连接器引出。这40个引脚可以划分为5类,即电源、数据输入/输出、SIM卡、音频接口和控制。SIM900A的引脚图如图2.13所示。图2.13 SIM900A的引脚图Figure 2.13 SIM900A pin figure第15引脚是正电源输入脚通常推荐值4.2V,第610引脚是电源地。第11、12引脚为充电引脚,可以外接锂电池,第13为引脚对外输出电压(共外电路使用),14为ACCU-TEMP接负温度系数的热敏电阻,用于锂电池充电保护控制9。第15脚是启动脚IGT,系统加电后为使SIM900Ai进入工作状态,必须给IGT加一个大于100ms的低脉冲,电平下降持续时间不可超过1ms。第1623引脚为数据输入/输出,分别为DSR0、RING0、RxD0、TxD0、CTS0、RTS0、DTR0 和DCD0。SIM900Ai模块的数据输入/输出接口实际上是一个串行异步收发器,符合ITU-T RS232接口标准11。它有固定的参数:8位数据位和1位停止位,无校验位,波特率在300bps115kbps之间可选,默认9600。硬件握手信号用RTS0/CTS0,软件流量控制用XON/XOFF,CMOS电平,支持标准的STC命令集10。第18引脚RxD0、19脚TxD0为TTL的串口通讯脚,需要和单片机或者PC通讯。 第2429引脚为SIM卡引脚,SIM900Ai使用外接式SIM卡,SIM卡同SIM900Ai是这样连接的:SIM上的CCRST、CCIO、CCCL、CCVCC和CCGND通过SIM卡阅读器与SIM900Ai的同名端直接相连,ZIF连接座的CCIN引脚用来检测SIM卡是否插好,如果连接正确,则CCIN引脚输出高电平,否则为低电平。 第32引脚SYNC引脚有两种工作模式,一种是指示发射状态时的功率增长情况,另一种是指示SIM900Ai的工作状态,可用STC命令STC+SYNC进行切换,本模块使用的是后一种。当LED熄灭时,表明SIM900Ai处于关闭或睡眠状态;当LED为600 ms亮/600ms熄时,表明SIM卡没有插入或SIM900Ai正在进行网络登录;当LED为75 ms亮/3s熄时,表明SIM900Ai已登录进网络,处于待机状态。第30、31、32引脚为控制脚,其中30脚为RTC backup,31脚为Power down,32 脚为SYNC。 第3538引脚为语音接口,35、36脚接扬声器放音,37、381可以直接接驻极体话筒来采集声音(37是话筒正端,39是话筒负端)。2.6.2 SIM900A外围电路电路SIM900A与SIM卡的连接为SIM上的 CCRST、CCIO、CCCL、CCVCC 和 CCGND 通过 SIM 卡阅读器与SIM900A的同名端直接相连,ZIF 连接座的 CCIN 引脚用来检测SIM 卡是否插好,如果连接正确,则 CCIN 引脚输出高电平,否则为低电平11。SIM900A上自带了一个串口线,通过这个串口线可以将SIM900A与电脑相连接,但是这个线的末端接入了将TTL电平转换为RS与232电平的转换器。在与单片接直接连接的时候要确保在串口线上没有接入电平转换器。与单片机连接时,SIM900A的串口应该是CMOS电平。应该将SIM900A的18、19引脚分别和单片机CPU输出管脚RXD、TXD直接连接,其中再共地。SIM900A与单片机的连接图如图2.14所示。图2.14 SIM900A与单片机的连接图Figure 2.14 SIM900A connection diagram with SCM3 系统软件设计系统软件的设计在规划好后进行设计,对整个系统设计划分模块,逐个模块实现其功能,最终把各个子模块合理的连接起来,构成总的程序,包括对数据的说明、子程序和主程序,对程序进行编译、连接,然后进行调试,调试好后下载烧录到单片机中。3.1 主程序设计模块软件部分采用模块化的方法将其分为几个部分,然后逐模块设计程序,用C语言来实现,使各部分结合起来协调工作,最终实现对环境中温湿度的实时采集检测。整个系统软件程序设计可以分为两大部分,第一部分是监控软件(主程序、整个控制系统的核心),这部分完成的主要功能是协调各执行模块的关系处理并驱动各模块工作。第二部分是执行软件(子程序),这部分完成的主要功能是完成各种具体的功能如采集数据、存储分析、显示、报警以及通讯等。系统的每一个小的功能的实现依赖于每一个执行软件的正确设计和运行。具体的模块是:单片机控制模块,LCD1602显示模块,蜂鸣器报警模块,GSM手机短信无线模块。3.2 主程序设计流程图主程序设计流程图如图3.1。图3.1 主程序设计流程图Figure 3.1 The main program flow chart4 系统开发过程与实物本设计软件程序编写调试选用的是Keil uVision4,单片机下载烧录选用的是宏品公司开发的STC-ISP软件。通过使用STC-ISP软件对系统程序进行烧录。本文主要用到的元器件有电阻、电容、单片机、LCD显示器、驱动芯片、温湿度传感器、按键等,分析连接好各个接线口,然后利用软件调试进行烧录、调试程序,实现相应的功能。因此根据系统的设计目标和设计要求,本论文设计利用Keil uVision4软件编译,修改程序,利用STC-ISP软件给单片机下载程序。4.1 Keil uVision4编译环境本设计软件测试是在Keil uVision4集成开发环境下完成,Keil uVision4集成环境是一套完整、独立的开发软件,它提供了程序的编写、修改、下载以及测试用的所有工具。Keil uVision4集成开发环境正因为将全功能的编辑、编译和调试环境有效集成在一起,同时还支持PLM,汇编语言和C语言的程序设计。与汇编语言相比较,C语言在功能上,结构性、可靠性、可维护性上有很大的优势,易学易用,Keil uVision4提供了包括C编译器,宏汇编,连接器,库管理和一个功能强大的仿真调试期等在内的完整开发方案,通过一个集成环境将这些部分组合在一起。应用Keil uVision4进行软件仿真开发的主要步骤为:(1)新建工程。单击“Project”菜单,在弹出的下拉菜单中选择“New Project”选项,然后选择你要保存的路径,输入工程名字,在弹出的对话框选择单片机的型号,单击确定。(2)新建文件。单击“File”菜单,选择“New File”选项,此时光标会在编辑口内闪烁,这时可以键入程序,程序输入完成后,单击File菜单下的“Save”,输入文件名,以“.asm”为后缀,保存到相应的文件夹中。(3)添加文件。在编辑界面上,单击“Target1”前面的“+”号,然后再“Source Group1”单击右键,在菜单中单击“Add File to Group Source Group1”,在选择相应的文件。(4)汇编。单击汇编图标,成功编译后生成“.hex”文件。(5)运行。单击运行图标,便进入运行状态12。所有的子函数都整合在同一个工程文件中,有调用关系的所有函数都必须放在同一源文件,工程文件中包括主函数、温湿度数据信息釆集与显示函数、数据存储、键盘扫描信息、LCD显示子程序,GSM短信无线模块信息发送等。每个C文件都会对应一个头文件,头文件中定义了各个C文件中会用到的相关参数。将设计好的各个功能模块的程序,整合在一起,建立源文件,以*.C命名并保存,然后建立一个工程文件,进入工程设置窗口进行设置,设置好后,进行编译、连接、调试。如果程序中有错误或警告,就会在调试结果显示窗口显示出第几行有错误或者警告,然后进行具体的修改,直至编译结果显示无错误调试显示窗口,显示结果为“0Error (S),0 Warning(s)”字样,则表示无错误,无警告,调试成功。程序仿真调试如图4.1所示。图4.1 Keil uVision4程序仿真调试Figure 4.1 Keil uVision4 program simulation debugging4.2 STC-ISP简介STC-ISP 是一款单片机下载编程烧录软件,是针对STC系列单片机而设计的,给STC单片机下载程序的,使用简便,现在已被广泛使用。在Keil uVision4调试程序成功生成hex文件之后,打开STC-ISP软件,选择STC89C52型号的芯片,选择串口并导入生成hex文件,将单片机与电脑的串口相连,并将程序下载至电脑,实现仿真运行控制。具体操作步骤如下。(1) 打开STC-ISP,在“MCU Type”栏目,选中单片机类型。(2) 选择正确的COM口。波特率一般保持默认,9600Hz。(3) 确认硬件连接正确之后,按点击“打开程序文件”并在对话框内找到相应的“hex”文件。(4) 写入完毕之后,实验板开始运行程序结果。STC-ISP界面图如图4.2所示。图4.2 STC-ISP界面图Figure 4.2 STC-ISP interface map4.3 系统整体实物图该系统以51单片机为核心,通过温湿度传感器实现采集环境温湿度数据的功能,并在LCD1602上显示采集信息,通过GSM无线短信模块将采集到的环境信息数据传给终端,使系统在使用时更加方便快捷,如图4.3所示。图4.3 系统实物图Figure 4.3 The real figure of system结 论本文主要完成基于安卓手机与单片机的便携式信息采集系统的设计,并通过设计方案的比较,针对设计任务提出了可行方案。提出的设计方案,克服了以往信号采集、接收以及显示的频率不高、工作不大稳定等缺点并结合安卓手机与单片机的功能特点及其控制特性,利用C语言和其内部时钟,以单片机作为控制的核心,通过键盘输入、LCD显示,GSM手机短信发送模块,完成了信息采集,存储以及发送的一系列设计。不得不承认,在课程设计的这段时间内,我对安卓手机与单片机方面的知识有了更深的了解。在做课程设计期间,我预先安装了C编程与仿真软件,利用Proteus软件找元件画电路原理图,以及学习并了解每个元器件的功能介绍。我还学习了画原理图用的Protel电路设计软件,学习并使用在keil uVosion4中编写C语言代码以及如何调试,用串口助手向单片机发送指令代码,如何将keil uVosion4软件与仿真软件Proteus结合起来使用。其实,我安装的软件不止这些,还有些刚设计时认为能用上,最后却没用上的。课程设计结束了,留给了我很深的思考,不管学会的还是学不会的的确觉得困难比较多,真是万事开头难,不知道如何入手。开题的那几天一直在学习安卓手机与单片机技术。这次课程设计给我的最大感悟就是:知识必须通过应用才能实现其价值!有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。致 谢本次设计工作是在刘洋老师的精心指导下完成的。通过这次设计,我对电子设计的认识有了很大的提高,同时认识到自己在硬件设计方面还有很大的欠缺。主要表现在对很多原理知识掌握的不是很清楚,造成了很多的重复性工作。这次设计的完成,要感谢刘老师的认真指导。再设计过程中,我通过查阅大量的有关资料,学习相关软件,与同学们交流经验,并向老师悉心请教等方式,使自己学到了不少知识,也经历了不少坚信,但同时收获是非常大的。刘老师作为我的课程设计指导老师,一直很悉心的指导我们的工作,无论是当面还是电话请教问题,刘老师都会耐心地回答。在整个设计过程中我懂得了许多东西。也培养了我独立工作的能力,树立了自己工作能力的信息,我相信会对以后的学习和工作有非常重要的影响。而且大大提高了动手能力,使我充分体会到了在创作过程中探索的艰辛和成功时的喜悦。设计过程中,我也得到了同学的帮助。程序出问题时,他们耐心地为程序找错误。仿真调试中,遇到困难时,他们也会给我很好的帮助。没有同学们的帮助,我也不能很好的完成设计。在此,我谨向我的指导老师刘洋老师以及在课程设计过程中给予我很大帮助的老师、同学们致以最诚挚的感谢,谢谢!参考文献1 陈贤瑜.基于DMX512协议的灯光解码控制系统设计学位论文.苏州大学,2012年.2 张磊.无线式可变信息标识系统的设计与实现学位论文.东北师范大学,2009年. 3 段渊博.电调天线控制器关键技术研究学位论文. 西安电子科技大学,2009年. 4 牛立佳.船舶模型控制器的设计学位论文 .大连海事大学,2007年.5 曹昌勇,等.基于AT89C52和DHT11数字式粮库温湿度监控系统设计期刊论文齐齐哈尔大学学报(自然科学版),2014年. 6 田芳明,等.基于MSP430f149单片机的智能家居监控系统设计期刊论文黑龙江八一农垦大学学报,2013年. 7

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论