台州学院毕业设计(论文)
ALE/PROG: 地址锁存使能输出/编程脉冲输入端。在扩展系统时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低8位地址和数据的隔离,P0口作为数据地址复用口线。当访问单片机外部程序或数据存储器或外接I/O口时,ALE输出脉冲的下降沿用低8位地址的锁存信号;即使不访问单片机外部程序或数据存储器或外接I/O口,ALE端仍以晶振频率的1/6输出脉冲信号,因此可以作为外部时钟或外部定时信号使用。但应注意,此时不能访问单片机外部程序、数据存储器或外设I/O接口。
PSEN: 片外程序存储器读选通信号。在CPU向片外程序存储器读取指令和常数
时,每个机器周期PSEN两次低电平有效。但在此期间,每当访问外部数据存储器或I/O接口时无效出现。
EA/Vpp: 访问程序存储器控制信号/编程电源输入端。当EA端输入高电平时,
单片机访问片内的程序存储器,在低4KB地址时,将自动转向执行外部程序存储器的程序。当EA输入低电平时,CPU仅访问片外程序存储器。在对8751EPROM编程时,此引脚接+21V的编程电压VPP。
RST/Vpd: 复位/掉电保护信号输入端。单片机上电后,只要在该引脚上输入24个振荡周期2个机器周期0宽度以上的高电平就会使单片机复位;若在RST与Vcc之间接一个10μF的电容,则可实现单片机上电自动复位。RST/Vpd具有复位功能,在主电源Vcc掉电期间,该引脚可接上+5V的备用电源。当Vcc掉到低于规定的电平,而Vpd在其规定的电压范围内时,+5V就向片内RAM 提供备用电源,以保持片内RAM中的数据不丢失,复位后能继续正常运行。
(4)输入/输出(I/O)引脚P0、P1、P2、P3(共32根)
P0.0~P0.7: P0口是一个8位双向I/O端口。在访问片外存储器时,它分时提供低8位地址和作8位双向数据总线。在EPROM编程时,从P0口输入指令字节;在验证程序时,则输出指令字节(验证时要外接上拉电阻)。P0口能一吸收电流的方式驱动8个LSTTL负载。
P1.0~P1.7: P1口是8位准双向I/O端口。在EPROM编程和程序验证时,它输入低8位址。P1口能驱动4个LSTTL负载。
P2.0~P2.7: P2口是8位准双向I/O端口。在CPU访问外部存储器时,它输出高8位地址。在对EPROM编程和程序验证时,它输出高8位地址。P2口可驱动4个
6
台州学院毕业设计(论文)
LSTTL负载。
P3.0~P3.7: P3口是8位准双I/O端口。它是一个复用功能口。作为第一功能使用时,为普通I/O口,其功能和操作方法与P1口相同。作为第二功能使用时,各引脚的定义如表3-1所示。P3口的每一引脚均可独立定义第一功能的输入输出或第二功能。P3口能驱动4个LSTTL负载。
表3-1 各口线的第二功能定义
口线 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 引脚 10 11 12 13 14 15 16 17 第二功能 RXD(串行输入口) TXD(串行输出口) INT0(外部中断0) INT1(外部中断1) T0(定时器0外部输入) T1(定时器1外部输入) WR(外部数据存储器写脉冲) RD(外部数据存储器读脉冲) 3.3 系统扩展
89S52具有很强的扩展功能,允许扩展各种外围电路以补充片内资源不足,适应特定应用的需要,扩展内容包括数据存储器、程序存储器、I/O接口等扩展结构如图3-3所示。+
89S52 数据存储器 程序存储器 I/O接口 图3-3 89S52系统扩展结构图
3.3.1 I/O接口的扩展
7
台州学院毕业设计(论文)
由于采集的数据量较多,因此CPU的I/O口线不够用,所以使用8255A来扩展I/O口,以满足系统的要求。
8255A是INTEL公司生产的通用可编程并行I/O接口芯片。89S52和8255A相连可为外设提供三个8位I/O端口,允许采用同步、异步和中断方式传送I/O数据。 3.3.2 存储功能扩展
由于需要保存一定的数据,而89S52片内没有程序存储功能,因此,EA管脚总是接低电平。根据保存的数据量需要,选用了EPROM 2764为外扩的数据存储器。
如图3-4所示,74LS373是带三态缓冲输出的8D锁存器,由于单片机的三总线结构中,数据线与地址线的低8位共用P0口,因此必须用地址锁存器将地址信号和数据信号区分开。74LS373的锁存控制端直接与单片机的锁存控制信号ALE相连,在ALE的下降沿锁存低8位地址。其中,D0~D7为数据输入端;Q0~Q7为数据输出端;OE为三态允许控制端(低电平有效);LE为锁存允许端。
图3-4 74LS373 引脚
该片如何工作由功能表3-2决定,表中L为低电平、H为高电平、Z为高阻抗(相当开路)X为任意电平,一般将OE接低电平,LE接ALE就能正常工作。
表3-2 74LS373功能表
OE LE H H L L X Dn H L L H X Qn H L L H Z L L L L H 紫外线擦除电可编程只读存储器EPROM是国内用得较多的程序存储器。EPROM芯片上有一个玻璃窗口,在紫外线照射下,存储器中的各位信息均变1,即处于擦除状
8
台州学院毕业设计(论文)
态。擦除干净的EPROM可以通过编程器将应用程序固化到芯片中。本次设计所选用的是2764 EPROM。
(1)2764的概述
这是一种可以擦去重写的只读存储器。通常用紫外线对其窗口进行照射,即可把它所存储的内容擦去。之后,又可以对其重新进行编程,写入新的内容。一旦写入,其存储的内容可以长期(几十年)地保存,即使去掉电源电压,也不会影响它所存储的内容。图2-11为通用的EPROM 2764的引脚图,它的容量为8 K×8bit。8 K表示有8×1024个存储单元,8位表示每个单元存储数据的宽度是8位。前者确定了地址线的位数是12位(A0~A12),后者确定了数据线的位数是8位(D0~D7)。目前,除了串行存储器之外,一般情况下,使用的都是8位数据存储器。单一+5 V供电,工作电流为75mA,维持电流为35mA,读出时间最大为250 ns,DIP28封装。
2764—8K EPROM
Vpp A12 A7 A6 A5 A4 A3 A2 A1 A0 D0 D1 D2 GND Vcc PGM N.C A8 A9 A11 OE A10 CE D7 D6 D5 D4 D3
2764 图3-5 2764引脚图
(2)引脚功能
其中,A0~A12为地址线;D0~D7为数据线;CE 为片选线;OE是读线;PGM是编程输入;Vcc为编程电源。
除了12条地址线和8条数据线之外,CE 为片选线,低电平有效。也就是说,只有当CE为低电平时,2764才被选中,否则,2764不工作。
(3)EPROM 2764和锁存器74LS373与89S52组成最小系统
9
台州学院毕业设计(论文)
89S52单片机扩展一片2764程序存储器电路如图3-6所示。
① 地址线。单片机扩展片外存储器时,地址是由P0和P2口提供的。图3-6中,2764的13条地址线(A0~A12)中,低8位A0~A7通过锁存器74LS373与P0口连接,高4位A8~A12直接与P2口的P2.0~P2.3连接,P2口本身有锁存功能。注意,锁存器的锁存使能端LE必须和单片机的ALE管脚相连。
图3-6 89S52扩展2764 EPROM硬件接线图
② 数据线。2764的8位数据线直接与单片机的P0口相连。因此,P0口是一个分时复用的地址/数据线。
③ 控制线。CPU执行2764中存放的程序指令时,取指阶段就是对2764行读操作。注意,CPU对EPROM只能进行读操作,不能进行写操作。CPU对2764的读操作控制都是通过控制线实现的。2764控制线的连接有以下几条:
CE:直接P2.5。
OE:接89S52的读选通信号端。在访问片外程序存储器时,只要端出现负脉冲,
即可从2764中读出程序。
3.4 输入模块
10