基于AT89C52的土壤湿度测量系统设计_第1页
基于AT89C52的土壤湿度测量系统设计_第2页
基于AT89C52的土壤湿度测量系统设计_第3页
基于AT89C52的土壤湿度测量系统设计_第4页
基于AT89C52的土壤湿度测量系统设计_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

摘要摘要土壤的湿度对于农作物的生长来说是很重要的,它影响着植物的生长发育,合理有效地灌溉对农作物的生长是非常有利的。同时,也能够更加有效地使用缺乏的水资源。因此,我们需要测量土壤的湿度,并对其采取措施进行控制,使农作物生长在适宜的环境中。利用单片机来控制土壤的湿度方便、灵活,从根本上提高了湿度测控系统的性能。本论文以单片机AT89C52为核心,结合其他电子电路技术,设计出一种水平较高的土壤测量系统。设计中利用湿度传感器SHT11进行数据采集,然后将数据送入单片机处理,实现湿度显示、声光报警、与上位机通讯等功能,SHT11功耗低、体积小、可靠性高。本土壤湿度测量系统操作便捷,精确度高且显示直观,用在农业中可以提高农作物的产量,给社会带来更高的经济效益,具有广阔的发展前景。关键词:单片机,土壤测量系统,湿度传感器AbstractAbstractSoil moisture for the crops is very important, it affects plant growth and development, reasonable and effective irrigation on crop growth is very favorable. It can be more effectively to use water resources. Therefore, we need to measure soil moisture, and take measures to control the growth of crops in a suitable environment. Use microcontroller to control the soil moisture is convenient, flexible and fundamentally, and enhance the performance of the humidity measurement and control system.AT89C52, the paper as the core, in combination with other electronic circuits, design a high level of soil measurement system. Humidity Sensor SHT11 data collection design, low power consumption, system of small, high reliability, and then the data into the microcontroller processing to achieve the humidity display, audible alarm, and PC communication. The soil moisture measurement system is easy to operate, high precision and intuitive display, used in agriculture can increase crop yield and bring greater economic benefits to society, and has broad prospects for development.Keywords: microcontroller, soil measurement system, humidity sensor目录目录摘要IAbstractII目录III第1章 绪论11.1 论文研究的来源11.2 论文研究的目的和意义11.3 近几年国内外研究状况11.4 本设计研究内容2第2章 土壤湿度测量系统的方案设计32.1 土壤湿度测量系统的设计要求和指标32.2 土壤湿度测量系统的结构和原理32.3 传感器的选型42.3.1 传感器选用需考虑的因素42.3.2 单片智能化湿度传感器52.4 湿度传感器SHT1152.4.1 SHT11工作原理6第3章 系统硬件电路设计103.1 单片机介绍103.1.1 AT89C52简介103.1.2外部引脚说明11单片机AT89C52的引脚图如图3-2所示。113.2单片机的时钟和复位电路143.2.1时钟电路143.2.2复位电路143.3 电源电路143.4 显示电路153.4.1 1602液晶显示153.4.2 1602LCD的控制器接口说明173.4.3 1602LCD液晶显示的指令183.5 键盘接口电路193.5.1 独立式键盘203.5.2 行列式键盘203.6 报警电路203.7 无线通信电路213.7.1 PTR2000介绍213.7.2 通信接口电路22第4章 系统软件的设计254.1 主程序流程图254.2 初始化子程序264.3 键盘子程序274.4 湿度程序流程图284.5 显示子程序294.6 通信流程图30总结31参考文献32致谢33附录一34附录二35附录三36第1章 绪论第1章 绪论1.1 论文研究的来源土壤的湿度对农作物的影响非常大,若土壤中的水过多,就会使土壤中的氧气减少,农作物的根部就很难正常呼吸;而如果土壤湿度过低,农作物所需要的水分就得不到满足。这两种情况都会严重影响植物的生长发育,使农作物产量降低。随着经济的快速发展,我国越来越重视农业的生产和发展。在现代农业中,对农作物的环境参数进行检测并控制是非常重要的,而湿度是其中最基本的参数之一,实现农业生产的科学技术的基础是对环境参数的测控。经过分析所检测到的数据,再根据农作物生长的规律,采取有效措施控制植物生长的环境条件,才能培育出高产量、高质量的农作物。1.2 论文研究的目的和意义传统的检测方法中,人们使用湿度计来获取土壤的湿度值。然而湿度计精度低,再加上人们读数时的误差,使得传统的湿度检测任务繁琐、精度低、速度很慢,并且增加了检测人员的劳动强度。随着科技的进步,出现了由传感器、A/D转换器和报警器构成的湿度测量装置,在一定程度上提高了测量的精度和检测的速度。但是,因为使用的湿度传感器不够灵敏,并且有时会产生误报、漏报的情况,使得测量系统应用起来达不到人们的要求,导致生产损失。现如今,伴随计算机的广泛应用以及单片机的越来越强大的功能,使得监测系统具有越来越高的稳定性和精确性。因此以单片机为核心,配合其他电子电路的土壤测量装置方便灵活、稳定性高、测量精确度高,对提高农作物的产量和质量具有重大意义。1.3 近几年国内外研究状况18世纪人们就已经发明出了干湿球湿度计,它的精确度取决于湿球湿度计和干球湿度计自身的精度。干湿球湿度计的精确度仅仅为5%-7%RH,但是干湿球湿度计在使用过程中不会出现精度值降低和老化的现象。后来,测量相对湿度的滴水法出现。最近几十年,电子湿度传感器快速发展,它的测量准确度能够达到2%-3%RH。现在,电子式湿度传感器应用广泛,它具有误差小、精确度高等优点。现如今,国内外在研究湿度传感器方面取得了巨大的进步,制作电子芯片技术大幅度提高,芯片日益微型化、集成化。湿度传感器从原来的湿敏元件逐渐朝多参数检测智能化的方向发展,这必将使湿度监测技术迈向新的台阶。1.4 本设计研究内容1. 对整个系统进行结构设计和整体思路规划。2. 以单片机为核心,进行硬件电路设计和改进,完成整个土壤测量系统的功能。硬件电路有信号采集电路、报警电路、显示电路、键盘电路、无线通信电路。3.土壤湿度检测系统的软件设计。根据软件功能的实现,基本分为主程序、初始化子程序、湿度报警子程序、无线通信子程序。程序编写时,加上了文字注释,方便以后维护和改进。 -47-第2章 土壤湿度测量系统的方案设计第2章 土壤湿度测量系统的方案设计2.1 土壤湿度测量系统的设计要求和指标1. 利用湿度传感器对土壤的湿度采集数据,能够实现湿度的实时测量和显示,检测范围1%-99%RH。2. 能够依据气候等影响测量条件的变化改变报警限值的设置。3. ATMEL公司的AT89C52单片机,理解它的功能与特性,能够对湿度实现智能化控制。4. 设计报警系统、显示系统、键盘系统和无线通信系统。在土壤湿度测量系统实现其基本能力的同时,还应确保装置的稳定性、精确性、可靠性、低功耗以及经济性。2.2 土壤湿度测量系统的结构和原理土壤湿度测量系统是能够实时测量土壤的湿度参数,并具有报警功能的仪器。系统以单片机AT89C52为核心,采用SHT11湿度传感器采集土壤湿度参数信息,配合其它外围电路共同实现土壤湿度测量及报警功能。该系统的基本组成部分包括湿度传感器、信号采集电路、显示电路、报警电路、按键电路、无线通信电路。系统要求稳定性高、精度高、可靠性高、经济实用,其结构框图如图2-1所示。复位电路LCD显示无线发送AT89C52单片机湿度传感器上位机无线接收键盘输入报警电路图2-1 土壤测量系统原理框图通过湿度传感器实现湿度的数据采集,并实现数据的数字化。系统显示参数的上限值与下限值经键盘输入,如果检测量的信号值不在上下限区间内,系统就会启动报警电路。为了方便检测,使测量人员能够直观地知道土壤中的湿度值,可以把湿度值通过LCD显示出来,并通过无线通信的方式,将所测得的湿度值传输到上位机。其中,复位电路可以实现AT89C52单片机的复位。2.3 传感器的选型湿度传感器是土壤湿度测量系统的首要环节,负责采集湿度信号,根据这些有关的湿度信号就可以知道土壤中湿度的相关信息,实现检测报警功能。湿度传感器作为获取土壤湿度信息的手段,是整个系统的核心部件之一,可靠、精确的湿度传感器决定了获取的湿度信息的准确性。2.3.1 传感器选用需考虑的因素制作工艺、结构和使用材料不同,它的技术指标和使用性能就会有差异,所以在选择湿度传感器时,需要考虑不同的因素。1. 测量精度测量精度是传感器的一个重要的技术指标。对于传感器来说,每提升一个百分点就是提升一个高度,有时甚至是提升到一个更高的档次。不同精度的传感器,制作它们的成本差异非常大,价格也差别很大。制造商对于湿度传感器的精确度通常是分段给出的。例如,在一定温度下(例如25)的精度值,高温阶段(即80-100%RH)是4%RH,而中低温度阶段(即0-80%RH)是2%RH。假设在不一样的温度下,使用同一湿度传感器,就需要考虑温漂对湿度传感器示值产生的影响。每变化0.1的温度,将产生湿度误差0.5%RH。温度的变化使得湿度漂移不定,如果不能保证环境的温度恒定,就要求测量精度过高是不对的。因此温湿度集于一体的传感器被广泛应用。2. 测量范围现今的社会是信息的时代,传感器技术同自动控制、计算机技术紧紧相结合。测量的最终目的是控制,适用范围是控制范围和测量范围的全称,因此研究温度和湿度测量控制时,全湿程测量是不必要的。3. 温漂和时漂因为湿度传感器一定会接触空气里的水汽,不可以密封,所以传感器几乎全部都存在温漂和时漂的问题,因此这就导致了湿度传感器有限的寿命和稳定性。使用环境的温度变化的范围是在选择湿度传感器时需要考虑的,要考虑在指定温度下所选择的湿度传感器能不能正常运作,湿度传感器的温漂是不是超过了设计目标。4. 其他注意的事项因为湿度传感器是不密封的,所以为确保测量时的稳定性和精确度,应尽可能的避免在含有有机溶剂、碱性和酸性的环境中使用。除此之外,也不能把湿度传感器置于粉尘很大的场所中使用,还不能把湿度传感器置于空气不流通(如离墙壁太近)的地方使用,以确保所测环境的湿度能被正确显示出来。在应用湿度传感器时,要提供符合其精度的适宜的电源,因为有些传感器要求很高的电源,否则会对测量精度产生影响。2.3.2 单片智能化湿度传感器SHT11、SHT15型单片智能化温湿度传感器是瑞士森斯瑞(sensirion)公司在2002年研制出的两种小型、自校准、高精度、多功能的智能传感器,它的外形尺寸7.5mm5mm2.5mm。出厂之前,研究人员都在非常精密的湿度室里对每一个湿度传感器做了精确的校准,校准的系数编写成对应的程序存进校准存储器里,使得在进行测量时可以自动校准相对湿度。本设计采用单片机智能化湿度传感器SHT11,它功耗低、体系小、可靠性高。2.4 湿度传感器SHT11SHT11是瑞士森斯瑞公司研制的一款多功能智能化湿度传感器,广泛应用在环境监测工农业生产等领域。其主要性能特点如下:(1)采用CMOSENS专利技术研制成的高精度智能化传感器系统,特点是把传感器技术和半导体芯片CMOS融合。(2)将温湿度感测、信号放大调理、模数转换和I2C总线接口集成在一个芯片上。(3)SHT11属于单片且多用途的智能化传感器,芯片中既含有微型相对湿度传感器;还含有两线串行接口和14位A/D转换器,能够输出校准的相对湿度值,适于配合各式单片机组成相对湿度测量系统。(4)默认的相对湿度分辨力为12位,可以通过改变寄存器状态来降低其分辨力,以降低芯片功耗。(5)超小型器件(长宽高为7.5mm5mm2.5mm),可以表面贴装。(6)电流的消耗很低,测量阶段的电流是550A,工作的平均电流是28A,上电复位时默认做休眠,电流仅为0.3A。(7)产品保证100%的互换性,抗干扰能力强,响应快,外围电路比较简单,可以实现低电压检测的功能。2.4.1 SHT11工作原理SHT11湿度传感器的引脚如图2-2所示,内部结构框图如图2-3所示,主要由温湿度传感器、放大器、模数转换器、两线串行口、RAM、E2PROM、低电压检测电路、状态存储器、控制器、循环冗余校验码寄存器(CRC)构成。GND1DATA2SCK3VDD4NC5NC6NC7NC8SHT11图2-2 SHT11湿度传感器引脚图校准存储器EEPROM相对湿度传感器温度传感器SCKDATADATAGNDVDDVDD放大器两两串行接口控制单元14位A/D转换器CRC寄存器低电压检测电路状态寄存器随机存储器RAM图2-3 SHT11湿度传感器内部结构框图引脚功能:VDD和GND:电源和接地引脚,供电的电压范围为2.4V2.5V。DATA:串行数据输入/输出。SCK:串行时钟输入,用在SHT11与微处理器的通信同步。SHT11测量湿度的原理为湿度传感器采集湿度信号,经放大器放大,再送进A/D转换器转换、校准和纠错,最后由两线串行口把相对的湿度值传送给微控制C(即主机),然后再通过C实现非线性补偿与温度补偿。1. SHT11的补偿(1) 非线性补偿SHT11输出的是相对湿度值(N),而我们想要的被测相对湿度(RH)需要经过对读数值的非线性补偿和温度补偿。N与RH呈现非线性的关系,可利用以下公式补偿非线性:RH=(C1+C2N+C3N2)%,其中C1、C2和C3是线性补偿的系数,所取值如表2-1。表2-1 湿度转换系数NC1C2C312bit-40.0405-2.810-68bit-40.648-7.210-4 (2) 温度补偿因为温度对湿度的测量有非常大的影响,所以当测量环境的温度不是25时,应该对温度传感器采取温度补偿。公式为:RHT=(T-25)(t1+t2N)%+RH,其中,t1和t2是温度补偿系数,取值如表2-2;T为测量相对湿度时环境的温度。表2-2 温度补偿系数Nt1t212bit0.010.000088bit0.010.001282. 两线串行接口两线串行接口包括串行数据线(即DATA)及串行时钟线(SCK)。主机发出的串行时钟信号由SCK接收,作用是保持SHT11和主机同步。DATA是三态输出端,不使用的时候为高阻态,它既能输入测量数据,又能输出数据。当SCK处在上升沿并且DATA下降沿已经过去的时候,数据才能得到更新。为保证数据信号的高电平,需要把一上拉电阻接在VDD和数据线之间。通常,单片机I/O接口电路中已经有此上拉电阻。3. 测量过程上电之后过去10毫秒SHT11就会处于休眠模式,传送命令不能在休眠模式之前。发出测量相对湿度的命令(即00000101)之后,芯片休眠结束,此时主机启动SCK直到测量完成。对于14位、12位、8位的测量的时间分别是210ms、55ms以及11ms,然后把数据线拉为低电平,此时主机再次重新开启SCK,传送一个循环冗余校验码数据字节和两个测量的数据的字节。主机一定要把数据线DATA拉为低电平,每一个字节才可以通过主机发出应答的信号。数据的传送顺序从最高位(MSB)到最低位(LSB)。SHT11与单片机的连接如图2-4所示。图2-4 SHT11与单片机的连接如图第3章 系统硬件电路设计第3章 系统硬件电路设计3.1 单片机介绍单片机是湿度测量系统的核心,用来接收土壤湿度信号并进行处理,然后启动报警,并将信号通过无线通信传给上位机,这些功能的实现,要求单片机的运算速度快,能使用户和检测人员及时知道土壤湿度,并作出相关处理。在满足以上功能的同时,还要考虑单片机的价格以及体积,使得在确保土壤湿度测量系统的抗干扰性、可靠性和准确性的同时,可以减小体积,不提高成本。现今单片机技术已经广泛应用于各个领域,在众多的单片机中,MCS系列单片机拥有着强大处理功能的中央处理器,中央处理器集成了易操作的专用寄存器。MCS系列单片机以它的高性价比和优越的性能,迅速占领了国内单片机的各个应用市场。其中,AT89C52单片机具有经济实用、I/O口多、程序空间大等优点。3.1.1 AT89C52简介AT89C52的性能参数如下:(1)与MCS-51完全兼容;(2)8KB可擦写次数1000次的Flash存储器;(3)内含256字节的RAM;(4)三级程序锁定位;(5)3个16位定时器/计数器; (6)1个全双工可编程串行通信接口;(7)32根可编程I/O线; (8)8个中断源,6个中断矢量,2级优先权的中断结构;(9)两种低功耗工作方式 ,掉电方式和空闲方式;(10)静态逻辑操作:0HZ24MHZ;外时钟源外部事件计数振荡器和时钟电路程序存储器(4KB)数据存储器(128字节)两个16位定时器/计数器CPU内部总线总线扩展 控制器并行可编程I/O口可编程串行口中断控制内部中断外部中断 扩展控制 P0 P1 P2 P3 RXD TXD图3-1 AT89C52单片机的基本组成3.1.2外部引脚说明单片机AT89C52的引脚图如图3-2所示。VCC:电源电压输入引脚。GND:电源地。XTAL1:片内振荡器反相放大器和时钟发生线路的输入端。XTAL2:片内振荡器反相放大器的输出端。P0口:8位、漏极开路的双向I/O口。编程时,可以用来接收指令代码字节,当程序校验时,可以输出指令字节。在使用片外存储器及外扩I/O口时,P0口是低字节地址/数据复用线。P0口也可以作为通用I/O口使用,这时需要加上拉电阻,变成准双向口。P0口可以启动8个TTL负载。 P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST9P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.5/T115P3.6/WR16P3.7/RD17XTAL218XTAL119GND20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE30EA31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039VCC40AT89C52图3-2 单片机AT89C52的引脚图P1口:8位准双向I/O口,含有内部上拉电阻。用作输入时,输出锁存器必须置1。编程和程序校验时,用作输入低8位地址。P1口可以启动4个TTL负载。P1.0和P1.1可提供第二功能,如表3-1所示。表3-1 P1.0和P1.1的第二功能引脚第二功能P1.0T2 定时器2外部时间输入P1.1T2EX 定时器2技术方向的控制端;定时器2的重装/捕捉触发器的输入端P2口:8位准双向I/O口,含有内部上拉电阻。P2口也可以作为通用I/O口使用.用作输入的时候,输出锁存器必须置1。编程和程序校验时,可以接收高字节的地址和一些控制信号。使用外扩I/O口或片外存储器时,输出高8位地址。P2口可以启动4个TTL负载。P3口:8位准双向I/O口,含有内部上拉电阻。P3口可以作为通用I/O口使用.用作输入的时候,输出锁存器必须置1。编程和程序校验时,接收某些控制信号。P3口可以启动4个TTL负载。P3口也可提供第二功能,如表3-2所示。表3-2 P3口的第二功能引脚第二功能P3.0RXD 串行数据的接收P3.1TXD 串行数据的发送P3.2 外部中断0请求输入端P3.3 外部中断1请求输入端P3.4T0 定时器/计数器0计数脉冲输入端P3.5T1 定时器/计数器1计数脉冲输入端P3.6 外部数据存储器及I/O口写选通信号输出端P3.7 外部数据存储器及I/O口读选通信号输出端RST:上电复位端。当单片机振荡器工作时,RST脚要保持2个机器周期(即24个晶振周期)的高电平,将器件复位。:片外程序存储器读选通信号,低电平时有效。当访问外部RAM时,此引脚无效。片外程序存储器取指期间,有效的时候,程序存储器的内容被送入P0口。/VPP:外部程序存储器允许访问信号EA。接VCC时,从内部程序存储器开始,并可延续到外部程序存储器对ROM进行读操作。接地时,限定在外部程序存储器对ROM进行读操作,地址:0000HFFFFH。程序校验时,可以接VCC,编程时,可以编程电压。ALE/:ALE为低字节地址锁存信号。系统扩展时,P0口输出的低8位地址被ALE的下降沿锁存在外接的地址锁存器里,实现数据和低字节地址的分时传送。另外,ALE端持续输出正脉冲,频率是晶振频率的1/6,可以用作外部定时脉冲。编程期间,此引脚输入编程脉冲()。3.2单片机的时钟和复位电路3.2.1时钟电路AT89C52内部有反向放大器组成振荡器,振荡电路的输入端为XTAL1,输出端为XTAL2。单片机的时钟有内部时钟方式和外部时钟方式两种产生方法。系统采用的时钟方式是采用外接晶体和电容组成并联谐振回路。MCS-51单片机允许的晶振频率范围是1.2-24MHz,一般为11.0592MHz。电容C1、C2的取值对振荡频率的输出的大小、稳定性和振荡电路起振速度都有一定的影响,可在20-100pF之间选择,典型值为30pF。本设计的振荡频率选择12MHz,C2取30pF。图3-3 单片机时钟电路3.2.2复位电路本装置采用上电自动复位与按钮复位方式,如图3-4所示。单片机在上电瞬间,C3充电,电源通过C3加在RST引脚上,使单片机有效复位;在正常的情况下,复位键被按下时单片机就能复位。图3-4 单片机复位电路3.3 电源电路直流稳压电源就是将交流电压转化为稳定直流电压的装置。稳压电源由四部分电路构成:电源变压器、滤波电路、整流电路及稳压电路。稳压电源的组成框图如图3-5。电源电路图如图3-6所示。交流变压器整流电路滤波电路稳压电路交流电源负载图3-5 直流稳压电源组成框图图3-6 电源电路图电路中,电源变压器可以改变交流电源电压的大小,把市电压(220V,50Hz)的降压,输出符合要求的交流电。又由于二极管具有单向导电的特性,可以把交流电压整流为单方向的直流脉冲电压。电容组成的滤波电路的作用是滤掉由整流电路中输出的直流脉冲中电压的交流成分,留下直流电压。集成稳压器W8705能使系统电源电路输出5V的稳定电压。3.4 显示电路液晶显示广泛使用于仪器、电器设备中,它具有非常小的体积、较低的功耗、简便的连接电路、丰富的内容显示等优点。液晶显示有两种:点阵型和字符型。3.4.1 1602液晶显示1602LCD液晶是字符型液晶显示模块,用于显示数字、字母以及符号等。1602LCD显示的内容是162,也就是可以每一行显示16个字符、共显示两行的液晶模块,其技术指标如表3-3:表3-3 1602LCD技术指标工作电流2.0mA芯片的工作电压4.5V-5.5V模块最佳的工作电压5V显示容量162(字符)字符的尺寸2.95mm4.35mm(WH)1602LCD液晶显示的特性:+5V,可以调节对比度;含有80B的显示数据RAM(即DDRAM);8个可以由使用人员自己定义的字符发生器(57)(即CGROM);内部建设有160个点阵字型的字符发生器(57);含有复位电路;提供控制指令:清屏、显示、移位等。1602LCD液晶显示的引脚图如图3-7所示,引脚功能如表3-4。图3-7 1602LCD液晶显示的引脚图表3-4 602LCD液晶显示的引脚功能引脚号引脚名电平输入/输出作用1VSS电源接地端2VCC电源接+5V3VEE对比调整电压4RS0/1输入命令/数据选择。指令寄存器在低电平时被选用,数据寄存器在高电平时被选用。5R/W0/1输入读写选择信号线。写操作在处于低电平时进行,读操作在处于高电平时进行。6E1,10输入使能信号端。液晶显示模块执行命令时,E从高电平变为低电平。7DB00/1输入/输出数据总线0位(最低位)8DB10/1输入/输出数据总线1位9DB20/1输入/输出数据总线2位10DB30/1输入/输出数据总线3位11DB40/1输入/输出数据总线4位12DB50/1输入/输出数据总线5位13DB60/1输入/输出数据总线6位14DB70/1输入/输出数据总线7位15A+VCC背光源正极16K接地背光源负极3.4.2 1602LCD的控制器接口说明1602LCD的DDRAM的作用是寄放待显的字符的代码,共80字节,每一行有40个地址,但是在1602LCD中,每一行我们用前面16个地址就可以了。DDRAM地址和显示的位置的关系如下:第一行00H01H02H03H04H05H06H07H第二行40H41H42H43H44H45H46H47H第一行08H09H0AH0BH0CH0DH0EH0FH第二行48H49H4AH4BH4CH4DH4EH4FH如果要把数据显示在DDRAM的00H处,那么就需要把00H和80H加起来,即0X00+0X80,才能在00H的地址处显示想要显示的数据。1602LCD液晶显示中的CGRAM存有160个各不相同的字符图形,见附录二。每一个字符对应一个固定的代码,其中包括:阿拉伯数字、常用符号、大写及小写的英文字母等。例如,如果要想显示数字“1”,只需把以“1”的代码(00110001)为地址的字符显示出来即可。3.4.3 1602LCD液晶显示的指令1602LCD液晶显示的指令如表3-5。表3-5 1602LCD液晶显示指令表指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001X3置输入模式00000001I/DS4显示开关控制0000001DCB5光标或字符移位000001S/CR/LXX6置功能00001DLNFXX7置CGRAM地址0001字符发生存储器地址(ACC)8置数据存储器地址001显示数据存储器地址(ADD)9读忙标志或地址01BF计数器地址(AC)10写数到CGRAM或DDRAM10要写的数11从CGRAM或DDRAM读数11读出的数据指令功能如下:指令1:清楚显示,光标归位到显示屏左上方,地址计数器(即AC)的值为零。指令2:光标复位。指令3:光标与字符移位设置。指令4:控制显示与光标显示控制。指令5:光标移位或显示屏移位。指令6:功能设定指令。指令7:CGRAM地址的设置。指令8:DDRAM地址的设置。指令9:读忙碌信号及读地址计数器里的内容。指令10:写字符代码到DDRAM。指令11:读CGRAMDDRAM含的内容。1602LCD液晶与单片机连接图如图3-8。图3-8 1602LCD液晶与单片机连接图3.5 键盘接口电路在单片机的应用系统中往往需人-机对话,包含把数据输入系统和人对系统的干涉,因此系统常常设置键盘.本设计中,采用43的键盘。单片机系统中除了复位按键的其他键盘或按键输送数据和设定控制功能全是以开关的状态来实现的,按键仅是简单的电平的输入。3.5.1 独立式键盘独立式键盘一般是在当按键较少(一般小于等于8)的情况下使用。它是直接采用一根I/O线组成的单个按键电路,每一个按键之间的工作状况互不影响。独立式键盘配置灵活,结构简捷,但它要求每一个按键独占一根I/O线,在按键量大的情况下,会造成I/O口线的浪费。3.5.2 行列式键盘当按键量大时,应使用行列式键盘。行列式键盘有简单的硬件结构,它的组成为:行输出口和列输入口,行和列的交点就是所设置按键。其硬件结构如图3-9。图3-9 行列式键盘硬件结构图行线P1.0、P1.1、P1.2、P1.3是输出,列P1.4、P1.5、P1.6是输入。先使P1.0输出0,剩余的行全为1,读P1.4、P1.5、P1.6的状态,如果读得的列值为全1,说明被按键不在P1.0行上,再让下一行为0,否则,说明被按键在该行上,此时停止对行线的扫描,转到对列线的扫描,P1.3、P1.4、P1.5、P1.6有为0的列说明被按键在该列上,行、列线交叉的键即为所找的按键。如此,在P1.0、P1.1、P1.2、P1.3之间循环进行。3.6 报警电路在测控系统中,为了保证生产的安全,都带有报警系统,已达到提醒操作人员采取措施的目的。工作方式是比较采集到的信号数据与设定值的参数上下限,如果超出了上下限值就产生报警,反之就作为采样值,然后正常工作。本设计使用蜂鸣音报警。电路设计中只需要使用市场上出售的压电式蜂鸣器,然后经AT89C52的一根I/O口线通过驱动器驱动蜂鸣器发出声音。压电式蜂鸣器可用晶体三极管驱动,只需加10mA的驱动电流,如图3-10所示。P2.5输出的是高电平时,三极管导通,蜂鸣器鸣叫并伴随着状态指示灯的闪烁。在P2.5输出的是低电平时,三极管截止,没有电流通过蜂鸣器,蜂鸣器不发出声音,且状态指示灯不亮。图3-10 报警电路3.7 无线通信电路短距离的无线通信广泛应用在各种领域,它可靠性好,抗干扰性好,可灵活安装。3.7.1 PTR2000介绍PTR2000的特性如下:收发一体;FSK调制/解调,抗干扰性好;工作频率是433MHZ(国际通用数据传输频段);应用DDS+PLL频率合成的技术,具有非常好的稳定性;低功耗,具有较低的工作电压2.7V;且接收时待机状态的电流是8A;具有非常高的灵敏度,可高至-105dbm。体积小,尺寸为40275mm;能够直接与CPU串口相连(例如8031),也能与PC机的RS232接口相连,且编程简便。PTR2000的引脚如图3-11。图3-11 PTR2000引脚图引脚说明:VCC、GND:电源和电源地CS:频道的选择端DO:数据的输出DI:数据的输入TXEN:发射和接收的控制端。TXEN=1,发射;TXEN=0,接收。PWR:节电控制端3.7.2 通信接口电路PTR2000可以和单片机的I/O口或者串口相连,也能够和计算机串口实现通信。这时,应该在它们之间连接RS232电平转换的芯片。本设计中采用MAX232。单片机和PTR2000的接口如图3-12。图3-12单片机和PTR2000的接口电路PTR2000的DO脚和AT89C51的RXD引脚相连,实现把PTR2000接收并解调后的数据输送到AT89C52中的功能;DI脚和AT89C52的TXD脚相连,实现AT89C52把数据传送给PTR2000且经调制后发射到计算机的功能。TXEN脚和AT89C52的P2.0脚相连,通过P2.0引脚的电平来控制PTR2000的接收和发射,接收时TXEN=1,发射时TXEN=0。另外,PTR2000的CS脚需和GND脚相连,使频道1为固定的通信频道。计算机与PTR2000的接口电路如图3-13。图3-13 计算机与PTR2000的接口电路PTR2000的DO脚和MAX232的T2IN相连,工作过程为PTR2000把接到的数进行解调之后,输送给MAX232,实现电平的转换。PTR2000的DI和MX232的R2OUT相连,工作过程为MAX232把准备发送的数通过RS232转变,然后传送给PTR2000,再经过解调之后发送到计算机端。PTR2000的TXEN和MAX232的R1OUT相连,工作过程为利用PC机串口RTS来控制PTR2000的接收和发射状态。TXEN=1,PTR2000发射;TXEN=0,PTR2000接收。MAX232的T2OUT和PC机的RXD相连,实现经MAX232调制之后的数传送给PC机串口的接收端的功能。MAX232的R2IN和PC机的TXD相连,实现计算机把准备发送的信号传给MAX232且通过调制再输送给PTR2000发送端。MAX232的R1IN和PC机串口的RTS相连,控制计算机对于无线收发的发射和接收的转变。第4章 系统软件的设计第4章 系统软件的设计4.1 主程序流程图单片机初始化读取湿度值显示报警传入PC机有无越限?NY初始化SHT11开T0中断键盘键盘扫描,输入初始值,完成输入?等待输入完成YN开始返回4.2 初始化子程序开始变量初始化SHT11初始化LCD初始化PTR2000初始化返回4.3 键盘子程序P1口置位开始读取P1口值低位清0有键按下?延时5ms读取P1口低位清0有键按下?计算键值闭合键释放?返回返回键值NYNYNY4.4 湿度程序流程图报警显示湿度是否超出范围?N初始化SHT11发送湿度测量命令读取湿度值DATA是否为低?Y开始YN结束4.5 显示子程序开始LCD发指令LCD写数据返回4.6 通信流程图接受命令接收数据发送应答信号接收数据长度发送数据长度和数据发送地址和功能码发或收?发收开始结束结束总结总结土壤湿度测量系统能够实时的测量土壤中的湿度参数,使人们直观的了解农作物生长发育的状况,提醒人们采取措施进行控制,使农作物生长在适宜的环境中。它用在农业中可以提高农作物的产量,给社会带来更高的经济效益。设计中,在深入研究了土壤湿度测量技术和传感器技术的前提下,制定了最佳的设计方案;并且完整地设计和分析了系统的整体思路和各个单元电路。本设计中的土壤湿度测量系统有两大主要电路:信号采集电路、单片机AT89C52控制电路。设计中利用湿度传感器SHT11进行数据采集,然后将数据送入单片机处理,实现湿度显示、声音报警、与上位机通讯等功能。湿度传感器SHT11功耗低、体积小、可靠性高,广泛应用在环境监测工农业生产等领域。设计中AT89C52单片机作为土壤湿度测量系统的核心,用来接收土壤湿度信号并进行处理,如果所测得的土壤湿度值不在设定的初始范围内,单片机就会启动报警,提醒检测人员采取相应的措施,确保农作物生长在适宜的环境中。AT89C52运算速度快、功耗低、抗干扰能力强,是一种性价比较高的产品。系统通过湿度传感器实现湿度的数据采集,并实现数据的数字化。系统显示参数的上限值与下限值经键盘输入,如果检测量的信号值不在上下限区间内,系统就会启动报警电路。为了方便检测,使测量人员能够直观地知道土壤中的湿度值,可以把湿度值通过LCD显示出来,并通过无线通讯的方式,将所测得的湿度值传输到上位机。编写程序时使用C语言,它是一种结构和功能都很强的语言。C语言比起汇编语言,可维护性与可读性以及可移植性更强,它能够使人尽可能少的去操作硬件。虽然本设计已完成,但该土壤湿度测量系统还存在许多不足的地方。因为SHT11输出的是相对湿度值,而我们想要的被测相对湿度需要经过对读数值的非线性补偿和温度补偿才能获得。因为相对湿度的输出特性表现出一定的非线性关系,因此经过SHT11采集的湿度值送入LCD显示的结果有很大的误差。参考文献参考文献1单成群等,传感器设计基础:课程设计与毕业设计指南,国防工业出版社,20072徐科军,传感器与检测技术,电子工业出版社,20083周真等,传感器原理与应用,清华大学出版社,20114姜志海等,单片机原理及应用,电子工业出版社,20105 沙占友等,单片机外围电路设计,电子工业出版社,20066 沙占友等,单片机外围电路设计(第2版),电子工业出版社,20067 求是科技,单片机典型模块设计实例导航,人民邮电出版社,20048 徐爱华,单片机应用技术教程,机械工业出版社,20039欧阳文,ATMEL89系列单片机的原理与开发实践,中国电力出版社,200710 朱定华等,单片微机原理与应用,清华大学出版社,200311李朝青等,单片机原理及串行外设接口技术,北京航空航天大学出版社,200812郝建国,郑燕等,单片机在电子电路设计中的应用,清华大学出版社,200613方大千,实用电源及报警电路详解,化学工业出版社,201014陈梓城等,实用电子电路设计与调试,中国电力出版社,201115李群芳等,单片微型计算机与接口技术,电子工业出版社,200516中外集成电路简明速查手册,电子工业出版社,199117 江思敏等,Protel电路设计教程,清华大学出版社,200518夏路易,石宗义,电路原理图与电路板设计教程Protel 99SE,北京希望电子出版社,200219Su Xue,ZhangHui. Specialistic English for Electronic Information Engineering. 2008 60-6420V. Yu. Teplov,A. V. Anisimov. Thermostatting System Using a S

温馨提示

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

评论

0/150

提交评论