51单片机的引脚介绍

发布者:VS821001最新更新时间:2021-01-16 来源: eefocus关键字:51单片机  引脚介绍  电路芯片 手机看文章 扫描二维码
随时随地手机看文章

当我们拿到一块单片机芯片时,看到这么多的“大腿”,他们都有干什么用的?现在我们就针对这个问题进行讲解。

引脚功能:


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接地。


关键字:51单片机  引脚介绍  电路芯片 引用地址:51单片机的引脚介绍

上一篇:单片机在温室智能控制系统中的应用
下一篇:51单片机教程(二):单片机内部定时/计数器

推荐阅读最新更新时间:2024-11-13 18:09

51单片机心形灯实现花样流水编程
心形灯原理图 编译软件:Keil uVision5 (如有需要可点此链接下载:https://download.csdn.net/download/qq_36931762/11343174) 单片机程序下载软件:STC-ISP (如有需要可点此链接下载:https://download.csdn.net/download/qq_36931762/11343157) 程序代码: #include reg51.h #include intrins.h unsigned char code table ={0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f}; void De
[单片机]
<font color='red'>51单片机</font>心形灯实现花样流水编程
51单片机—AT24C1024(带程序解析!)—07
昨天晚上没弄好,明天老哥也要结婚了~shit,上午只是知道很忙,现在没事了~发~~ 我依稀还记得昨天用Keil的时候让人蛋疼~差点让我崩溃~我擦,就是那么一点点,就是编译不通过(这个不就是没事找事啊,本来这几天就心烦意乱了 )~~ 首先今天说的AT24C1024在以前的文章中我有过详细的介绍(那是相当的详细,所以我写这个程序就是东拼西凑的 ),我这里就不说了,我只是重点把源程序上出来,里边有详细解析~~ 要是感兴趣的话,你可以做个LCD显示的数码锁什么的,还有那个什么什么~~(万年历~~程序太多也是可以的 ,EEPROM就是强大~),那是相当的简单的~~只要在源程序的基础上加加就哦了~ 今天我这个程序就是存放我预先设置好
[单片机]
<font color='red'>51单片机</font>—AT24C1024(带程序解析!)—07
12232c液晶显示和8051单片机的接口c语言程序
以下为彭总编写的c语言程序,我用过了!赫赫!!在atmega128中写通讯协议的头四位数字时好像不能分开一位一位的送,而是要把它当作一个16进制的整体移位写入!程序中的comm为写0表示写12232c的指令,dat为1表示写数据。cs,sclk,std分别为片选、时钟、及数据io口,可用sbit指令定义。 /************lcd初始化程序**************/ void init_lcd (void) { wr_lcd (comm,0x30); /*30---基本指令集动作,8位控制接口*/ wr_lcd (comm,0x01); /*清
[单片机]
51单片机(二十一)—— 定时器计数功能
在本文,我们对51单片机定时器的计数功能进行测试,采用定时器0通过方式2产生10KHz的方波,并通过单片机的P1.0口输出。定时器1采用方式1的计数功能,即对外部输入的脉冲进行计数。T1与P3.5引脚复用。实验时,需要用杜邦线将单片机的P1.0引脚,与P3.5引脚连接在一起。T0输出的脉冲又通过P3.5引脚输入给定时器1的计数器。定时器1对脉冲进行计数,设置为5000个脉冲溢出一次。脉冲的周期为0.1ms,即定时器1的溢出周期为500ms,所以LED1以1秒一次的频率闪烁。 定时器0和定时器1的初始化代码如下所示 void init_T0_T1(void) { TMOD= 0x52; //定时器0使用方式2,8位自
[单片机]
解读51单片机LED系统电路设计方案
简介:旋转LED 显示器是一种通过同步控制发光二极位置和点亮状态来实现图文显示的新型显示器,其结构新颖,成本低廉,可视角度达360°。 LED 旋转显示器时基于视觉暂留原理,开发的一种旋转式LED 显示屏。其在具有一定转速地载体上安装16 个LED 发光器件,各LED 发光管等间距排位一条直线,随着旋转速度的加快,在计算机软件精确的时序控制下,不断扫描出预设的文字,图案等。使用一个光耦(U 型槽的红外对管)作为定位传感器,当旋转一周时,挡光板遮挡光源,光敏三极管的集电极输出高电平,当离开挡光板时,集电极再次输出低电平,从而给单片机一个下降沿的跳变型号,产生一个中断,从而更新显示。供电部分,因为整个装置是在不停的高速旋转当中,所
[单片机]
解读<font color='red'>51单片机</font>LED系统<font color='red'>电路</font>设计方案
51单片机STC89C52点亮多个LED(IO口的字节操作)
程序源码 /*-----------------------包含头文件区域-------------------------*/ #include reg52.h //单片机头文件 /*-----------------------主函数区域-----------------------------*/ void main() { P2=0x0F; //P2端口高四位输出低电平,低四位输出高电平,即D5~D8亮,D1~D4灭 while(1); //死循环,主程序停留在此不再往下执行 } 运行结果
[单片机]
<font color='red'>51单片机</font>STC89C52点亮多个LED(IO口的字节操作)
51单片机 8x8LED点阵屏循环显示数字0~9
使用的是普中科技的开发板,一个点阵显示模块是由8x8共64个LED按照共阴或共阳的连接方式组成。 每行的8个LED的负极连接一起,构成8根行线,每列的8个LED的正极连接一起,构成8根列线,就是共阴极接法。 每行的8个LED的正极连接一起,构成8根行线,每列的8个LED的负极连接一起,构成8根列线,就是共阳极接法。 若要点亮8x8点阵屏给每个LED连接到IO口是不够的,所以要使用到74Hc595芯片,只需要连接到AT89C52芯片上3个IO口即可点亮8x8LED点阵屏。 代码 循环数字0~9 #include reg51.h #include intrins.h typedef unsigned char
[单片机]
8051单片机实现PWM的方法
PWM 是“脉冲宽度调制”的意思。 PWM 实际上是在单片机的某个引脚输出一系列的矩形波,其周期一般是固定的;而其高电平、低电平所占用的时间,是可以受控调整的。 高电平、低电平所占用的时间之比,称为占空比,其值为0~1之间。 PWM 的应用很广,简单的说,它可以控制灯光的亮度、可以控制直流电机的转速,甚至还可以输出语音信号。 新型的单片机,往往都含有硬件的 PWM 模块,编写程序就很简单;而老式的MCS-51系列,就不具备这个条件。 其实,在没有 PWM 硬件的单片机上实现 PWM,也并不难,只需一个定时器,令其工作在中断方式即可。 下面以网上的一个题目为例,说明实现 PWM 方法。 题目:AT89C52单片机输出可调 PWM 波
[单片机]
80<font color='red'>51单片机</font>实现PWM的方法
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved