1、毕业设计论文基于单片机的粮库温湿度控制系统的设计引 言电子计算机的产生和发展,使过去许多因为计算复杂而长期被搁置的数学难题得以解决,从而有力推动了科学技术的发展,推动了工农业生产、交通运输、空间技术及医疗卫生等事业的发展。特别是近10多年来,微处理机与微型计算机的发展,以深入到科研、国防、工业、农业、交通运输、宇航、医疗卫生、企业管理及人类社会生活的各个领域,有利推动了人类社会的进步。为适应社会发展需要,微型计算机不断地更新换代,新产品层出不穷。在微型计算机的大家族中,近年来单片微型计算机异军突起,发展极为迅速。目前,单片机正朝着高性能和多品种方向发展,进一步向着CMOS化、低功耗、小体积、大
2、容量、高性能、低价格和外围电路内装化等几个方面发展。随着单片机技术的飞速发展,单片机在各个领域中都得到了广泛的应用。其中,由单片机组成控制系统,已成为单片机应用的发展趋势。粮食是人类生存的必需品,温度与湿度是保存好粮食的先决条件,随着中国加入WTO和粮食市场的逐渐开放,储存大量的粮食对稳定国民经济的发展起到至关重要的作用。本课题设计的是粮库温湿度控制系统,是对一个粮库的温湿度进行控制,以保证粮库储粮的安全。粮库温湿度控制系统是以MCS-51系列单片机为核心构成控制系统。本课题完成了整个系统的硬件设计,提出了一种可以应用于中小型粮库的温湿度控制系统。第一章 绪 论1.1 单片机的简介 1.1.1
3、 单片机的发展单片微型计算机(Single-Chip Microcomputer)简称单片机。它是一块芯片上集成了中央处理器(Central Processing Unit, CPU)、随机存取存储器(Random Access Memory, RAM)、只读存储器(Read Only Memory, ROM)、定时/计数器及I/O(Input/Output)接口电路等部件,构成一个完整的微型计算机。单片机的发展历史并不长,它的产生和发展与计算机的产生和发展大体上同步,经历了四个阶段。第一阶段(19701974年):为4位单片机阶段。这种单片机的特点是:价格便宜,控制功能强,片内含有多种I/O
4、接口,有的根据不同用途还配有许多专用接口,有些甚至还包括A/D转换,D/A转换,声音合成等电路。丰富的I/O功能大大增强了4位单片机的控制能力,从而使外部设备接口电路极为简单。4位单片机主要应用于录音机,摄像机,电视机,电冰箱,洗衣机,录像机和电子玩具等产品中。第二阶段(19741978年):为低中档8位单片机阶段。它是8位单片机的早期产品,以Intel公司的MCS-48系列单片机为代表,这个系列的单片机在片内集成8位CPU,并行I/O口,8位定时/计数器,RAM和ROM等,无串行接口,中断处理较简单,片内RAM和ROM容量较小,且寻址范围不大于4KB。第三阶段(19781983年):为高档8
5、位单片机阶段。这类单片机是在低中档基础上发展起来的,其性能有明显提高。以Intel公司的MCS-51系列单片机为代表,在片内增加了串行接口,有多级中断处理系统,16位定时/计数器,片内RAM, ROM容量增大,寻址范围可达64KB,有的片内带有A/D转换接口。这类单片机功能强,应用领域广,是目前各类单片机中应用最多的一种。第四阶段(1983年至今):为8位单片机巩固发展阶段及16位单片机,32位单片机推出阶段。此阶段主要特征是:一方面不断完善高档8位单片机,改善其结构,以满足不同用户的需要;另一方面发展16位单片机、32位单片机及专用型单片机。16位单片机除了CPU为16位外,片内RAM为23
6、2B,ROM为8KB,片内带有高速输入输出部件,多通道10位A/D转换部件,中断处理为8级,其实时处理能力更强。近年来,各个计算机生产厂家已进入更高性能的32位单片机研制和生产阶段,32位单片机除了具有更高的集成度外,主振频率可达20MHz,这使32位单片机的数据处理速度比16位单片机快很多,性能比8位,16位单片机更加优越。1.1.2 单片机的特点由于单片机的这种结构形式及它所采取的半导体工艺,使其具有很多显著的特点,因而在各个领域都得到了迅猛的发展。单片机主要具有如下特点:(1)有优异的性能价格比。(2)集成度高、体积小、有很高的可靠性。单片机把各功能部件集成在一块芯片上,内部采用总线结构
7、,减少了各芯片之间的连线,大大提高了单片机的可靠性与抗干扰能力。另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境下工作。(3)控制功能强。为了满足工业控制的要求,一般单片机的指令系统中均有极丰富的转移指令、I/O口的逻辑操作以及位处理功能。单片机的逻辑控制功能及运行速度均高于同一档次的微机。(4)单片机的系统扩展和系统配置较典型、规范,容易构成各种规模的应用系统。1.1.3 单片机的应用由于单片机具有显著的优点,它已成为科技领域的有力工具,人类生活的得力助手。它的应用遍及各个领域,主要表现在以下几个方面:(1)单片机在智能仪表中的应用。单片机广泛地用于各种仪器仪表,使仪器仪表智能
8、化,并可以提高测量的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比。(2)单片机在机电一体化中的应用机电一体化是机械工业发展的方向。机电一体化产品是指集成机械技术、微电子技术、计算机技术于一体,具有智能化特征的机电产品,例如微机控制的车床、钻床等。单片机作为产品中的控制器,能充分发挥它的体积小、可靠性高、功能强等优点,可大大提高机器的自动化、智能化程度。(3)单片机在实时控制中的应用。单片机广泛地用于各种实时控制系统中。例如,温度和湿度的自动控制、航空航天、尖端武器、机器人等各种实时控制系统中,都可以用单片机作为控制器。单片机的实时数据处理能力和控制功能,可使系统保持在最佳工作状态
9、,提高系统的工作效率和产品质量。(4)单片机在分布式多机系统中的应用。在比较复杂的系统中,常采用分布式多机系统。多机系统一般由若干台功能各异的单片机组成,各自完成特定的任务,它们通过串行通信相互联系、协调工作。单片机在这种系统中往往作为一个终端机,安装在系统的某些节点上,对现场信息进行实时的测量和控制。单片机的高可靠性和强抗干扰能力,使它可以置于恶劣环境的前端工作。(5)单片机在人类生活中的应用自从单片机诞生以后,它就步入了人类生活,如洗衣机、电冰箱、电子玩具、收录机等家用电器配上单片机后,提高了智能化程度。1.2粮库温湿度控制原理随着我国科技的快速发展和农业自动化程度的提高,粮库管理技术也将
10、得到进一步改进。粮库一般较大,仓库库房数较多,测点可达数百个。粮仓温度湿度测量方法以及相应的智能控制一直是粮食保存的一个重要问题。假设该粮库共有1个仓库,在每个仓库中要安装多个温湿度传感器,分布在该仓库的重要位置,每个温湿度传感器实际上是一个终端设备,也是该系统中的重要关键的设备。在每个设备中都有一个新型的温度传感器和湿度传感器,用于测量现场的温度和湿度,并将测量的温度湿度值,经0809发送到单片机上,以便控制整个粮库的各个测试点的温度湿度加以全面监视和控制管理。对每个设备都要设置温度湿度监控的上限和下限值。当温度超过上限值时,说明该点的温度超过标准温度,则需要该系统直接启动本仓库中的空调设备
11、降温,真正做到实时控制,同时也要向报警系统发送超温信号;当温度降到标准值时,则停止降温;如果温度低于下限值时,则要直接启动空调设备加热,并向报警系统报告,而当温度上升到标准值时停止加热。湿度对粮食的保管是尤为重要的,如果相对湿度过大,粮食容易发霉腐烂,而相对湿度太小时,粮食过度干燥又容易变质。如果测量到相对湿度过大而超过上限值时,就要直接启动本仓库中的除湿设备排除过多的水分,同样也需要通过系统来启动除湿设备,当湿度降低到标准值时停止除湿。但同时也要将湿度超标的信号发送到报警系统;如果湿度降低到下限值时,也要直接启动本仓库的加湿设备进行加湿,防止过于干燥而使粮食变质。1.3粮库温湿度控制系统的整
12、体设计该系统选用了Intel公司生产的MCS-51系列中的8051作为微处理器,8051编程灵活,扩展空间大,可以用软件编程来辅助硬件工作,以完善整个系统的功能。本系统首先通过键盘设定各项参数,包括储藏地点的温湿度限制。然后由温度、湿度检测电路时检测采集各储藏地点的温度、湿度。接着经由A/D转换模块将采集到的模拟信号转换为数字信号送到8051内部进行处理,同时在显示器上显示测试值,系统获得数据后和设定值比较,控制空调系统工作,以达到控制温度、湿度的目的,再通过通信线路向系统传输数据。本系统中温度、湿度均为缓变信号,且转换成的电平信号为低电平缓变信号,对A/D转换的要求不高,所以选用较为廉价的A
13、DC0809。该芯片采用的是8位逐次逼近型A/D转换器,完全可以满足设计需要,并且可以根据需要扩展检测通路。温度检测主要采用集成温度传感器AD590;湿度检测主要采用电容式湿敏元件HS1101。另外,本系统还增添了看门狗和报警系统,使系统更加完善。图1.1为系统的整体设计。 图1-1 系统总体设计框图第二章 MCS-51系列单片机的结构及原理2.1 MCS-51系列单片机的特征和结构2.1.1 MCS-51系列单片机特征美国Intel公司推出MCS-51系列高档8位单片机至今20多年来,51系列单片机经久不衰,并得到了极其广泛的应用。它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元
14、和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品。MCS-51系列单片机的典型产品为8051、8031和8751。通常MCS-51这个术语泛指以8051为内核的单片机。8051是ROM型单片机,内部有4KB的掩膜ROM,即单片机出厂时,程序已由生产厂家固化在程序存储器中。8051内部结构具有如下特征:面向控制的8位CPU;4kbytes 程序存储器(ROM),128bytes的数据存储器(RAM);可以寻址64KB的片外程序存储器和片外数据存储器;32根双向和可单独寻址的I/O线;一个全双工的异步串行口;两个16
15、位定时/计数器;5个中断源,两个中断优先级;有片内时钟振荡器;采用高性能的HMOS生产工艺生产;有布尔处理(位操作)能力;含基本指令111条,其中单机器周期指令64种。2.1.2 MCS-51系列单片机的内部总体结构图2-1所示为MCS-51单片机的基本结构,它由8个部件组成,即中央处理器(CPU),片内数据存储器(RAM),片内程序存储器(ROM/EPROM),输入输出接口(Input/Output,简称I/O口,分为P0口、P1口、P2口和P3口),可编程串行口,定时/计数器,中断系统及特殊功能寄存器(SFR),各部分通过内部总线相连。图2-1 MCS-51单片机的基本结构2.2 MCS-
16、51系列单片机的引脚功能和总线结构2.2.1 MCS-51系列单片机的引脚功能8051芯片采用40引脚的双列直插封装,如图2-2(a),分为地址总线,数据总线,控制总线3类见图2-2(b)。在40条引脚中有两条专用于住电源的引脚,2条外接晶体的引脚,4条控制或与其它电源复用的引脚,32条输入/输出引脚。(a)引脚图 (b)总线结构图图2-2 MCS-51系列单片机的引脚及总线结构40条引脚的功能分别是:1.主电源引脚Vcc和VssVcc(40脚)接+5V电压;Vss(20脚)接地。2.外接晶振引脚XTAL1和XTAL2XTAL1(19脚):接外部晶体的一个引脚。在主控电路中它是一个反相放大器的
17、输入端,这个放大器构成了片内振荡器。当采用外部振荡器时,此引脚应接地。XTAL2(18脚):接外部晶体管的另一端。在主控电路中接至上述振荡器的反相放大器的输出端。采用外部振荡器时,该引脚接外部振荡器的信号,即把外部振荡器的信号直接到内部时钟发生器的输入端。3.控制与其它电源复用引脚RST/VPD、ALE/、和/VPP(1)RST/VPD(9脚):当振荡器运行时,在此引脚上出现两个机器周期的高电平将使主电路复位。在设计主电路是此引脚与Vss引脚之间连接一个约8.2K的下拉电阻,与Vcc引脚之间连接约10F的电容,以保证可靠地复位。Vcc掉电期间,此引脚可接备用电源,以保持内部RAM的数据不丢失。
18、当Vcc主电源下掉到低于规定的电平,而VPD在其规定的电压范围(50.5V)内,VPD就向内部RAM提供备用电源。(2)ALE/(30脚):当访问外部存储器时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。即使不访问外部存储器,ALE端也以不变的频率周期地出现正脉冲信号,此频率为振荡器频率的1/6。因此,它可以做对外输出时钟,或用于定时目的。然而要注意的是,每当访问外部存储器时,将跳过一个ALE脉冲。ALE端可以驱动(吸收或输出电流)8个LS型的TTL输入电路。对于有EPROM时,在EPROM编程期间,此引脚用于输入编程脉冲()。(3)(29脚):此脚的输出是外部程序存储器的读选信号。在
19、从外部程序存储器取指令(或常数)期间,每个机器周期两次有效。但在此期间,每当访问外部数据存储器时,这两次有效的信号将不出现。同样可以驱动(吸收和输出)8个LS型的TTL输入电路。(4)/VPP(31引脚):当端保持高电平时,访问内部程序存储器,但在8051内值超过0FFFH,将自动转向执行外部程序存储器内的程序。当保持低电平时,则只访问外部程序存储器,不管是不是有内部程序存储器。当扩展EPROM时,在对EPROM编程期间,此引脚也用于施加5伏的编程电源。4. 输入/输出引脚P0口、P1口、P2口和P3口(1)P0口(39脚32脚):是双向8位三态I/O口,在外部存储器,与地址总线的低8位及数据
20、总线复用,能以吸收电流的方式驱动8个LSTTL负载。外部扩展存储器时,当做数据总线(如图2-2中的P0.0P0.7为数据总线接口);外部扩展存储器时,当作地址总线(如图2-2中的P0.0P2.7为地址总线接口),不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。(2)P1口(1脚8脚):是8位准双向I/O口。由于这种接口输出没有高阻状态,输入也不能锁存,故不是真正的双向I/O口。P1口能驱动(吸收或输出电流)4个LSTTL负载。P1口只作I/O口使用,其内部有上拉电阻。(3)P2口(21脚28脚):是8位准双向I/O口。在访问外部存储器时,它可以作为扩展电路
21、高8位地址总线送出高8位地址。扩展外部存储器时,当作地址总线使用,作一般I/O口使用,其内部有上拉电阻。(4)P3口(10脚17脚):是8位准双向I/O口,这8个引脚还用于专门功能,是复用双功能口。除了作为I/O使用外(其内部有上拉电阻),还有一些特殊功能,由特殊寄存器来设置,具体功能如表2-1所示。作为第一功能使用时,就作为普通I/O口用,功能和方法与P1口相同。值得注意的是,P3口的每一条引脚均可独立定义第一功能的输入输出或第二功能。表2-1 P3口第二功能2.2.2 三总线结构单片机的引脚除了电源、复位、时钟接入和用户I/O口外,其余引脚都是为了实现系统扩展而设置的。这些引脚构成了三总线
22、形式。引脚功能分类如图2-2(b)所示。(1)地址总线AB:地址总线宽度16位,因此外部存储器直接寻址范围64KB。16位地址总线由P0口经地址锁存器提供8位地址A0A7,P2口直接提供高8位地址A8A15。(2)数据总线DB:数据总线宽度为8位,由P0口提供。(3)控制总线CB:由P3口的第二功能状态和4根独立控制线RESET,ALE组成。2.3 MCS-51系列单片机的主要组成部分2.3.1 CPU8051的CPU是由运算器和控制器组成。(1)运算器:它包括算术、逻辑部件ALU、累加器Acc、寄存器B、暂存器YMP1和YMP2、程序状态寄存器PSW、布尔处理器以及十进制调整电路等。运算器主
23、要用来实现数据的传送、数据的算术运算和逻辑运算、位变量处理等。运算部件ALU的功能十分强大,它不仅可对8位变量进行逻辑“与”、或“异或”、循环、求补、清零等基本操作,还可进行加、减、乘、除等基本运算。为了乘除的需要,还设置了B寄存器。在执行乘法指令时,用来存放其中一个乘数的高8位数;在执行除法运算指令时,B中存放除数及余数。主控电路指令系统中的布尔指令集、存储器中的位地址空间与CPU中的位操作构成了片内的布尔功能系统,它可对(bit)变量进行布尔处理,如置位、清零、求补、测试转移及逻辑“与”、“或”、等操作。在实现位操作时,借用了程序状态标志寄存器(PSW)中的进位标志位Cy作为操作的“累加器
24、”。运算部件中的累加器Acc是一个8位的累加器(Acc也可简称为A)。需要说明的是Acc的进位标志Cy就是布尔处理器进行以位操作的一位累加器。8051的程序状态寄存器PSW,是一个8位寄存器,它包含了程序的状态信息。(2)控制器:控制部件是主控电路的神经中枢,它包括时钟电路、复位电路、指令寄存器、译码器以及信息传送控制部件。它以主振频率为基准发出CPU时序,对指令进行译码,然后发出各种控制信号,完成一系列定时控制的操作,用来控制电路的各部分的运行。通常把运算器和控制器合在一起称为中央处理器(Central Processing Unit),简称CPU。2.3.2 存储器8051片内有4KB的程
25、序存储器和128B数据存储器。除此之外还可以在片外扩展64KB的程序存储器和64KB的数据存储器。图2-3为存储器结构图。其中,内部存储器的4KB是与外部存储器公共的,地址是从0000HFFFFH, 64KB外部的程序存储器和数据存储器的地址都是0000HFFFFH,128B的片内数据存储器地址是从00H80H。以下分别介绍这些存储器:(1)程序存储器程序存储器用于存放编号的程序和表格常数,它以程序计数器PC作地址指针。一个微处理器能够很好的执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行的。那么设计人员编写的程序就存放在
26、微处理器的程序存储器中,俗称只读程序存储器(ROM)。程序存储器的结构如图2-3(a)所示。对于8051等单片机,正常运行时,则需单片机的端接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。其条件为:当1时,程序从片内ROM开始执行,当PC值超过片内ROM容量时会自动转向外部ROM空间。当0时,程序从外部存储器开始执行。其中一组特殊是0000H0002H单元,系统复位后,PC为0000H,单片机从0000H单元开始执行程序,如果程序不是从0000H单元开始,则应在这三个单元中存放一条无条件转移指令,让CPU直接去执行用户指定的程序
27、。另一组特殊单元是0003H002AH,这40个单元各有用途,它们被均匀地分为五段,它们的定义如下:0003H000AH 外部中断0中断地址区。 000BH0012H 定时/计数器0中断地址区 0013H001AH 外部中断1中断地址区 001BH0022H 定时/计数器1中断地址区 0023H002AH 串行中断地址区 可见以上的40个单元是专门用于存放中断处理程序的地址单元,中断响应后,按中断的类型,自动转到各自的中断区去执行程序。(2)数据存储器数据存储器由工作寄存器、位寻址区和数据缓冲器组成,其结构图如2-3(b)所示。8051内的数据存储器的特点之一是工作寄存器和数据存储器是统一编址
28、的。内部RAM的001FH为工作寄存器区,共分4个区,每区有8个工作寄存器R0R7,共32个内部RAM单元。当前程序使用的工作寄存器是由程序状态字PSW的第3位(RS0)和第4位(RS1)这二位指示的,用户可以通过指令改变PSW中的RS1和RS0这二位来切换寄存器区,CPU通过修改PSW中的RS1和RS0二位的状态,就能任选一个工作寄存器区。片内存储器的复位状态及操作方法如表2-2所示。表2-2 内部数据复位状态及操作8051共有128个字节的RAM作为数据存储器,当需要外扩时,最多可以扩展64K字节的RAM或I/O,这对很多领域已经足够了。图2-3(c)为外部数据存储器的结构图。图2-3 8
29、051存储器结构图(3)特殊功能寄存器8051中的特殊功能寄存器SFR实质上是一些具有特殊功能的RAM的单元,字节范围为80HFFH,SFR的总数为21个,离散的分布在该区域中,其中有12个位寻址,用户可以通过使用位能标记对12个寄存器的任一个有效位进行位操作。8051片内的I/O口锁存器、定时器、串行口缓冲器以及各种控制寄存器和状态寄存器都以特殊功能寄存器的形式出现。2.3.3 并行I/O口8051单片机有4个8位并行输入/输出端口,分别为P0,P1,P2,P3口,共32根线。下面分别介绍以上四个端口的结构。(1)P0口P0口有两个用途,第一是作为一般I/O口使用;第二是作为地址/数据总线使
30、用。它是由一个锁存器、两个三态输入缓冲器1和2、场效应管VT1和VT2、控制与门、反向器和转换开关MUX组成。当控制线C=0时,MUX开关向下,P0口作为一般I/O口使用;当控制线C=1时,MUX开关向上,P0口作为地址/数据分时复用总线使用。P0口作为I/O口使用时,场效应管VT1是截止的。当从P0口输出时,必须外接上拉电阻才能有高电平输出;当P0口输入时,必须先向锁存器写“1”,以避免锁存器为“0”状态时对引脚读入的干扰。(2)P1口P1口只有一种功能通用准双向的输入/输出接口,所以它没有转换开关MUX。内部有上拉电阻,是两个场效应管并在一起形成的。当P1口输出高电平时,可以向外提供拉电流
31、负载,所以不必再接上拉电阻,当输入时,与P0口一样,必须先向锁存器写“1”,使场效应管截止。(3)P2口P2口也有两种用途,一是做通用I/O接口,二是做高8位地址总线。P2口的位结构比P1口多了一个转换控制部分。当P2口作为通用I/O口时,多路开关MUX倒向锁存器输出Q端,其操作与P1口相同。在系统扩展片外程序存储器时,由P2口输出高八位地址,低八位地址由P0口输出。此时MUX在CPU的控制下,转向内部地址线的一端。因为访问片外程序存储器的操作往往连续不断,P2口要不断送出高八位地址,所以这时P2口无法再作为通用I/O口。(4)P3口 P3口作为通用I/O口使用时,其功能与P1口相同,负载能力
32、也相同。当作为第二功能时,见表2-1所示。与P1口相比,P3口增加了与非门和缓冲器3,它们使P3口除了有准双向I/O功能外,还具有第二功能。与非门的作用实际上是一个开关,它决定是输出锁存器上的数据,还是输出第二功能W的信号。当输出锁存器Q端的信号时,W=1;当输出第二功能W的信号时,锁存器Q端为1。通过缓冲器3,可以获得引脚的第二功能输入。不用考虑如何设置P3口的第一功能或第二功能,内部硬件将自动切换。2.3.4 振荡器和时钟电路时钟电路用于产生单片机工作所需的时钟信号。时钟信号可以由两种方式产生:内部时钟方式和外部时钟方式。图2-4(a)为内部时钟方式,它采用外接晶体和电容组成的并联谐振电路,晶体可以在1.2Hz12Hz之间任选,电容可以在20pF6
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1