1、毕业设计基于单片机 AT89C52的大棚温度控制系统I目 录第 1 章 绪 论 .11.1 系统的概述 .11.2 系统的要求 .11.3 系统的主要模块 .21.3.1 本系统的主要组成部分 .21.3.2 各部分的功能 .21.3.3 工作原理 .2第 2 章 设计的理论基础 .32.1 AT89C52 的工作原理 .32.1.1 CPU 的结构 .32.1.2 CPU 的结构 I/O 口结构 .32.1.3 程序存储器 .32.1.4 定时器 .42.1.5 中断系统 .42.2 单总线数字温度传感器 DS18B20 检测电路 .52.2.1 DS18B20 简单介绍 .52.2.2 D
2、S18B20 的性能特点 .52.2.3 DS18B20 的测温原理 .62.3 LCD1602 液晶显示器 .62.3.1 LCD1602 简介 .62.3.2 1602LCD 的指令说明及时序 .72.4 直流马达 .92.4.1 马达工作的原理 .92.4.2 马达的基本构造 .92.5 蜂鸣器 .9II第 3 章 系统的硬件组成电路设计 .113.1 系统总硬件设计 .113.2 时钟电路 .113.3 AT89C52 的复位电路 .123.4 单总线数字温度传感器 DS18B20 检测电路 .123.5 LCD1602 显示模块 .133.6 驱动电路 .133.7 报警电路 .14
3、第 4 章 系统软件的设计 .154.1 主程序设计 .154.2 温度检测 .164.2.1 读取温度设计 .164.2.2 温度数据处理设计 .174.3 液晶显示器 LCM1602 .194.3.1 LCM1602 初始化 .194.4 马达的控制 .204.5 报警器的启动 .21第 5 章 总结与展望 .225.1 总结 .225.2 展望 .22参考文献 .23致 谢 .24附录 A .25附录 B .30附录 C:实物照片 .33III基于单片机 AT89C52的大棚温度控制系统摘 要蔬菜的生长与温度息息相关,对于蔬菜大棚来说,最重要的一个管理因素是温度控制。温度太高,则停止生长
4、或者生长速度减慢,所以要将温度始终控制在适合蔬菜生长的范围内。如果仅靠人工控制既耗人力,又容易发生差错。为此,在现代化的蔬菜大棚管理中通常有温度自动控制系统,以控制蔬菜大棚温度,适应生产需要。 本设计是通过单片机控制,来实现对蔬菜大棚温度进行自动控制.系统以AT89C52 单片机为基础,通过数字及模拟式对温度进行检测,通过显示屏显示当前温度。当采集到的温度高于 20,马达将带动风扇的转动,实现自动控制大棚里的温度.并且随着温度每升高 5,马达的转动速率提高一倍。当检测到的温度高于 35时,发出报警信号。【关键词】大棚温度控制系统 AT89C52 18B20 LCD1602 马达IVThe Gr
5、eenhouse Temperature Control SystemBased on AT89C52 MCUAbstractThe growth of vegetables is closely related to the temperature, for vegetable greenhouses, the most important factors of the managements are the temperature control. The temperature is too high; the growth rate will stop or slow down. Th
6、at is why it is necessary to always control temperature within the context of growing vegetables in suitable. If only depends on the manual control both to consumer the manpower, and easy to have mistaken. Therefore, usually there are automatic control systems of temperature in modernized vegetable
7、canopy management, in order to control the temperature of vegetable canopy, adapt to producing the need.This design is controlled through the microcontroller, to achieve automatic control of vegetable greenhouse temperature. The system based on the AT89C52 MCU, through digital and analogue temperatu
8、re to be detected, by display shows the current temperature. When the collected temperature higher than 20 , the motor will drive the rotation of the fan, and automatic control the temperature of the greenhouse. And as the temperature is increased by 5 , the motor rotation speed doubled. When the de
9、tected temperature is higher than 35 , send out the alarm signal.【Key words】Temperature control of the greenhouses system AT89C52 18B20 LCD1602 motor1第 1章 绪 论我国南方温度严热而漫长,大力推广大棚蔬菜的种植来满足人们日常生活对蔬菜的需要。随着人们生活水平的日益增长,对蔬菜的要求也较高,对大棚蔬菜的温度控制就是一个重要因素。温度过高,蔬菜就会停止生长或者糜烂。本系统就基于单片机 AT89C52 实现对大棚温度的自动化控制。用数字温度计 18B
10、20 采集,将采集到的温度用显示屏显示,再根据采集到的温度,控制马达的转速,从而实现对大棚温度的控制。当温度大于 35,喇叭产生报警信号。1.1 系统的概述应用自动控制和电子计算机实现农业生产和管理的自动化,是农业现代化的重要标志之一。近年来电子技术和信息技术的飞速发展,带来了温室控制与管理技术方面的一场革命,随着“设施农业” 、 “虚拟农业”等新名称的出现。温度计算机控制与管理系统正在不断吸收自动控制和信息管理领域的理论和方法,结合温室作物种植的特点,不断创新,逐步完善,从而使温室种植业实现真正意义上的现代化,产业化。国内外度计算机控制技术的发展善计算机的发展最早可以追溯到上个世纪的 40
11、年代,但将计算机用于环境控制则开始于 20世纪 60 年代。20 世纪 80 年代初诞生了第一批温室控制计算机,此后温度计算机控制及管理技术便函先在发达国家得到广泛应用,后来各发展中国家也都纷纷引进,开发出适合自己的系统。这在给各国带来了巨大的经济效益的同时,也极大地推动了各国农业的现代化进程。本系统以 AT89C52 单片机为控制核心的测控仪,主要是为了对蔬菜大棚内的温度,地检测与控制而设计的。该测控仪具有检测精度高、使用简单、成本较低和工作稳定可靠等特点,所以具有一定的应用前景。1.2 系统的要求本系统通过单片机 AT89C52 控制,用 18B20 数字温度计采集温度。通过LCD1602
12、 液晶显示屏显示当前温度,当温度高于 20,马达将带动风扇的转动,实现自动控制大棚里的温度.并且随着温度每升高 5,马达的转动速率提高一倍。当检测到的温度高于 35时,发出报警信号。本设计将实现大棚温度的自动化控制。用 protues 软件绘制电路原理图,再根据电路原理图捍接电路板。捍接的电路板实现温度的自动化控制。21.3 系统的主要模块1.3.1 本系统的主要组成部分本系统为一个全自动温度检测与控制系统,由以下几个部分组成:AT89C52单片机,温度检测,显示电路,马达,及报警装置等组成。组成图如图1-1。温度检测装置AT89C52显示设备马达控制报警装置图 1-1 温度自动控制主要组成部
13、分由图1-.1 所示,本系统的核心部分是AT89C52,此芯片是该电路的枢纽。由它先控制着温度的检测,用检测到的温度实现马达的自动控制,以及显示。若检测到的温度高于设定的值,则发出报警信号。1.3.2 各部分的功能AT89C52单片机:它是系统的中央处理器,担负着系统的控制和运算。温度检测装置:18B20数字温度计对大棚内温度进行采集,将温度转换成数字。显示设备:主要是用于显示检测到的大棚温度。马达:主要用于带动风扇的转动。报警装置:产生报警信号。1.3.3 工作原理首先对硬件系统 18B20 定义端口为 P1.3,P2.4,P2.5,P2.6 和 P0 口控制液晶LCM1602 的显示,定义
14、端口 P1.5 为马达控制端口, P1.7 为喇叭控制端口。首先对温度采集,将采集到的温度转换数字,采集到的温度由 LCM 液晶显示屏显示。再将采集到的温度所属软件设置的哪个范围,而控制 P1.5 的电平输出。3第 2章 设计的理论基础整个控制系统分为硬件电路设计和软件程序设计两部分。根据系统具体要求,可以对每一个具体部分进行分析设计。但要实现对各部分的设计,需要充分了解各部分的理论基础。本设计系统的基本组成单元包括:单片机控制单元,18B20 温度检测电路,LCD1602 显示屏,直流马达,蜂鸣器报警装置。本章将逐一进行介绍。2.1 AT89C52的工作原理2.1.1 CPU的结构CPU 是
15、单片机内部的核心部分,是单片机的指挥和执行机构,它决定了单片机的主要功能特性。从功能上看,CPU 包括两个基本部分:运算器和控制器。下面说明控制器和运算器 1。运算器包括算术逻辑运算部件 ALU、累加器 ACCC、B 寄存器、暂存寄存器 TMP1 和 TMP2、程序状态寄存器 PSW、BCD 码运算调整电路等。为了提高数据处理和位操作能力,片内设有一些专用的寄存器,而且还增强了为处理逻辑电路的功能。在进行位操作是,进位位 CY 作为位操作累加器,整个位操作系统构成一台布尔处理机。2.1.2 CPU的结构 I/O口结构AT89C52 单片机有 4 个 8 位并行 I/O 接口,记作 P0、P1
16、、P2 和 P3,每个端口都是 8 位准双向口,共占 32 根引脚。每一条 I/O 线都能独立地用作输入或输出。每个端口都包括一个锁存器,一个输出驱动器和输入缓冲器,作输出时数据可以锁存,作输入时数据可以缓冲,但是这四个通道的功能完全不同。在无片外扩展存储器的系统中,这四个端口的每一位都可以作为准双向 I/O端口使用,在具有片外扩展存储器系统中,P2 口送出高 8 位地址,P0 口为双向总线,分时送出低 8 位地址和数据的输入/输出。2.1.3 程序存储器程序存储器用于存放编好的程序和表格常数,通常该区域具有不同的保护措施,以防止该区域的内容被破坏。程序存储器通过 16 位程序计数器寻址,寻址
17、能力为 64K 字节。这似的能在 6K 地址空间内任意寻址,但没有指令使程序能控制从程序存储器空间转移到数据存储空间。对 AT89C52 芯片来说,片内有44K 字节 ROM/EPROM,片外可扩展 60K 字节 EPROM,片内和片外程序存储器统一编址。在程序存储器中,有 6 个地址单元被保留用于某些特定的地址。 如表 2.1所示:表 2.1 AT89C52 的复位、中断入口地址入口地址 说明0000H 复位后,PC=0000H0003H 外部中断入口000BH 定时器 T0 溢出中断入口0013H 外部中断入口001BH 定时器 T1 溢出中断口0023H 串行口中断入口数据存储器用于存放
18、运算的中间结果、数据暂存和缓冲以及标志位等。AT89C51 数据存储器空间也分为内片和外片两大部分,即片内数据存储器RAM 和片外数据存储器 RAM。片内数据存储器最大可以寻址 256 个单元,片外最大可扩展 64K 字节 RAM,并且片内使用的是 MOV 指令,片外 64K ROM空间专门为 MOVX 指令所用。2.1.4 定时器AT89C51 单片机的内部有两个 16 位可变成定时器 0 和定时器 1,它们都有定时或是事件计数的功能,可用于定时控制、延时、对外部事件计数和检测等场合。它们具有计数和定时两种工作方式以及四种工作模式。两个特殊功能寄存器用于确定定时器/计数器的功能和操作方式。定
19、时器 T0 的核心是一个加 1计数器,它由 8 位寄存器 TH0 和 TH1 组成,可被变成为 13 位、16 位、两个分开的 8 位等不同的结构。计数器的输入脉冲源可以是外部脉冲源或系统时钟震荡器,计数器对着两个输入脉冲之一进行递增计数。定时器 T0 具有方式 0、方式 1、方式 2 和方式 3 四种工作方式。 T1 具有方式 0、方式 1 和方式 2 三种工作方式。不管是定时工作方式还是计数方式,定时器 T0 和 T1 在对内部时钟或对外部时间计数时,不占用 CPU 时间,除非定时器/ 计数器溢出,才可能中断 CPU 的当前操作。由此可见,定时器是单片机中效率最高而且工作灵活的部件。2.1
20、.5 中断系统中断是指中央 CPU 正在处理某事情的时候,外部发生了某一事件,请求5COU 迅速去处理,于是,CPU 暂时中断当前的工作,转入处理所发生的事件;中断服务处理完成以后,再回到原来被中断的工作,这样的过程称为中断 2。AT89C52 单片机有五个中断请求源。其中,两个外部中断源;两个片内定时器/ 计数器的溢出中断源 TE0 和 TF1;一个片内串行口接受或发送中断源 RI或 TI。这些中断请求分别由单片机的特殊功能寄存器 TCON 和 SCON 的相应位锁存。当几个中断源同时向 CPU 请求中断,要求 CPU 提供服务的时候,就存在 CPU 优先响应哪一个中断请求,于是一些微处理器
21、和单片机规定了每个中断源的优先级别。2.2 单总线数字温度传感器 DS18B20检测电路由于传统的热敏电阻等测温元件测出的一般都是电压,再转换成对应的温度,需要比较多的外部元件支持,且硬件电路复杂,制作成本相对较高。这里采用DALLAS 公司的数字温度传感器DS18B20 作为测温元件。2.2.1 DS18B20简单介绍DALLAS 最新单线数字温度传感器DS18B20是一种新型的“一线器件” ,其体积更小、更适用于多种场合、且适用电压更宽、更经济。DALLAS 半导体公司的数字化温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。温度测量范围为-55+125 摄氏度,可编
22、程为9位12 位转换精度,测温分辨率可达0.0625摄氏度,分辨率设定参数以及用户设定的报警温度存储在EEPROM 中,掉电后依然保存。被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可以在远端引入,也可以采用寄生电源方式产生;多个DS18B20可以并联到3 根或2 根线上,CPU 只需一根端口线就能与诸多DS18B20 通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便 3。2.2.2 DS18B20 的性能特点独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20 的双向通讯。DS18B20 支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温。DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。适应电压范围更宽,电压范围:3.05.5V,在寄生电源方式下可由数据线供电。温范围55125,在-10+85时精度为0.5。零待机功耗。可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125