自动浇花系统1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
成都工业学院
毕业设计(论文)设计(论文)题目:
系部名称:
专业:
班级:
学生姓名:
学号:
指导教师:
二O一三年月
摘要
本次设计的盆花自动浇水系统包括土壤温湿度的检测与控制及报警两大部分。
土壤温湿度的检测与控制部分又包括了土壤温湿度的检测和显示、自动浇水系统。
土壤温湿度的检测和显示以温湿度传感器SHT-11为感应部件,将检测到的土壤温湿度值送入AT89C51单片机,再由其输出到LCD屏进行显示。
自动浇水系统设计为智能浇水:智能浇水部分是通过单片机程序设定浇水的上下限值与SHT-11送入单片机的土壤湿度值相比较,当低于下限值时,蜂鸣器就先报警,接着单片机就输出一个信号控制电磁阀打开,开始浇水,高于上限值时再由单片机输出一个信号控制电磁阀关闭,停止浇水。
关键词:AT89C5,单片机,SHT-11温湿度传感器, LCD, DS1302时钟芯片,C51程序,数字电路
Abstract
potted plant automatic watering system this design including soil temperature and humidity in the detection and control and alarm of two parts. Detection and control of part of the soil temperature and humidity and the soil temperature and humidity detection and display, automatic watering system. Soil temperature and humidity in the detection and display of temperature and humidity sensor SHT-11 as the sensing component, soil temperature and humidity will detect the value into the AT89C51 micro controller, then the output to the LCD display. Automatic watering system design for intelligent watering: intelligent watering part is compared to soil moisture by SCM procedures set watering of the upper and lower limits and SHT-11 into the single value, when the temperature is lower than the lower limit value, the buzzer will alarm, then the single-chip microcomputer can output a signal to control the electromagnetic valve is opened, the beginning of watering, higher than the limit value by the the single chip outputs a signal to control the electromagnetic valve is closed, stop watering.
Keywords: AT89C51 micro controller SHT-11 temperature and humidity sensor LCD DS1302 clock chip C51 procedures of digital circuit
目录
摘要 (II)
Abstract............................................................................................................... I II 目录...................................................................................................................... I V 第 1 章绪论. (6)
1.1选题的目的和意义 (6)
1.2自动浇花器的诞生背景及国内外发展现状 (6)
1.3毕业设计所采用的研究方法和手段 (7)
第 2 章第基于单片机控制的家庭自动浇花机设计 (9)
2.1定时浇花方案的设计 (9)
2.2智能浇花 (10)
2.3本设计的硬件总体设计 (11)
第 3 章硬件电路的设计 (13)
3.1AT89C51单片机 (13)
3.1.1单片机的基本组成 (15)
3.1.2管脚说明 (16)
3.1.3振荡电路和时钟 (18)
3.1.4AT89C51的中断系统 (19)
3.1.5定时器/计数器 (21)
3.2温湿度传感器 (22)
3.2.1数字温湿度传感器SHT-11 (23)
3.2.2湿度值输出 (24)
3.2.3温度值输出 (24)
3.2.4SHT-11的特性 (24)
3.2.5SHT-11的详细规格 (25)
3.2.6SHT-11的引脚 (26)
3.2.77SHT-11的的内部命令与接口时序 (26)
3.2.8电路连接 (29)
3.3时钟芯片 (29)
3.3.1DS1302时钟芯片的简介 (29)
3.3.2引脚 (30)
3.3.3命令字节 (30)
3.4液晶显示器LCD (34)
3.4.1液晶显示器的分类 (35)
3.4.2AMPIRE 128×64 (35)
3.4.3LCD 128×64引脚功能 (36)
3.4.4KS0108控制器指令功能 (37)
3.4.5应用说明 (39)
3.4.6电路连接 (39)
3.5键盘 (40)
3.6继电器 (41)
3.7电路连接 (42)
3.8总电路连接图 (42)
第 4 章软件系统设计 (43)
4.1系统控制流程图 (43)
4.2系统主控制程序如下: (43)
4.3子程序的流程框图 (48)
第 5 章总结 (52)
致谢 (54)
参考文献 (55)
第 1 章绪论
1.1选题的目的和意义
随着社会生活的进步,人们的生活质量越来越高。
在家里养盆花可以陶冶情操、丰富生活。
同时,盆花通过光合作用可吸收二氧化碳,净化室内空气,在有花木的地方空气中阴离子聚积较多,所以空气也特别清新,而且有许多花木还可吸收空气中的有害气体,因此,养盆花如今被许多的人所喜爱。
盆花浇水量是否能做到适时适量,是养花成败的关键。
但是,在生活中人们总是会有无暇顾及的时候,比如工作太忙或者出差、旅游等。
花草生长问题80%以上是由花儿浇灌问题引起;好不容易种植几个月的花草,因为浇水不及时,长势不好,用来美化家园的花草几乎成了“鸡肋”;不种植了吧,家中没有绿色衬托感觉没有生机;保留吧,花草长得不够旺盛,还影响家庭装饰效果。
虽然目前市面上有卖盆花自动浇水器的,但价格十分的昂贵,并且大多只能设定一个定时浇水的时间,很难做到给盆花适时适量浇水。
也有较经济的盆花缺水报警器,可以提醒人们及时的给盆花浇水。
可是这种报警器只能报警,浇水还是需要人们亲自动手。
当家里无人时,即使报警也无人浇水,就起不到应有的作用了。
因此,我想通过设计一种集盆花土壤湿度检测,自动浇水以及蓄水箱自动供水于一体的盆花自动浇水系统。
让盆花在人们无暇照顾时也能得到及时的浇灌。
1.2自动浇花器的诞生背景及国内外发展现状
微喷系统是近几年利用国内外先进技术组装的新型灌溉设施,主要是利用水流通过低压管道系统以一定速度从特制的喷头喷出,在空气中分散成细小的水滴,着落在花草植物、作物及周围的地面上,从而达到及时补充水分的目的。
该系统具有用水量少、冲击力小的灌溉特性,适用于栽培密度大、植株柔软细嫩的植物。
自动浇花器的诞生是随着人们生活水平的提高和生活节奏的加快而诞生的一种懒人园艺用品。
它把微喷的概念应用于家庭盆花浇灌中,通过相应的改进,达到合理给盆花自动浇水的目的。
早在很多年前,国外就已经开始普及,国内使用的电子类自动浇花器多数从国外进口的,价格昂贵,但质量比较可靠。
不过这并不太适用于国内,目前国内外比较流行的是玻璃制作的自动浇花器。
这种类型的浇花器多数在我国山西和浙江一带加工生产的,价格比较低廉,实用性没有电子类自动浇花器好。
随着国内
居民消费水平和生活质量的提高,居家园艺市场异常火爆,但是由于生活节奏加快,种花容易养花难的问题暴露出来,而养花最重要的问题就是浇水问题,研究表明花草80%以上的死亡由于浇水不及时引起,因此国内商家已经看到了这种需求潜力。
目前这类小居家用品的厂家主要集中在广东,上海,浙江一带。
现在市面上所出售的自动浇花器主要有以下几类:
⑴电子类自动浇花器
电子类自动浇花器又叫时控喷淋装置,系统构成为:主机(或者控制器)、主管(可以是花园管也可以是4/7mm的微喷淋管)、分水接头(3通、4通、5通、6通、分水器)、副管(3/5mm)喷淋管(雾化喷头、旋转喷头、折射雾化喷头等)。
电子类自动浇花器根据电源的不同分为交流电自动浇花器和电池自动浇花器两种。
控制器的一般性能有:电磁阀控制;智能时控电路•微电脑芯片控制;
;最适宜水压0.3-0.6Mpa;待机功率(4VA,浇水时<适用电源为AC220V/50H
Z
12VA);可控制连续作业时间是1分钟至168个小时;可每天自动完成十次以上浇水作业,可每天、隔天、隔多天自动循环进行浇水,手动自动两用;每天计时误差小于正负3秒;电器适应环境温度为-10~50℃;相对湿度<90%RH。
⑵玻璃、陶瓷类自动浇花器
玻璃、陶瓷类自动浇花器又叫自动渗水装置,它由本身材质的物理结构构成,根据器具的物理渗水原理完成自动浇灌,当自动浇水器内部存水,自身形成一定的压力,当遇到干燥的土壤,水就会自上而下的流出,当土壤湿润以后,会形成一个堵塞压力,从而导致水流速度变慢或者停止。
器具工艺不同,效果也不一样,当然也因土壤的疏松情况决定器具内水流的速度。
当前传感器技术与单片机技术发展迅速,其应用逐步由工业、军事等领域向其他领域渗透,已经和我们的日常生活息息相关。
而且智能家居概念也越来越受人们的推崇,因此,微电脑控制的电子类自动浇花系统有很好的发展前景。
1.3毕业设计所采用的研究方法和手段
本次毕业设计是设计一种单片机控制的自动浇水系统,实现自动浇水的自动化系统。
该系统可对土壤的温湿度进行监控,并对作物进行适时、适量的浇水。
其核心是单片机和温湿度传感器以及浇水驱动电路构成的检测控制部分。
主要研究土壤湿度与浇水量之间的关系、浇灌控制技术及设备系统的硬件、软件编程各个部分。
检测部分,单片机选用AT89C51单片机,温湿度传感器选用SHT-11温湿度传感器。
SHT-11采用COMsens专利传感器技术将温度湿度传感器、A/D转换器、数字接口、校准数据存储器、标准I2C总线等电路全部集成在一个芯片内。
土壤温湿度传感器可将检测到的土壤温湿度模拟量放大转换成数字量通过单片机内程序控制精确的将温度与湿度分别显示在LCD显示屏上,同时通过单片机内的中断服务程序判断是否要给花浇水,若需浇水则单片机系统发出浇水信号并经放大驱动设备开启电磁阀进行浇水若不需浇水则进行下一次循环检测。
第 2 章第基于单片机控制的家庭自动浇花机设计
2.1 定时浇花方案的设计
定时定量浇花是每天规定的时间开始浇花,设置浇花时长,比如1分钟,1分钟后停止浇花。
具体硬件:安装了2个三位共阳数码管和1个两位共阳数码管,用以显示时间和浇花时间的长短。
按键控制时间调整和时间设置调整,并有一个按钮根据不同花卉所需水量的不同,设置浇花时间长短,在数码管上显示出来,1302芯片实现时间保持,断电时不影响时间。
这里可假设每天早上7点20分自动给花卉浇水,浇花时间为1分钟,到了早上的7点20分,单片机控制智能浇花器开始浇花,单片机p2.0引脚接继电器,继电器接电磁阀,电磁阀控制水流,到了7点20分,给单片机一个指令,setb02.0,三级管导通,这样继电器线圈有电流经过,对应的常开触点闭合,使得电磁阀线圈得电,此时电磁阀门由闭合变成断开,水流经过,给花卉浇水,1分钟时间到,给单片机一个指令clrp2.0,这样单片机p2.0引脚输出低电平,三极管截止,继电器线圈没有电流经过,常开触点恢复为断开,电磁阀线圈失电,此时电磁阀门闭合,水流停止。
这里的时间是显示在数码管上,通过按键控制,时间可调整,同时浇花的时间也可以通过按键设置,另外浇花时间的长短也可以通过按键调整。
同时加入1302芯片,为了断电时不影响时间正常,防止每次断电后都要重新调整是时间。
图3为定时定量浇花结构图。
图 1
2.2 智能浇花
先通过按键设定湿度,这里选用的是温湿度传感器是SHT-11湿度传感器,SHT-11是一款专门为用户设计自身产品而提供的数字化温湿度探头,其湿度测量量程为1%~99%RH,分辨率为0.5%RH,测量精度为±3.0%RH(典型值);温度测量范围为-25~+60℃,分辨率为0.062 5℃,测量精度为±0.5℃;响应时间典型值为5 s;工作电压范围为4.5~5.5 V。
LTM8901将测量结果直接输出为数字信号,通过“一线式总线”串行传送给单片机,不需要进行模数转换,减少了元件,简单方便。
利用SHT-11温湿度传感器检测到温湿度,传送到单片机进行处理,温湿度显示在LCD上,当湿度低于设定值时,给单片机一个指令,seth p2.0,继电器线圈有电流经过,对应的常开触点闭合,使电磁阀线圈得电,此时电磁阀门由闭合变成断开,进行浇花,当等于或高于设定值时,clr p2.0,继电器线圈失电,对应常开触点断开,电磁阀线圈失电,阀门闭合,水无法流过,停止浇花。
湿度控制浇花结构如图4所示。
图2 温湿度控制浇花结构图
智能浇花的外部结构图如图3所示
图3
2.3本设计采用的方案和优势
由于我们的设计要求是通过测量土壤的温湿度来判断是否给花浇水,所以我们采用智能浇水这种方式。
我采用的是温湿度传感器SHT-11来测土壤的温湿度,用DS1302芯片进行对时间的设置,用LCD对温湿度值和时间进行显示,也加了一个蜂鸣器,SHT-11的两个探针直接插入到土壤中,然后SHT-11把测到的温湿度值直接传给单片机AT89C51,我事先用键盘设定了最适合植物生长的温湿度值,这时单片机就会把真实值和设定值进行比较,如果设定的值高于真实值,那么蜂鸣器就会先报警,然后单片机就会输出一个信号,p2.0就置高电平,这时就会有电流通过,而电磁阀就会打开而驱动水龙头打开从而进行给花浇水,而这种设计的优势就在于能够完全实现自动化,不需要人去管理,还有一个好处就是能够给花浇最适量的水,给好最合适的生成环境。
2.3 本设计的硬件总体设计
图 4 驱动硬件设计框图
图 5 控制器电路图
第 3 章硬件电路的设计
3.1 AT89C51单片机
51系列单片机最早有Intel公司推出,主要有8031系列,8051系列。
后来Atmel公司以8051的内核为基础推出了AT89系列单片机。
其中AT89C51、AT89C52、AT89S51、AT89S52等单片机完全兼容8051系列单片机,所有的指令功能也是一样的。
就是功能做了一系列的扩展,比如说AT89S系列都支持ISP 功能,AT89S52、AT89S8252增加了内部WDT功能,增加了一个定时器等功能。
为了学习简单Atmel也推出了8051指令完全一样的AT89C2051、AT89C4051等单片机,这些单片机可以看成精简型的8051单片机。
比较适合初学者的需要Avr 单片机也是Atmel公司的产品,最早的就是AT90系列单片机,现在很多AT90单片机都转型给了Atmega系列和Attiny系列,Avr单片机最大的特点就是精简指令型单片机,执行速度,据我所知是8位MCU中最快的一种单片机(相同的振荡频率下)。
学习AVR的单片机当然可以直接学习,但是建议还是从51系列起。
PIC单片机是Mirochip公司的产品,它也是一种精简指令型的单片机,指令数量比较少,中档的PIC系列仅仅有35条指令而已,低档的仅有33条指令。
但是如果使用汇编语言编写PIC单片机的程序有一个致命的弱点就是PIC中低端单片机里有一个翻页的概念,编写程序比较麻烦,但是我个人认为PIC还是一个不错的8位MCU。
初学单片机一般是选用51系列的单片机,比如说Itmel公司的8051系列,Atmel的AT89系列,STC公司的51系列等等都可以算是51系列单片机。
这些单片机的指令系统是一样的。
外面出的资料也是最多。
建议选择Atmel的At89系列系列芯片,出的资料最多。
如果你自己要做实验,建议选择AT89S52 AT89S51 AT89S8252等芯片学习,因为这些“S”的芯片全部支持ISP(在线烧录)只要一根下载线就可以了(建议选择AVR的下载线,为了以后能同时下载AVR 的芯片的程序考虑),编译软件可以到上下载。
烧录软件就选双龙的SLISP就可以了。
这样学习的话无需使用昂贵的编程器,只要一根廉价的下载线就可以了。
这类也可以同时进行SPI(同步串行扩展接口),和USART(串行方式通用同步/异步收发器)的学习。
而且学习8051类型片除了资料多以外还有一个好处就是它属于CISC(复杂指令集)结构型单片机。
指令系统比较完全,利用汇编语言写程序比较简单,易懂。
而且它也有keilC51的C编译器。
可以利用C语言来写程序。
当然51类单片机还有很多缺点: 1. 运行速度很慢,(因为是CISC(集中指令)结构,而且芯片为了抗干扰采用了12分频的方法)
2. 所有的I/0口都是准双向口,I/0口的驱动能力弱。
(但是AT89的灌电流比较大,大概有20mA左右)
3. 芯片里面的P0口没有上拉电阻(P1,P2,P3口有上拉电阻)如果要输出高电平或者要定义成输入口,一般要外接电阻上拉。
4. 芯片不能定义成内部复位方式,只能用外部微分电路复位。
5. 芯片内部没有RC振荡,如要芯片正常工作,需要外加振荡源(比如晶振,RC振荡,PLL振荡等)
6. 功耗比较高,抗干扰能力也不是很强。
但是还是建议选择8051类单片机学习,因为这是学习其他8位单片机的基础。
51如果学好了,学习其他单片机上手非常快。
建议从汇编语言开始学起,搞懂所有指令的意义,以及如何运行的。
等熟悉了以后再学C来写程序。
千万别抄写人家一段程序,结果自己没有弄懂直接把程序写芯片里了,然后芯片怎么运行的都不知道。
其他常见单片机如下:
Microchip的PIC系列单片机 Atmel的AVR系列单片机
Freescal的MC系列
Motorola的6800系列
Zilog的Z80系列(这个是比51还要老的单片机)
义隆公司的EM系列
麦肯公司的MDT系列
合泰的HT系列
现代的ABOV系列
意法半导体的ST系列单片机
还有就是ARM系列32位的单片机。
还有比如说NEC LG 三星 philip等公司都做单片机的
对于我这个初学单片机的学生来说,我就选择AT89C51单片机来做本次的设计。
AT89C51单片机
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。
单片机的可擦除只读存储器可以反复擦除100次。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和
输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51是一种高效微控制器,AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
3.1.1单片机的基本组成
AT89C51由一个8位的微处理器,128KB片内数据存储器RAM,21个特殊功能寄存器SFR,4KB片内程序存储器Flash ROM,64KB可寻址片内外统一编址的ROM,64KB可寻址片外的RAM, 4个8位并行I/O接口(P0—P3),一个全双工通用异步串行接口UART,两个16位的定时器/计数器,具有位操作功能的布尔处理机及位寻址功能的五个中断源、两个优先级的中断控制系统以及片内振荡器和时钟产生电路。
其基本组成框图如图6所示。
图6 AT89C51的基本组成
3.1.2 AT89C51主要特性
AT89C51主要特性有:
·与MCS-51 兼容
·4K字节可编程闪烁存储器
·寿命:1000写/擦循环
·数据保留时间:10年
·全静态工作:0Hz-24Hz
·三级程序存储器锁定
·128*8位内部RAM
·32可编程I/O线
·两个16位定时器/计数器
·5个中断源
·可编程串行通道
·低功耗的闲置和掉电模式
·片内振荡器和时钟电路
3.1.2管脚说明
AT89C51的引脚图如图7所示。
各引脚的具体说明如下:VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL 门电流。
当P0口
的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
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编程和校验时接收高八位地址信号和控制信号。
图 7 89c51结构图
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL 门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入口。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如表2-1所示。
同时,P3口为闪烁编程和编程校验接收一些控制信号。
表2-1 P3口的特殊功能
RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该
引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
P SEN:外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,EA将内部锁定为RESET;当EA 端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
3.1.3振荡电路和时钟
在AT89C51芯片内部,有一个振荡电路和时钟发生器,引脚XTAL1和XTAL2之间接入晶体振荡器和电容后构成内部时钟方式。
也可以使用外部振荡器,由外部振荡器产生的信号直接加载到振荡器的输入端,作为CPU的时钟源,称为外部时钟方式。
采用外部时钟方式时,外部振荡器的输出信号接至XTAL1,XTAL2悬空。
两种方式的电路连接如图2-5所示。
大多数的单片机采用内部时钟方式,本次设计亦然。
(a)使用片内振荡器接法(b)使用片外振荡器接法
图8 AT89C51振荡器的连接方式
在AT89C51单片机内部,引脚XTAL2和引脚XTAL1连接着一个高增益反相放大器,XTAL1引脚是反相放大器的输入端,XTAL2引脚是反相放大器的输出端。
芯片内部的时钟发生器是一个二分频触发器,振荡器的输出
f为其输入,输出
osc
为两相的时钟信号(状态时钟信号),频率为振荡器输出信号频率
f的1/2。
状
osc
态时钟经三分频后为低字节地址锁存信号ALE,频率为振荡器输出信号频率
f
osc 的1/6,经六分频后为机器周期信号,频率为
f/12。
1C、2C一般取20~30pF
osc
的陶瓷电容器。
3.1.4AT89C51的中断系统
为了提高系统的工作效率,AT89C51单片机设置了中断系统,采用中断方式与外设进行数据传送。
所谓“中断”,是指单片机在执行某一段程序的过程中,由于某种原因(如异常情况或特殊请求),单片机暂时中止正在执行的程序,而去执行相应的处理程序,待处理结束后,再返回到被打断的程序处,继续执行原程序的过程。
(1)中断系统结构和中断控制
AT89C51有六个固定的可屏蔽中断源,分别是三个片内定时器/计数器溢出中断TF0、TF1和TF2,两个外部中断INT0(P3.2)和INT1(P3.3),一个片内串行口中断TI或RI。
6个中断源有两级中断优先级,可形成中断嵌套。
它们在程序存储器中各有固定的中断入口地址,由此进入相应的中断服务程序。
引起6个中断源的符号、名称及产生的条件如下:
INT0:外部中断0,由P3.2端口线引入,低电平或下降沿引起;
INT1:外部中断1,由P3.3端口线引入,低电平或下降沿引起;
T0:定时器/计数器0中断,由T0记满回零引起;
T1:定时器/计数器1中断,由T1记满回零引起;
TI/RI:串行口I/O中断,串行端口完成一帧字符发送/接收后引起中断;
T2:定时器/计数器2中断,由T2记满回零引起。
在本次设计中采用了定时器/计数器0中断,它的中断控制寄存器包括定时器/计数器0、1控制寄存器TCON和中断允许控制寄存器IE。
①定时器控制寄存器TCON
TCON是定时器/计数器和外部中断两者合用的一个可位寻址的特殊功能寄存器,它的格式如下:
各控制位定义如下:
TF1:定时器/计数器1溢出中断请求标志位。
当定时器/计数器1计数产生溢出时,由内部硬件置位TF1,向CPU响应中断并转向该中断服务程序执行时,由硬件内部自动TF1清0。