基于单片机的自动灌溉控制器的毕业设计 联系客服

发布时间 : 星期五 文章基于单片机的自动灌溉控制器的毕业设计更新完毕开始阅读

第3章 系统硬件电路设计

3.1 AT89C51单片机硬件电路

单片机的全称为微型计算机(Single Chip Microcomputer)。从应用领域来看,单片机主要用于控制,所以又称微控制器(MicroControllerUnit)或嵌入式控制器(Embedded Controller)。单片机是将计算机的基本部件微型化并集成在一块芯片上的微型计算机,其基本组成和工作原理与通用微型计算机是一致的。主要由微处理器(CPU)、存储器、I/O接口三大功能部分通过总线有机连接而成,在外部通过I/O接口配置各种外部设备就构成微机的硬件系统[7]。单片机体积小,成本低,运用灵活,易于产品化;面向控制,能针对性地解决从简单到复杂的各类控制任务;抗干扰能力强,适用范围广。

本系统采用AT89C51单片机作为中央处理器,其主要任务是读取自动灌溉控制器的模式,并在相应模式下进行相应的控制。如用户选择时间控制模式,从键盘输入灌溉的时间显示在显示屏上,启动步进电机,电机正转一圈把自动灌溉的阀门打开,灌溉的时间一到,步进电机反转一圈把阀门关闭。在自动模式下,单片机检测外部有无灌溉信号。若有,则打开阀门,若没有则循环等待。

在本系统中,AT89C51单片机的P0口用于单片机与LCD之间的数据传送,P1.0~ P1.3用于步进电机的驱动接口,P1.4用于LCD显示的位驱,P1.5用于控制对LCD的读写控制信号,P1.6用于控制对LCD的指令是属于写数据还是写指令。P2口用作键盘电路,一共设置16个按键。P3.2口用于键盘中断信号,若有键按下,则P3.2有中断信号送入单片机。P3.3用于外部灌溉信号的输入通道。

AT89C51是一种低功耗/低电压、高性能的八位CMOS单片机,片内有一个4KB的FLASH可编程可擦除只读存储器(FPEROM—Flash ProgrammAble and Erasable Read Only Memory),它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器技术,而且其输出引脚和指令系统都与MSC—51兼容。片内置通用8位中央处理器(CPU)和FLASH存储单元,片内的存储器允许在系统内改编程序或用常规的非易失性存储器编程。因此,AT89C51是一种功能强、灵活性高且价格合理的单片机,可方便的应用于各种控制领域[8]。 3.1.1 主要特性

(1)与MCS-51产品指令系统兼容;

9

(2)4K字节可编程闪烁存储器; (3)寿命:1000写/擦循环; (4)数据保留时间:10年; (5)全静态工作:0Hz-24MHz; (6)三级程序存储器锁定; (7)128*8位内部RAM; (8)32条可编程I/O线; (9)两个16位定时器/计数器; (10)6个中断源; (11)可编程串行通道;

(12)低功耗的闲置和掉电模式; (13)片内振荡器和时钟电路。

另外,AT89C51是用静态逻辑来设计的,其工作频率可下降到零并提供两种软件的省电方式-空闲方式和掉电方式。在空闲方式中,CPU停止工作。在掉电方式中,片内振荡器停止工作,由于时钟被“冻结”,使一切功能都暂停,只保存片内RAM中的内容,直到下次硬件复位为止。 3.1.2 管脚说明

VCC(40):供电电压,其工作电压为5V。 GND(20):接地。

P0端口(P0.0-P0.7):P0口为一个8位漏级开路双向I/O口,每脚可吸收8个TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1端口(P1.0-P1.7):P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4个TTL门电流。P1口管脚写入1后,被内部上拉为高电平,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2端口(P2.0-P2.7):P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取

10

[9]

时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3端口(P3.0-P3.7):P3口管脚是一个带有内部上拉电阻的8位的双向I/O端口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入端时,由于外部下拉为低电平,P3口将输出电流(ILL)。

P3口也可作为AT89C51的一些特殊功能口,如表3.1所示。P3口同时为闪烁编 程和编程校验接收一些控制信号。

表3.1 P3端口引脚兼用功能表表

端口引脚 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 第二功能 RXD(串行输入口) TXD(串行输出口) INT0(外中断0) INT1(外中断1) T0(定时/计数0) T1(定时/计数1) WR(外部数据存储器写选通) RD(外部数据存储器读选通) AT89C51引脚图如图3.1所示。

图3.1 AT89C51引脚图

11