对于单片机的学习,其内部结构及功能可以从引脚功能开始学习。此处MCS-51采用40只引脚双列直插封装。40只引脚按其功能分类,可分为3类:
(1)电源及时钟引脚:Vcc、Vss;XTAL1、XTAL2。
(2)控制引脚:PSEN、EA*、ALE、RESET(RST)
(3)I/O口引脚:P0、P1、P2、P3为4个8位I/O口的外部引脚。
一. 电源及时钟引脚
1.电源引脚:
(1)Vcc(40脚):+5V电源;
(2)Vss(20脚):接地。
2.时钟引脚
(1)XTAL1(19脚):如果采用外接晶体振荡器时,此引脚应接地。使用片内振荡器,应接外部石英晶体和微调电容。使用片外振荡器,该脚接外部时钟振荡器输出的信号。
(2)XTAL2(18脚):片内振荡器反相放大器的输出端。使用片内振荡器,接外部石英晶体和微调电容。使用片外振荡器,悬空。
二.控制引脚
提供控制信号,有的引脚还具有复用功能。
(1) RST/VPD(9脚):复位信号/备用电源的输入端。RST是复位信号输入端,高电平有效。保持两个机器周期的高电平时,就可以完成复位操作。RST引脚的第二功能是VPD,即备用电源的输入端。。
(2) ALE/PROG*(30脚):第一功能ALE为地址锁存允许,可驱动8个LS型TTL负载。PROG*为本引脚的第二功能,为编程脉冲输入端。
CPU访问片外存储器时,ALE输出信号作为锁存低8位地址的控制信号,以便空出P0口去传送片外存储器的读写数据。不访问片外存储器时,ALE端也以振荡频率的1/6固定输出正脉冲,因而ALE信号可以用作对外输出时钟或定时信号。
注意:如果想确定8051/8031芯片的好坏,可用示波器查看ALE端是否有脉冲信号输出,如有脉冲信号输出,则8051/8031基本上是好的。
(3) PSEN* (29脚):程序存储允许输出信号端(片外ROM选通线)。在访问片外程序存储器时,此端定时输出负脉冲作为读片外存储器的选通信号。此引脚接EPROM的OE端。
PSEN端有效,即允许读出EPROM/ROM中的指令码。 PSEN负载-----8个LS型TTL负载。
(4) EA*/VPP (Enable Address/Voltage Pulse of Programing,31脚) EA*为内外程序存储器选择控制端。
EA*=1,访问片内程序存储器,但在PC(程序计数器)值超过0FFFH(对于8051、8751)时,即超出片内程序存储器的4K字节地址范围时,将自动转向执行外部程序存储器内的程序。EA*=0,单片机则只访问外部程序存储器。 VPP为本引脚的第二功能,用于施加编程电压(例如+21V或+12V)。对89C51,加在VPP脚的编程电压为+12V或+5V。
三. I/O口引脚
(1) P0口:双向8位三态I/O口,此口为地址总线(低8位)及数据总线分时复用口,可驱动8个LS型TTL负载。
(2) P1口:8位准双向I/O口,可驱动4个LS型TTL负载。
(3) P2口:8位准双向I/O口,与地址总线(高8位)复用,可驱动4个LS型TTL负载。
(4) P3口:8位准双向I/O口,双功能复用口,可驱动4个LS型TTL负载。
注意:准双向口与双向三态口的差别,当3个准双向I/O口作输入口使用时,要向该口先写“1”。准双向I/O口无高阻的“浮空”状态。