51单片机引脚详解,如何控制51单片机的引脚?

对于51单片机大家都不陌生,电子类专业的学生,在大学期间都学习过51单片机,再加上单片机易操作、资料多,所以非常受欢迎。51单片机有40个引脚,常用的封装为DIP-40,即所谓的双列直插引脚。

1单片机引脚详解,如何控制51单片机的引脚?"

51单片机的IO是准双向IO,不需要设置方向寄存器。单片机的IO口有输入和输出两种状态,操作也非常简单,引脚除了基本的GPIO外,还具有功能复用引脚。

如何将51单片机的引脚用作输出

将单片机的引脚输出高低电平时可以直接操作,如将单片机的P1.1输出高电平,P1.2输出低电平,可以进行如下操作:1111 1001 0010

sbit Out1=P1^1;

sbit Out2=P1^2;

Out1 = 1;

Out2 = 0;

通过以上操作即可实现相关的操作。除此之外,还可以通过P1口直接进行操作,如下

P1 |= 0X02;

上面的写法是只改变P1.1和P1.2而不改变其他端口的值。

如何将51单片机的引脚用作输入

将P1.0作为按键输入端口,P1.7作为输出端口用于控制LED的亮灭。当检测到按键按下时点亮LED,否则LED处于熄灭状态。电路 图如下所示。

1单片机引脚详解,如何控制51单片机的引脚?"

根据以上需求,实现代码如下:

1单片机引脚详解,如何控制51单片机的引脚?"

对于其他的复用功能,如AD采样端口、UART通信端口等,需要设置相关的寄存器。建议先把普通GPIO口使用熟悉后,再去操作其他功能。

以上就是这个问题的回答,感谢留言、评论、转发。更多精彩内容请关注本号:玩转嵌入式。感谢大家。

1单片机引脚详解,如何控制51单片机的引脚?"

8051单片机有多少个接口?

8051一般有40个接口,这里拿我们国产的具有8051核心的芯片STC89C52RC来介绍一下其接口情况。

一、芯片简介

TC89C52RC芯片是宏晶科技公司生产的STC89系列单片机中的一种。它是51单片机的派生产品,在指令系统、硬件结构和片内资源上与标准51单片机完全兼容;STC89系列单片机具有高速度、低功耗、在系统编程(ISP)、在应用编程(IAP)等优异功能,大大提高了51单片机的功能,性价比极高。封装有直插式和贴片式。

1单片机引脚详解,如何控制51单片机的引脚?"

二、芯片的引脚数量及功能

STC89C52RC芯片共有40个引脚。电源引脚是Vcc和Vss,Vcc是单片机的40脚,接电源+5V,Vss是单片机的20脚,接地端。外接晶体引脚XTAL1和XTAL2分别是单片机的18和19脚,是振荡电路反相放大器的输入端和输出端,分别接在外部晶体和微调电容的两端。控制信号引脚RST、PSEN、ALE/PROG、EA/Vpp,它们分别是单片机的9脚、29脚、30脚以及31脚,RST是单片机的复位信号输入端,当输入高电平时生效,PSEN是程序存储允许输出信号端口,决定是否读取外部ROM。ALE是单片机的地址锁存允许信号端,可以锁存P0口送出的低八位地址,负载能力强,单片机写入固化程序时,作为编程脉冲输入端使用。EA是允许访问外部 ROM输入端,当输入高电平时,控制系统执行内部程序存储器中的程序,当输入低电平时,控制系统执行外部程序存储器中的程序,VPP是固化编程电压输入端,用于是否选用12v编程。输入/输出端口P0~P3中P0口占据单片机的32到39脚,P1口占据单片机的1脚到9脚,P2口占据单片机的10脚到20脚,P3口占据单片机的21脚到28脚。P0端口是漏极开路的,内部没有上拉电阻,平时应用时加上拉电阻,P1~P3端口内部都含有上拉电阻,P2和P3脚具有第二功能。P0~P3口4个锁存器同RAM一起编址,就能把I/O口当作SFR来寻址,而可编程的全双工串(UART),利用单片机的RXD和TXD来完成和外界的串行通讯。

1单片机引脚详解,如何控制51单片机的引脚?"

P0~P3引脚功能详细介绍如下表所示

1单片机引脚详解,如何控制51单片机的引脚?"

大部分51单片机串口都具有复用功能,所以在了解了P0~P3串口的大部分功能后,需要再对P1~P3的重要第二功能进行学习和掌握。部分引脚的第二功能表如下表所示。

1单片机引脚详解,如何控制51单片机的引脚?"

三、芯片的组成及特性

一个单片机芯片主要由中央处理器、程序/数据存储器等部分构成,具体组成及功能特性如下表所示。

1单片机引脚详解,如何控制51单片机的引脚?"

四、单片机最小系统

一个系统的灵魂莫过于控制系统能够正常工作,而对于最小系统的电路设计是第一步,也是非常重要的一环。最小系统电路主要包括复位电路晶振电路。电路完成后可以用USB下载工具进行程序下载,如果能烧录进去说明最小系统没有问题。最小系统电路图如下图所示。

1单片机引脚详解,如何控制51单片机的引脚?"

复位电路

复位有两种方式,一种是通过上电瞬间自动复位,另一种是通过人为按下按键进行手动复位。上电自动复位是在加电瞬间通过充电来完成的;按键复位是当按键按下时,让单片机进行复位。一般是在系统上电运行一段时间后,需要复位时,采用手动复位。当RST接口输入了两个机器周期的高电平,就能完成复位操作。下图采用两种复位方式相结合的复位电路,电阻选择1k的色环电阻,电容的容值选择10uf电路图如下图所示。

1单片机引脚详解,如何控制51单片机的引脚?"

晶振电路

51单片机芯片内部有一个用来构建振荡器的高增益反相放大器。XTAL1就是这个反相放大器的输入端,XTAL2就是它的输出端,输入输出端中间连接石英晶体和两个电容。这样在外部完成自激振荡器的搭建,而且振荡器十分稳定。电容C1和C2取22pf,电容能够稳定频率对振荡频率有微调作用,在应用时需要定时,选用适当的晶振频率便于计算,本次设计晶振频率选择11.0592MHZ。检查晶振电路是否正常工作,可以用示波器测量XTAL2端口有没有脉冲信号输出。晶振电路图如下图所示。

1单片机引脚详解,如何控制51单片机的引脚?"

零是起源写于20180725

80C51单片机引脚图及引脚功能介绍?

本文着手从集成电路角度去认识单片机,主要介绍了单片机的引脚图及引脚功能,以及单片机简易编程。接下来创客学院从集成电路角度认识单片机首先,先看下80C51单片机的功能结构框图。80C51单片机属于MCS-51系列单片机,采用40引脚双列直插式DIP(Dual In Line Package),内有128个RAM单元及4K的ROM。80C51单片机的功能结构框图下面介绍一下单片机的引脚图及引脚功能(如下图所示),引脚的具体功能将在之后详细介绍。单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。1. 电源:⑴ VCC -芯片电源,接+5V;⑵ VSS - 接地端;2. 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。3. 控制线:控制线共有4根,⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲① ALE功能:用来锁存P0口送出的低8位地址② PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。⑵ PSEN:外ROM读选通信号。⑶ RST/VPD:复位/备用电源。① RST(Reset)功能:复位信号输入端。② VPD功能:在Vcc掉电情况下,接备用电源。⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。① EA功能:内外ROM选择端。② Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。4. I/O线80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。拿到一块芯片,想要使用它,首先必须要知道怎样连线,我们用的一块称之为89C51的芯片,下面我们就看一下如何给它连线。1、电源:这当然是必不可少的了。单片机使用的是5V电源,其中正极接40管脚,负极(地)接20管脚。2、振荡电路:单片机是一种时序电路,必须供给脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。只要买来晶体振荡器,电容,连上就能了,按图1接上即可。3、复位管脚:按图1中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。4、EA管脚:EA管脚接到正电源端。 至此,一个单片机就接好,通上电,单片机就开始工作了。我们的第一个任务是要用单片机点亮一只发光二极管LED,显然,这个LED必须要和单片机的某个管脚相连,不然单片机就没法控制它了,那么和哪个管脚相连呢?单片机上除了刚才用掉的5个管脚,还有35个,我们将这个LED和1脚相连。(见图1,其中R1是限流电阻)按照这个图的接法,当1脚是高电平时,LED不亮,只有1脚是低电平时,LED才发亮。因此要1脚我们要能够控制,也就是说,我们要能够让1管脚按要求变为高或低电平。即然我们要控制1脚,就得给它起个名字,总不能就叫它一脚吧?叫它什么名字呢?设计51芯片的INTEL公司已经起好了,就叫它P1.0,这是规定,不能由我们来更改。单片机简易编程名字有了,我们又怎样让它变'高'或变'低'呢?叫人做事,说一声就能,这叫发布命令,要计算机做事,也得要向计算机发命令,计算机能听得懂的命令称之为计算机的指令。让一个管脚输出高电平的指令是SETB,让一个管脚输出低电平的指令是CLR。因此,我们要P1.0输出高电平,只要写SETB P1.0,要P1.0输出低电平,只要写CLR P1.0就能了。现在我们已经有办法让计算机去将P10输出高或低电平了,但是我们怎样才能计算机执行这条指令呢?总不能也对计算机也说一声了事吧。要解决这个问题,还得有几步要走。第一,计算机看不懂SETBCLR之类的指令,我们得把指令翻译成计算机能懂的方式,再让计算机去读。计算机能懂什么呢?它只懂一样东西——数字。因此我们得把SETB P1.0变为(D2H,90H ),把CLR P1.0变为 (C2H,90H ),至于为什么是这两个数字,这也是由51芯片的设计者--INTEL规定的,我们不去研究。第二步,在得到这两个数字后,怎样让这两个数字进入单片机的内部呢?这要借助于一个硬件工具"编程器"。如果你还不知道是什么是编程器,我来介绍一下,就是把你在电脑上写出来来的代码用汇编器等编译器生成的一个目标烧写到单片机的eprom里面去的工具,80c51这种类型的单片机编程是一件很麻烦的事情,必要要先装到编程器上编程后才能在设备上使用,而目前最新的AT89s51或者STC89C51单片机能支持在线编程(isp)功能,不用拔出来利用简单的电路就可以实现把代码写入单片机内部。我们将编程器与电脑连好,运行编程器的软件,然后在编缉区内写入(D2H,90H)见图2,写入……好,拿下片子,把片子插入做好的电路板,接通电源……什么?灯不亮?这就对了,因为我们写进去的指令就是让P10输出高电平,灯当然不亮,要是亮就错了。现在我们再拨下这块芯片,重新放回到编程器上,将编缉区的内容改为(C2H,90H),也就是CLR P1.0,写片,拿下片子,把片子插进电路板,接电,好,灯亮了。因为我们写入的()就是让P10输出低电平的指令。这样我们看到,硬件电路的连线没有做任何改变,只要改变写入单片机中的内容,就能改变电路的输出效果。

"

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 xxx@163.com 举报,一经查实,本站将立刻删除。

发表评论

登录后才能评论