·VCC:电源电压 ·GND:接地
·P0口:P0口是一组8位双向I/0口。P0口即可作地址/数据总线使用,又可以作为通用的I/O口使用。当CPU访问片外存储器时,P0口分时先作低8位地址总线,后作双向数据总线,此时,P0口就不能再作I/O口使用了。在访问期间激活要使用上拉电阻。 ·P1口:Pl 是一个带内部上拉电阻的8准位双向I/O口,P1作为通用的I/O口使用。
·P2 口:P2 是一个带有内部上拉电阻的8 位准双向I/O 口,P2即可作为通用的I/O口使用,也可以作为片外存储器的高8位地址总线,与P0口配合,组成16位片外存储器单元地址。
·P3 口:P3 口是一组带有内部上拉电阻的8 位准双向I/0 口。P3 口除了作为通用的I/O口使用之外,每个引脚还具有第二功能,具体分配如表1
表1 具有第二功能的P3口引脚
·RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。WDT 溢出将使该引脚输出高电平,设置SFR AUXR的DISRT0 位(地址8EH)可打开或关闭该功能。DISRT0位缺省为RESET输出高电平打开状态。
·ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE 仍以时钟振荡频率的1/6 输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。
·PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S51 由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。当访问外部数据存储器,没有两次有效的PSEN信号。
· EA/VPP:外部访问允许。
· XTAL1:振荡器反相放大器及内部时钟发生器的输入端。 3.3.3 AT89C51中断源
AT89C51有5个中断源,它们是两个外中断INT0(P3.2)和INT1(P3.3)、两个片内定时/计数器溢出中断TF0和TF1,一个是片内串行口中断TI或RI,这
几个中断源由TCON和SCON两个特殊功能寄存器进行控制,其中5个中断源的程序入口地址如表2所示:
表2 中断源的服务程序入口地址
3.4 LED数码管
LED显示器有两中工作方式:静态显示方式和动态显示方式。
静态显示的特点是每个数码管必须接一个8位锁存器用来锁存待显示的字型码。送入一次字型码显示自行一直保持,直到送入新字型码为止。这种方法的优点是占用CPU时间少,显示便于监测和控制。缺点是硬件电路比较复杂,成本较高。各数码管在显示过程中持续得到显示信号,与各数码管接口的I/O口是专用的。动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。这样一来,就没有必要每一位数码管配一个锁存器,从而大大地简化了硬件电路。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。各数码管在显示过程中轮流得到显示信号,与各数码管接口的I/O口是共用的。 该设计采用如下所示的数码管,分别显示南北和东西灯的剩余时间。片选部分和数码段显示部分,分别接单片机管脚的P2口和P0口,具体的共阴数码管下见图。其中,A到G为码段控制端口,1,2为片选端口。
南北时间
东西时间
d0d1d2d3d4d5d6d7p10p11d0d1d2d3d4d5d6d7p12p13四、硬件设计
4.1时钟部分电路设计
时钟电路用于产生MCS-51单片机工作时所必须的时钟控制信号。其内部电路
在时钟信号控制下,严格地按时序执行指令进行工作。在执行指令时,CPU首先要到程序存储器中取出需要执行的指令操作码,然后译码,并由时序电路产生一系列控制信号去完成指令所规定操作。
本设计采用12MHz晶振和两个33Pf瓷片电容,他们构成一个稳定的自激振荡器。该电容的大小影响振荡器频率的高低、振荡器的稳定性和起振的快速性。为单片机提供标准时钟。其中两个瓷片电容起微调作用。 如图所示:
RESPACK-8RP1C233pU1X1CRYSTAL18XTAL219XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD139383736353433322122232425262728101112131415161723456789C333p9RSTd0d1d2d3d4d5d6d7p21p22p23p24p25p26293031PSENALEEAp10p11p12p1312345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C514.2复位部分电路设计
复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。
复位电路通常采用上电自动复位和按钮复位两种方式。
该设计采用加电直接复位,复位电容采用10uF,电阻10000欧,为了节省元件,没有采用上电加按键模式。加电瞬间,RES管脚为高电平。通过电阻回路放电,使电压逐渐降为零,从而实现了复位功能。
其连接图如下图所示:
R10
10k
4.3 硬件设计总电路图
RESPACK-8RP1U119XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD13938373635343332212223242526272810111213141516172345678918XTAL29RSTd0d1d2d3d4d5d6d7p21p22p23p24p25p26C110u293031PSENALEEAp10p11p12p1312345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51