AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O 口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路[3]。另外,AT89S52可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
1)主要特性
•8k字节Flash
•看门狗定时器
•2个数据指针
•一个6向量2级中断结构
•2种软件可选择节电模式
•256字节RAM
•32可编程I/O线
•三个16位定时器/计数器
•全双工串行口
•片内晶振及时钟电路
2)部分管脚说明
单片机引脚图如图3.1所示。
图3.1 AT89S52引脚图
在本系统中,功能相对较少,32个I/O都作为普通I/O来使用。无需特别注意的端口不做过多的说明,下面主要介绍需要注意的几个端口。
P0 口:P0在输出地址/数据信息和作为一般I/O口输出数据时,其输出驱动 电路的工作状态是有差别的。P0口做地址/数据总线口使用时,两个FET工作于推挽方式,不必外加提拉电阻。而作为一般I/O口使用时,由于上拉FET截止,下拉FET处于开漏状态,故需外接上拉电阻[4]。
P1,P2,P3口均作为普通I/O口使用,且他们内部都具有上拉电阻,因此无需在外部电路做任何处理,直接接到相应接口即可。
RST: 单片机复位信号,高电平有效。若RST引脚上连续作用两个机器周期以上的高电平,则单片机复位。
:地址锁存控制信号,输出信号,(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。ALE 以晶振751分之一的振荡器频率稳定输出方波,可用于对外输出时钟或用于定时,在EPROM编程期间用作输入编程脉冲( )[5]。ALE可以驱动8个LSTTL负载。本设计中悬空。
:外部程序存储器选通信号( )是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时, 在每个机器周期被激活两次,而在访问外部数据存储器时, 将不被激活。本设计中悬空。
EA/VPP:访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在Flash编程期间,EA也接收12伏VPP电压。本设计中接VCC。
XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:振荡器反相放大器的输出端。
3)振荡器电路
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为 片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 振荡电路如图3.2所示。
图3.2 振荡电路
4)复位电路
复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误是系统处于死锁状态时,为摆脱困境,也需要按复位键以重新启动。
RST引脚是单片机复位信号的输入端,复位信号是高电平有效,其有效时间应持续24个振荡周期(即2个机器周期)以上,若使用频率为12MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作。复位操作有上电自动复位和按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的。按键电平复位是通过使复位端经电阻与VCC电源接通而实现的。在本设计中采用了按键电平复位方式,其复位电路图如图3.3所示。 AT89S52单片机的家庭智能浇花器设计+源程序(4):http://www.751com.cn/zidonghua/lunwen_2625.html