历史上的今天
今天是:2025年01月16日(星期四)
2021年01月16日 | 51单片机的引脚介绍
2021-01-16 来源:eefocus
当我们拿到一块单片机芯片时,看到这么多的“大腿”,他们都有干什么用的?现在我们就针对这个问题进行讲解。

引脚功能:
MCS-51是标准的40引脚双列直插式集成电路芯片,引脚分布请参照----单片机引脚图:
l P0.0~P0.7 P0口8位双向口线(在引脚的39~32号端子)。
l P1.0~P1.7 P1口8位双向口线(在引脚的1~8号端子)。
l P2.0~P2.7 P2口8位双向口线(在引脚的21~28号端子)。
l P3.0~P3.7 P2口8位双向口线(在引脚的10~17号端子)。
这4个I/O口具有不完全相同的功能,大家可得学好了,其它书本里虽然有,但写的太深,初学者很难理解,这里都是按我自已的表达方式来写的,相信你也能够理解。
P0口有三个功能:
1、外部扩展存储器时,当做数据总线(如图1中的D0~D7为数据总线接口)
2、外部扩展存储器时,当作地址总线(如图1中的A0~A7为地址总线接口)
3、不扩展时,可做一般的I/O使用,但内部无上拉电阻,作为输入或输出时应在外部接上拉电阻。
P1口只做I/O口使用:其内部有上拉电阻。
P2口有两个功能:
1、扩展外部存储器时,当作地址总线使用
2、做一般I/O口使用,其内部有上拉电阻;
P3口有两个功能:
除了作为I/O使用外(其内部有上拉电阻),还有一些特殊功能,由特殊寄存器来设置,具体功能请参考我们后面的引脚说明。
有内部EPROM的单片机芯片(例如8751),为写入程序需提供专门的编程脉冲和编程电源,这些信号也是由信号引脚的形式提供的,
即:编程脉冲:30脚(ALE/PROG)
编程电压(25V):31脚(EA/Vpp)
接触过工业设备的兄弟可能会看到有些印刷线路板上会有一个电池,这个电池是干什么用的呢?这就是单片机的备用电源,当外接电源下降到下限值时,备用电源就会经第二功能的方式由第9脚(即RST/VPD)引入,以保护内部RAM中的信息不会丢失。
(注:这些引脚的功能应用,除9脚的第二功能外,在“新动力2004版”学习套件中都有应用到。)
在介绍这四个I/O口时提到了一个“上拉电阻”那么上拉电阻又是一个什么东东呢?他起什么作用呢?都说了是电阻那当然就是一个电阻啦,当作为输入时,上拉电阻将其电位拉高,若输入为低电平则可提供电流源;所以如果P0口如果作为输入时,处在高阻抗状态,只有外接一个上拉电阻才能有效。
ALE/PROG地址锁存控制信号:在系统扩展时,ALE用于控制把P0口的输出低8位地址送锁存器锁存起来,以实现低位地址和数据的隔离。(在后面关于扩展的课程中我们就会看到8051扩展 EEPROM电路,在图中ALE与74LS373锁存器的G相连接,当CPU对外部进行存取时,用以锁住地址的低位地址,即P0口输出。ALE有可能是高电平也有可能是低电平,当ALE是高电平时,允许地址锁存信号,当访问外部存储器时,ALE信号负跳变(即由正变负)将P0口上低8位地址信号送入锁存器。当ALE是低电平时,P0口上的内容和锁存器输出一致。关于锁存器的内容,我们稍后也会介绍。
在没有访问外部存储器期间,ALE以1/6振荡周期频率输出(即6分频),当访问外部存储器以1/12振荡周期输出(12分频)。从这里我们可以看到,当系统没有进行扩展时ALE会以1/6振荡周期的固定频率输出,因此可以做为外部时钟,或者外部定时脉冲使用。
PORG为编程脉冲的输入端:在第五课 单片机的内部结构及其组成中,我们已知道,在8051单片机内部有一个4KB或8KB的程序存储器(ROM),ROM的作用就是用来存放用户需要执行的程序的,那么我们是怎样把编写好的程序存入进这个ROM中的呢?实际上是通过编程脉冲输入才能写进去的,这个脉冲的输入端口就是PROG。
PSEN外部程序存储器读选通信号:在读外部ROM时PSEN低电平有效,以实现外部ROM单元的读操作。
1、内部ROM读取时,PSEN不动作;
2、外部ROM读取时,在每个机器周期会动作两次;
3、外部RAM读取时,两个PSEN脉冲被跳过不会输出;
4、外接ROM时,与ROM的OE脚相接。
参见图2—(8051扩展2KB EEPROM电路,在图中PSEN与扩展ROM的OE脚相接)
EA/VPP访问和序存储器控制信号
1、接高电平时:
CPU读取内部程序存储器(ROM)
扩展外部ROM:当读取内部程序存储器超过0FFFH(8051)1FFFH(8052)时自动读取外部ROM。
2、接低电平时:CPU读取外部程序存储器(ROM)。 在前面的学习中我们已知道,8031单片机内部是没有ROM的,那么在应用8031单片机时,这个脚是一直接低电平的。
3、8751烧写内部EPROM时,利用此脚输入21V的烧写电压。
RST复位信号:当输入的信号连续2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作,当复位后程序计数器PC=0000H,即复位后将从程序存储器的0000H单元读取第一条指令码。
XTAL1和XTAL2外接晶振引脚。当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。
VCC:电源+5V输入
VSS:GND接地。
史海拾趣
|
有以下几个问题: 1、有功功率都可以转换为除热能之外的其他什么形式的能,转换为其他形式的能又如何计算,比如热能是I^2R,其他形式的能有没有计算方法。 2、无功功率是不是最终还要回到电源处。… 查看全部问答> |
|
int request_dma(unsigned int dmanr, const char * device_id) 参数dmanr是从0~3、5~7里面的随便挑一个就行了么? 还是需要怎么做来得到啊… 查看全部问答> |
|
共享很多通信好资料! 刚发现一个通信的论坛,内容蛮不错的,加散分喽~ 很多资料啊,都是免费的 无线通信部分: 无线通信基础 http://www.itgoal.net/viewthread.php?tid=6982&extra=page%3D1 天线基本知识及应用 http://www. ...… 查看全部问答> |
|
本人由于毕业设计的需要,目前只有英文资料,哪位大虾有关于Z80的中文资料或相关的文档,小弟不胜感激. 有的话 请发邮箱 lbp213213@sina.com 与我联系… 查看全部问答> |
|
Windows XP + VC 6.0 + WinXP_DDK + DriverStudio 3.2 1·前言 开发windows内核驱动程序是一个非常具有挑战性的工作,你得忍耐调试过程中操作系统 不断蓝屏、不断崩溃的噩梦,所以强烈建议你采用虚拟机做开发平台,这样即使把整个系统都搞蹦了,大不了从新装过虚拟机而已。那么搭建一个完整的 Windows ...… 查看全部问答> |
|
Lm3s8962 Lwip #include .c文件 不足 首先感谢EEWorld 网站提供的LM3S8962的开发板,由于春节放假,板子一直没有研究。现在回到工作岗位上,才开始研究开发板。 申请这块开发板的主要原因是看重LM3S8962使用网络功能不需要外加芯片的好处,一可以节约成本,二可以减少走线,所以就 ...… 查看全部问答> |
|
我手上有LM3S811的评估板,正在用来做我的毕业设计,驱动16*64点阵,想用8个IO口控制154和595的行列扫描实现点阵屏显示16*16的汉字,实现左移,右移,上移,下移等多种滚屏方式,主要就学习GPIO这块,首先实现一个LED的闪烁,再是流水灯等其他外设 ...… 查看全部问答> |
|
这几天一直在看F28035的文档资料以及摸索CCS4的编程。还要考虑数字电源的处理方法。第一次用TI的CPU,第一次用TI的编译器,要掌握它需要花些功夫啊。 关于ADC的处理,经过近来所看的ADC、PWM、CLA等部分的知识,认为选择附件中的 ...… 查看全部问答> |




