基于单片机的仓库温湿度智能控制系统设计_第1页
基于单片机的仓库温湿度智能控制系统设计_第2页
基于单片机的仓库温湿度智能控制系统设计_第3页
基于单片机的仓库温湿度智能控制系统设计_第4页
基于单片机的仓库温湿度智能控制系统设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

目录TOC\o"1-3"\h\u32153摘要 (1)25417Abstract (1)9101前言 (2)282771系统整体设计 (3)29642硬件设计 (3)61182.1芯片介绍 (3)287532.1.1单片机AT89C51 (3)137222.1.3液晶显示LCD1602 (9)261302.2模块功能介绍 (11)204542.2.1复位电路和时钟电路 (11)276852.2.2传感器电路 (11)265952.2.3显示电路 (12)107862.2.4超限处理电路 (13)36272.3整体电路图 (14)164353软件设计 (14)134143.1主程序框图 (14)27783.2温湿度采集及处理框图 (15)144713.3LCD显示框图 (15)322114仿真与调试 (15)242314.1仿真软件介绍 (15)58784.1.1Proteus简介 (16)222264.1.2KeilC51编译器简介 (16)126244.2系统整体仿真图 (19)57155结束语 (19)451致谢 (20)18490附录 (20)4591参考文献 (24)基于单片机的仓库温湿度智能限制系统设计摘要:本课题是基于AT89C51单片机的仓库温湿度智能限制系统,系统采纳集温湿度传感器与A/D转换器为一体的SHT11芯片作为温湿度采集模块,通过单片机处理进而通过LCD1602构成的显示模块显示温湿度。其它模块包括了串行通信模块和超限报警处理电路,分别实现了上下位机温湿度给定值的设定和超限报警处理。本文主要介绍了系统的硬件设计和软件设计。系统结构简洁、好用,提高了测量精度和效率。关键词:单片机;SHT11;LCD;温湿度SCMbasedintelligenttemperatureandhumiditycontrolsystemdesignofwarehouseAbstract:ThistopicistheAT89C51microcontroller-basedwarehouseofintelligenttemperature-humiditycontrolsystem,thesystemusesthesettemperatureandhumiditysensorwitha/dconverterforoneSHT11-temperatureandhumiditydataacquisitionmodule,bysingle-chipcomputerinturnbyLCD1602constitutethedisplaymoduledisplaysthetemperatureandhumidity.Othermodulesincludeserialcommunicationmoduleandoverloadalarmcircuit,respectively,toachieveasetandoverloadalarmforagivenvalueoftemperatureandhumidity.Thisarticlemainlyintroducesthesystemofhardwaredesignandsoftwaredesign.Systemstructureissimple,practical,improvesaccuracyandefficiency.Keywords:singlechipmicrocomputer;SHT11;LCD;temperatureandhumidity前言防潮、防霉、防腐、防爆是仓库日常工作的重要内容,是衡量仓库管理质量的重要指标。它干脆影响到储备物资的运用寿命和工作牢靠性。为保证日常工作的顺当进行,首要问题是加强仓库内温度与湿度的监测工作。因此我们须要一种造价低廉、运用便利且测量精确的温湿度测控设备。传统的方法是用与温度表、毛发湿度表、双金属式测量计和湿度试纸等测试器材,通过人工进行检测,对不符合温度和湿度要求的仓库进行通风、去湿和降温等工作。这种人工测试方法费时费劲、效率低,且测试的温度及湿度误差大,随机性大。目前,国内大中型库房在仓库管理中由于技术和资金上的缘由,多数仅限于只对温度进行监测,当温度超标时进行强制通风和翻仓,即使如此,处理不刚好或因设备人力条件有限仍会造成大量损失。实现仓库贮存物的温升主要是由于湿度引起的,仓库贮存物本身的水分过高或连续的高湿天气将导致贮存物新陈代谢加快而放出热量,放热引起的温升又使代谢进一步加剧以至发霉变质。这种恶性循环一旦形成很难进行有效限制。因此,仓库在进行温度监测的同时,必需重视对空气湿度的检测,以利于提前实行有效措施限制仓库贮存物升温而霉变。本文所介绍的温湿度智能限制系统是基于AT89C51单片机为限制核心,结合传感器、通讯和数字电子电路技术,实现了温度和湿度检测与仓库温度和湿度的有效限制,降低经济损失和劳动强度。温湿度传感器在工农业生产、气象、环保、医学等领域得到越来越广泛的应用。温湿度采集系统目前普遍采纳的几种方案:方案一:采纳单总线的DS1820的温度传感器和HS110X相对湿度传感器组成的温湿度采集系统。方案二:采纳集温湿度传感器于一体的SHT11芯片为主要芯片的温湿度采集系统。由于传统的模拟式湿度传感器(方案一)不仅要设计信号调理电路,还要经过困难的校准和标定过程,其测量精度难以保证。而SHT11是瑞士Sensiri-on公司生产的具有二线串行接口的单片全校准数字式新型相对湿度和温度传感器,可用来测量相对湿度、温度和露点等参数,具有数字式输出、免调试、免标定、免外围电路及全互换的特点。该传感器将CMOS芯片技术与传感器技术融合,为开发高集成度、高精度、高牢靠性的温湿度测控系统供应了解决方案。所以本设计采纳的是方案二。1系统整体设计本设计核心部件为AT89C51,信号采集及处理部分由SHT11构成,进入单片机后经处理后通过LCD1602显示温湿度,信号显示采纳的液晶屏为5×7点阵,一行可显示16字,两行。通过上位机部分对测量的温湿度进行上下值的设定,应用RS-485通信方式完成测控电路与上位PC机的数据交换[5]。当测量超过限定值,通过超限报警处理电路对其进行处理分别显示不同的二极管灯亮,蜂鸣器产生长鸣。硬件中包括一个开关,为复位开关。开机后,全部器件初始化,温湿度传感器SHT11起先进行温湿度测量和计算,最终通过LCD液晶显示器显示结果。在测量结果中有超过设定的温湿度上下限的,通过超限模块作出反应。其他是一些附件,比如复位、晶振电路。整体电路框图如图1所示:SHTII温湿度传感器SHTII温湿度传感器复位电路晶振电路LCD1602信号显示RS-485通信接口超限模块PC机AT89C51单片机电源电路图1整体电路框图2硬件设计2.1芯片介绍单片机AT89C5189C51是一种带4K字节可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。89C2051是一种带2K字节可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采纳ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容[11]。由于将多功能8位CPU和闪耀存储器组合在单个芯片中,ATMEL的89C51是一种高效微限制器,89C2051是它的一种精简版本。89C51单片机为很多嵌入式限制系统供应了一种敏捷性高且价廉的方案[1]。1、主要特性:·与MCS-51兼容;·4K字节可编程闪耀存储器;·寿命:1000写/擦循环;·数据保留时间:10年;·全静态工作:0Hz-24Hz;·三级程序存储器锁定;·128×8位内部RAM;·32可编程I/O线;·两个16位定时器/计数器;·5个中断源;·可编程串行通道;·低功耗的闲置和掉电模式;·片内振荡器和时钟电路。2、管脚说明(如图2所示)[2]:VCC:供电电压。图2AT89C51芯片引脚图GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可汲取8TTL门电流。当P1口的管脚第一次写“1”时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必需被拉高[3]。P1口:P1口是一个内部供应上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入“1”后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平常,将输出电流,这是由于内部上拉的原因。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的原因。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址1时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和限制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的原因。P3口也可作为AT89C51的一些特殊功能口,如表1所示[4]:表1P3口管脚备选功能P3.0RXD串行输入口P3.4T0记时器0外部输入P3.1TXD串行输出口P3.5T1记时器1外部输入P3.2/INT0外部中断0P3.6/WR外部数据存储器写选通P3.3/INT1外部中断1P3.7/RD外部数据存储器读选通P3口同时为闪耀编程和编程校验接收一些限制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平常间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平常,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要留意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置“0”。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。假如微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平常,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。留意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平常,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)[6]。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出[7]。3、振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采纳。如采纳外部时钟源驱动器件,XTAL2应不接。输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必需保证脉冲的凹凸电平要求的宽度[8]。4、芯片擦除:整个PEROM阵列和三个锁定位的电擦除可通过正确的限制信号组合,并保持ALE管脚处于低电平10ms来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必需被执行[9]。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器、串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止[10]。5、结构特点:·8位CPU;·2个16位的定时器/计数器;·片内振荡器和时钟电路;·5个中断源,两个中断优先级;·32根I/O线;·全双工串行口;·外部存贮器寻址范围ROM、RAM64K;·布尔处理器。温湿度传感器SHT11SHT11是瑞士Scnsirion公司推出的一款数字温湿度传感器芯片。温湿度传感器SHT11集温度传感器和湿度传感器于一体,因此采纳SHT11进行温湿度实时监测的系统具有精度高、成本低、体积小、接口简洁等优点;另外SHT11芯片内部集成了14位A/D转换器,且采纳数字信号输出,因此抗干扰实力也比同类芯片高。该芯片在温湿度监测、自动限制等领域均已得到广泛应用。该芯片广泛应用于暖通空调、汽车、消费电子、自动限制等领域。共主要特点如下:·高度集成,将温度感测、湿度感测、信号变换、A/D转换和加热器等功能集成到一个芯片上;·供应二线数字串行接口SCK和DATA,接口简洁,支持CRC传输校验,传输牢靠性高;·测量精度可编程调整,内置A/D转换器(辨别率为8~12位,可以通过对芯片内部寄存器编程选择);·测量精确度高,由于同时集成温湿度传感器,可以供应温度补偿的湿度测量值和高质量的露点计算功能;·封装尺寸超小(7.62mm×5.08mm×2.5mm),测量和通信结束后,自动转入低功耗模式;·高牢靠性,采纳CMOSens工艺,测量时可将感测头完全浸于水中。SHT11温湿度传感器采纳SMD(LCC)表面贴片封装形式,接口特别简洁,引脚名称及各引脚的功能如下:·脚1-GND和脚4-VDD——信号地和电源,其工作电压范围是2.4~5.5V;·脚2-DATA和脚3-SCK——二线串行数字接口,DATA为数据线,SCK为时钟线;·脚5~8——未连接。SHT11的内部结构和工作原理:温湿度传感器SHT11将温度感测、湿度感测、信号变换、A/D转换和加热器等功能集成到一个芯片上,其内部结构如图3所示。该芯片包括一个电容性聚合体湿度敏感元件和一个用能隙材料制成的温度敏感元件。这两个敏感元件分别将湿度和温度转换成电信号,该电信号首先进入微弱信号放大器进行放大;然后进入一个14位的A/D转换器;最终经过二线串行数字接口输出数字信号。SHT11在出厂前,都会在恒湿或恒温环境巾进行校准,校准系数存储在校准寄存器中;在测量过程中,校准系数会自动校准来自传感器的信号。此外,SHT11内部还集成了一个加热元件,加热元件接通后可以将SHT11的温度上升5℃左右,同时功耗也会有所增加。此功能主要为了比较加热前后的温度和湿度值,可以综合验证两个传感器元件的性能。在高湿(>95%RH)环境中,加热传感器可预防传感器结露,同时缩短响应时间,提高精度。加热后SHT11温度上升、相对湿度降低,较加热前,测量值会略有差异。相对湿度相对湿度传感器温度传感器I2C总线接口和CRC寄存器放大器14为A/D转换器校准存储器 SCK DATA GND VDD图3SHT11内部结构图微处理器是通过二线串行数字接口与SHT11进行通信的。通信协议与通用的I2C总线协议是不兼容的,因此须要用通用微处理器I/O口模拟该通信时序。微处理器对SHT11的限制是通过5个5位吩咐代码来实现的,吩咐代码的含义如表2所示。表2SHT11限制吩咐代码吩咐代码含义00011测量温度00101测量湿度00111读内部状态寄存器00110写内部状态寄存器11110复位吩咐,使内部状态寄存器复原默认值。下一次吩咐前至少等待11ms其他保留SHT11应用设计:微处理器采纳二线串行数字接口和温湿度传感器芯片SHT11进行通信,所以硬件接门设计特别简洁;然而,通信协议是芯片厂家自己定义的,所以在软件设计中,须要用微处理器通用I/O口模拟通信协议。硬件设计:SHT11通过二线数字串行接口来访问,所以硬件接口电路特别简洁。须要留意的地方是:DATA数据线须要外接上拉电阻,时钟线SCK用于微处理器和SHT11之间通信同步,由于接口包含了完全静态逻辑,所以对SCK最低频率没有要求;当工作电压高于4.5V时,SCK频率最高为10MHz,而当工作电压低于4.5V时,SCK最高频率则为1MHz。软件设计:微处理器和温湿度传感器通信采纳串行二线接口SCK和DATA,其中SCK为时钟线,DATA为数据线。该二线串行通信协议和I2C协议是不兼容的。在程序起先,微处理器须要用一组“启动传输”时序表示数据传输的启动,如图4所示。当SCK时钟为高电平常,DATA翻转为低电平;紧接着SCK变为低电平,随后又变为高电平;在SCK时钟为高电平常,DATA再次翻转为高电平。DATASCK图4数据传输启动时序液晶显示LCD16021602液晶也叫1602字符型液晶它是一种特地用来显示字母、数字、符号等的点阵型液晶模块它有若干个5×7或者5×11等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用,正因为如此所以他不能显示图形。1602LCD是指显示的内容为16×2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。在单片机系统中应用晶液显示器作为输出器件有以下几个优点:显示质量高、数字式接口、体积小、重量轻、功耗低。1602LCD主要技术参数:显示容量:16×2个字符;芯片工作电压:4.5—5.5V;工作电流:2.0mA(5.0V);模块最佳工作电压:5.0V;字符尺寸:2.95×4.35(W×H)mm。1602采纳标准的16脚接口,其中:第1脚:VSS为电源地。第2脚:VDD接5V电源正极。第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,运用时可以通过一个10K的电位器调整对比度);第5脚:RW为读写信号线,高电平“1”时进行读操作,低电平“0”时进行写操作;第6脚:E(或EN)端为使能(enable)端。第7~14脚:D0~D7为8位双向数据端。第15~16脚:空脚或背灯电源。15脚背光正极,16脚背光负极。1602LCD的指令说明刚好序:1602液晶模块内部的限制器共有11条限制指令,如表3所示。1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)表31602LCD限制指令序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开、关限制0000001DCB5光标或字符移位000001S/CR/L**6置功能00001DLNF**7置字符发生存储器地址0001字符发生存储器地址8置数据存储器地址001显示数据存储器地址9读忙标记活地址01BF计数器地址10写数到CGRA,M或DDRAM10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置。I/D:光标移动方向,高电平右移,低电平左移;S:屏幕上全部文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关限制。D:限制整体显示的开与关,高电平表示开显示,低电平表示关显示;C:限制光标的开与关,高电平表示有光标,低电平表示无光标;B:限制光标是否闪耀,高电平闪耀,低电平不闪耀。指令5:光标或显示移位。S/C:高电平常移动显示的文字,低电平常移动光标。指令6:功能设置吩咐。DL:高电平常为4位总线,低电平常为8位总线;N:低电平常为单行显示,高电平常双行显示;F:低电平常显示5×7的点阵字符,高电平常显示5×10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址。BF:为忙标记位,高电平表示忙,此时模块不能接收吩咐或者数据,假如为低电平表示不忙。指令10:写数据。指令11:读数据。2.2模块功能介绍复位电路和时钟电路此复位电路的工作原理是:单片机的复位电路在刚接通电时,刚起先电容是没有电的,电容内的电阻很低,通电后,5V的电通过电阻给电容进行充电,电容两端的电会由0V渐渐的升到4V左右(此时间很短一般小于0.3秒),RC构成的微分电路在上电瞬间产生一个微分脉冲,其宽度大于两个机器周期,89C51将复位。正因为这样,复位脚的电由低电位升到高电位,引起了内部电路的复位工作,RST端电压渐渐下降,降到肯定电压值以后,即为低电平,单片机起先正常工作(这是单片机的上电复位,也叫初始化复位);当按下复位键时,电容两端放电,电容又回到0V了,于是又进行了一次复位工作(这是手动复位原理)。如图5所示。单片机工作的时间基准是由时钟电路供应的,在单片机的XTAL1和XYAL2两个管脚接一只晶振及两只电容就构成了单片机的时钟电路[12],如图5所示。图5手动复位刚好钟电路传感器电路此模块是整个电路设计的信号采集及初步处理的模块,由温湿度传感器芯片SHT11构成,如图6所示。主要的功能结构在前面的芯片介绍中已有,这里不重新介绍。下面介绍多点温湿度采集系统的设计,对于多点采集只需在单个采集的基础上作一点程序上的改动,所以本文只作介绍不作仿真,只对单个采集仿真[16]。图6SHT11传感器电路多点采集系统设计由于每个SHT11占用单片机两个I/O口,所以单片机有限的I/O口资源将制约着单个微限制器上所能测量的最大点数;由于每个SHT11的测量所需时间是固定不变的,采纳单独操作的逐个测量方式在多点测量系统中必定导致数据采集时间过长、限制滞后,从而影响限制系统性能的提高。在仓库测控应用系统中,要求所采集的温湿度数据是反应整个仓库相同时间点的总体状况的,所以多个SHT11必需同时起先测量,即单片机必需同时向多个SHT11发送测量吩咐。结合仓库应用的具体要求,本文对多个SHT11传感器和微限制器的连接方式实行如下方案:各SHT11的SCK线接到微限制器的同一个I/O口上,而DATA线则分别接到不同I/O口线上。这种连接方式有几个优点:首先,n个传感器只占用n+1个I/O口,比前述方式节约了n-1个I/O口,解决了多点测量系统中单片机I/O口资源短缺和尽可能增加测量点之间的冲突问题;其次,由于多个SHT11共用一条时钟线所以在每次测量中可以同时发出测量吩咐,多个传感器同时进行测量,只需一次等待时间则完成了整体数据的收集,大大缩短了数据采集时间,为限制系统快速响应供应了条件[17]。下面以三点测量为例具体介绍该设计方案的实现,如图7所示。测量部分中3个SHT11的SCK时钟线均连接到AT89S52的P2.6口,而各DATA线分别接到P2.7、P2.5和P2.4。当须要再增加测量点时只须要增加对应的I/O口数即可以,而且只需对程序作很少的修改即可实现系统的敏捷扩展。图7SHT11多点采集设计显示电路此模块是由LCD1602芯片组成实时温湿度显示的电路部分。LCD1602是一个两行每行16字的液晶显示屏,D0-D7接P0口,RW接地,RS、E接P2.0、P2.1起限制作用。如图8所示。图8LCD1604显示及其连接电路超限处理电路此部分电路是由5个发光二极管和一个蜂鸣报警器构成,分别是D0、D1、D2、D4和D5,蜂鸣器接单片机的P1.0口,发光二极管与单片机的连接部分如图所示。D0、D1、D2、D4、D5分别代表着发光、降温、加热、干燥和加湿,一旦传感器测定的温湿度超过设定的限额,就会产生不同的发光反应,起警示作用,同时蜂鸣报警器连续发出“滴”的声音。如图9所示。图9超限处理警示电路和蜂鸣器电路部分2.3整体电路图图10整体电路图3软件设计3.1主程序框图图11主程序框图3.2温湿度采集及处理框图

图12SHT11温湿度采集处理框图3.3LCD显示框图图13LCD显示框图4仿真与调试4.1仿真软件介绍本设计用到了Proteus和Keilc51两种软件,两者能完备的结合在一起,实现虚拟的实物效果,为以后的实物焊接供应了保障[18]。Proteus简介Proteus软件是来自英国Labcenterelectronics公司的EDA工具软件,Proteus软件有十多年的历史,在全球广泛运用,除了其具有和其它EDA工具一样的原理布图、PCB自动或人工布线及电路仿真的功能外,其革命性的功能是,他的电路仿真是互动的,针对微处理器的应用,还可以干脆在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出,还能看到运行后输入输出的效果,协作系统配置的虚拟仪器如示波器、逻辑分析仪等。Proteus组合了高级原理布图、混合模式SPICE仿真,PCB设计以及自动布线来实现一个完整的电子设计系统。此系统受益于15年来的持续开发,被《电子世界》在其对PCB设计系统的比较文章中评为最好产品—“TheRoutetoPCBCAD”。Proteus产品系列也包含了革命性的VSM技术,用户可以对基于微限制器的设计连同全部的四周电子器件一起仿真。用户甚至可以实时采纳诸如LED/LCD、键盘、RS232终端等动态外设模型来对设计进行交互仿真。其功能模块:—个易用而又功能强大的ISIS原理布图工具;PROSPICE混合模型SPICE仿真;ARESPCB设计。PROSPICE仿真器的一个扩展PROTEUSVSM:便于包括全部相关的器件的基于微处理器设计的协同仿真。此外,还可以结合微限制器软件运用动态的键盘,开关,按钮,LED甚至LCD显示CPU模型。>>支持很多通用的微限制器,如PIC,AVR,HC11以及8051最新支持ARM>>交互的装置模型包括:LED和LCD显示,RS232终端,通用键盘,I2C,SPI器件>>强大的调试工具,包括寄存器和存储器,断点和单步模式>>IARC-SPY和KeiluVision2等开发工具的源层调试>>应用特殊模型的DLL界面-供应有关元件库的全部文件最新版支持特别丰富仿真元件共7000多种,还有很多第三方模型。如MMC卡,以太网卡,ATA硬盘,麦克风,等等。KeilC51编译器简介1、8051开发工具KeilC51标准C编译器为8051微限制器的软件开发供应了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增加,使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到uVision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,项目管理器,调试器。uVision2IDE可为它们供应单一而敏捷的开发环境。2、uVision2集成开发环境(1)项目管理工程(project)是由源文件、开发工具选项以及编程说明三部分组成的。一个单一的uVision2工程能够产生一个或多个目标程序。产生目标程序的源文件构成“组”。开发工具选项可以对应目标,组或单个文件。uVision2包含一个器件数据库(devicedatabase),可以自动设置汇编器、编译器、连接定位器及调试器选项,来满意用户充分利用特定微限制器的要求。此数据库包含:片上存储器和外围设备的信息,扩展数据指针(extradatapointer)或者加速器(mathaccelerator)的特性。uVision2可以为片外存储器产生必要的连接选项:确定起始地址和规模。(2)集胜利能uVision2的强大功能有助于用户按期完工。A.集成源极阅读器利用符号数据库运用户可以快速阅读源文件。用具体的符号信息来优化用户变数存储器。B.文件找寻功能:在特定文件中执行全局文件搜寻。C.工具菜单:允许在V2集成开发环境下启动用户功能。D.可配置SVCS接口:供应对版本限制系统的入口。E.PC-LINT接口:对应用程序代码进行深层语法分析。3、第三部分编辑器和调试器(1)源代码编辑器uVision2编辑器包含了全部用户熟识的特性。彩色语法显像和文件辩识都对C源代码进行和优化。可以在编辑器内调试程序,它能供应一种自然的调试环境,使你更快速地检查和修改程序。(2)断点uVision2允许用户在编辑时设置程序断点(甚至在源代码未经编译和汇编之前)。用户启动V2调试器之后,断点即被激活。断点可设置为条件表达式,变量或存储器访问,断点被触发后,调试器吩咐或调试功能即可执行。在属性框(attributescolumn)中可以快速阅读断点设置状况和源程序行的位置。代码覆盖率信息可以让你区分程序中已执行和未执行的部分。(3)调试函数语言uVision2中,你可以编写或运用类似C的数语言进行调试。A.内部函数:如printf,memset,rand及其它功能的函数。B.信号函数:模拟产生CPU的模拟信号和脉冲信号(simulateanaloganddigitalinputstoCPU)。C.用户函数:扩展指令范围,合并重复动作。(4)变量和存储器用户可以在编辑器中选中变呈来视察其取值。双层窗口显示,可进行以下调整:A.当前函数的局部变量B.用户在两个不同watch窗口页面上的自定义变量C.堆栈调用(callstack)页面上的调用记录(树)(calltree)D.不同格式的四个存储区4、C51编译器KeilC51编译器在遵循ANSI标准的同时,为8051微限制器系列特殊设计。语言上的扩展能让用户运用应用中的全部资源。(1)存储器和特殊功能寄存器的存取C51编译器可以实现对8051系列全部资源的操作。SFR的存取由sfr和sbit两个关键字来供应。变量可旋转到任一个地址空间。用关键字-at-还能把变量放入固定的存储器存储模式(大,中,小)确定了变量的存储类型。连接定位器支持的代码区可达32个,这就允许用户在原有64KROM的8015基础上扩展程序。在V2的编译器和很多高性能仿真器中,可以支持应用程序的调试。(2)中断功能C51允许用户运用C语言编写中断服务程序,快速进、出代码和寄存器区的转换功能使C语言中断功能更加高效。可再入功能是用关键字来定义的。多任务,中断或非中断的代码要求必需具备可再入功能。(3)敏捷的指针C51供应了敏捷高效的指针。通用指针用3个字节来存储存储器类型及目标地址,可以在8051的随意存储区内存取任何变量。特殊指针在声明的同时已指定了存储器类型,指向某一特定的存储区域。由于地址的存储只需1-2字节,因此,指针存取特别快速。4.2系统整体仿真图图14系统整体仿真图5结束语由于采纳的是高效单片机作为核心,集温度传感器和湿度传感器于一体的SHT11作为主要的采集与测量系统,其中它自带的A/D转换器,使得此温湿度限制仪具有精度高、成本低、体积小、接口简洁等优点,还具有良好抗干扰实力。加上优化程序,使得本系统具有很高的好用性。单片机的应用如今已经在工业、电子等方方面面展示出了它的优越性,利用单片机在设计电路渐渐成了趋势,它与外围的简洁电路再加上优化程序就可以构建随意的产品,使得本设计成为现实。随着单片机的日益发展,它必将在将来显示出更大的活力,为电子设计增加更多精彩。在设计过程中,由于时间和本人实力的限制,设计中存在一些须要改进和优化的地方。测量精度有待进一步提高,软件设计也存在不合理之处。但从设计过程中,对于单片机有更进一步的相识,对用于单片机仿真的软件操作实力也明显提高,通过此设计,本人受益颇丰。致谢回首自己走过的高校生活,心中倍感困难,但是当我写完这篇毕业论文时,虽如释负重,却又有些失落。首先我要感谢学院能够给我一个很好的学习环境。真诚的感谢我的论文指导老师,能在劳碌的教学生活中审查、修改我的论文。同时我也要感谢在这里曾经教化过我的老师。至此,我的论文在指导老师的悉心指导下完成了。从选题,定题起先,始终到最终论文反反复复的修改,老师总是以专业的标准来严格要求我,在老师深刻细致的指导下,我的探讨思维和设计理念有了很大的提高,我的毕业论文能够顺当完成还要对老师说声感谢。感谢高校生活中陪伴我的同学、挚友,在他们的陪伴下,我收到了很多珍贵的建议和看法,有了他们的陪伴和支持,我完成了这一设计,他们是我高校生活的一部分,不仅改善了我生活和学习习惯,更让我知道了为人处事的道理。从论文选题到搜集资料,写稿到初稿,再到反复修改,期间经验了喜悦、聒噪、彷徨和挣扎,写论文的过程中心情太困难,但是在自己不断的探究努力及老师指导下,最终完成,心中不免有些成就感。也让我对本专业的只是有了进一步的了解,查阅书籍,翻看问下,从朦朦胧胧到豁然开朗,我感觉自己在成长。这次设计为我在今后的专业工作中打下了肯定的基础。附录参考程序如下:#include<reg52.h>#include"SHT.h"#include"lcd1602.h"unsignedchartable[]="yangling";unsignedcharshtdatah,shtdatal;unsignedlongshtdata;//为实际数值的100倍voidjisuan_humidity(void){ unsignedlongaa,bb; shtdatah&=0x0f; aa=(unsignedlong)(shtdatah*256+shtdatal); bb=aa; aa=405*aa; aa/=100; bb=bb*bb; bb=28*bb; bb/=100000; shtdata=aa-400-bb;}voidjisuan_temp(void){ unsignedlongaa; shtdatah&=0x3f; aa=(unsignedlong)(shtdatah*256+shtdatal); shtdata=aa-4000;}voidsht_all(void){ unsignedintj; read_temp(); jisuan_temp(); j=3; if(shtdata/10000==0){lcd_display(1,3,'');} else{lcd_display(1,j,0x30+shtdata/10000);j++;} lcd_display(1,j++,0x30+(shtdata/1000)%10);//显示温度 lcd_display(1,j++,0x30+(shtdata/100)%10); lcd_display(1,j++,0x30+(shtdata/10)%10); lcd_display(1,j++,0x30+(shtdata%10)); read_humidity(); jisuan_humidity(); j=11; if(shtdata/10000==0)lcd_display(1,11,''); elselcd_display(1,j++,0x30+shtdata/10000); lcd_display(1,j++,0x30+(shtdata/1000)%10);//显示湿度 lcd_display(1,j++,0x30+(shtdata/100)%10); lcd_display(1,j++,0x30+(shtdata/10)%10); lcd_display(1,j++,0x30+(shtdata%10));}voidmain(void){ unsignedchari; lcd_init(); sht_init(); lcd_display(1,1,'T'); lcd_display(1,2,':'); lcd_display(1,9,'H'); lcd_display(1,10,':'); for(i=0;i<8;i++) lcd_display(2,i+1,table[i]); lcd_display(2,12,'S'); lcd_display(2,13,'H'); lcd_display(2,14,'T'); lcd_display(2,15,0X31); lcd_display(2,16,0X31); while(1) { delay(100); sht_all(); delay(100); }}#ifndef_lcd1602_h#define_lcd1602_h#include<reg52.h>sbitlcde=P2^0;sbitlcdrs=P2^1;//1date0commandvoiddelay(unsignedintz);voidwrite_com(unsignedcharcdate);voidwrite_date(unsignedchardate

温馨提示

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

评论

0/150

提交评论