产品选型

单片机地址线 详解51系列单片机引脚及功能

小编 2024-10-12 产品选型 23 0

详解51系列单片机引脚及功能

51系列单片机有各种封装形式,这里以40引脚双列直插DIP形式的封装来进行介绍,如图1.1所示。其中正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。

图1.1 8051双列直插式的引脚配置

有些新型的单片机在引脚数量以及功能上都略有区别,但都是基于51系列单片机内核。这里介绍的内容同样适用于新型的单片机。下面介绍51系列单片机的引脚功能,这些是学习单片机程序设计必须要了解和掌握的基础知识。

❑电源引脚:主要负责单片机的供电,有两根引脚。VCC(Pin40)为正电源端,接5.0V电压;GND(Pin20)为接地端。

❑外接晶振或外部振荡器引脚:主要负责为单片机的运行提供时钟振荡器,主要有两根引脚。其中,XTAL1(Pin19)为时钟XTAL1脚,片内振荡电路的输入端;XTAL2(Pin18)为时钟XTAL2脚,片内振荡电路的输出端。

8051单片机的时钟振荡器有两种工作方式。一种是片内时钟振荡方式,在18和19脚外接石英晶体和振荡电容,振荡电容的值一般取10~30pF。另外一种是外部时钟方式,由外部直接提供时钟源。

❑P0口:即P0.0~P0.7(Pin39~Pin32),输入输出脚,可用于8位并行I/O口或分时复用为地址和数据总线。

P0定义为I/O口时,为准双向I/O口,需外接上拉电阻,在程序中向该端口写入1后,成为高阻抗输入口。P0口作为输出口时,每个引脚可以负载8个TTL。在外扩存储器时,可定义为低8位地址/数据线。

❑P1口:即P1.0~P1.7(Pin1~Pin8),输入输出脚,8位准双向并行I/O口。P1口内部已经具有上拉电阻,为8位准双向I/O口,能负载4个TTL;在Flash编程和校验时,定义为低8位地址线。

❑P2口:即P2.0~P2.7(Pin21~Pin28),输入输出脚,8位准双向并行I/O口。P2口内部已经具有上拉电阻,为8位准双向I/O口,能负载4个TTL;当访问外部存储器时,定义为高8位地址线。

❑P3口:即P3.0~P3.7(Pin10~Pin17),输入输出脚,8位准双向并行I/O口。P3口内部已经具有上拉电阻,为8位准双向I/O口,能负载4个TTL。

P3口每个引脚都具有第二功能。引脚P3.0(RXD)和引脚P3.1(TXD)分别为串行数据的接收和发送端口,用于串行数据传输;引脚P3.2和引脚P3.3为外部中断请求,分别用于

的中断输入;引脚P3.4(T0)和引脚P3.5(T1),分别为定时器/计数器T0和T1的外部计数输入端;引脚P3.6(

)和引脚P3.7(

)用于读写单片机片外RAM存储器,分别是外部数据写选通信号和读选通信号。

❑RST(Pin9):单片机内部CPU的复位信号输入端。在单片机的振荡器启动后,该引脚置两个机器周期以上高电平,便可以实现复位。

(Pin30):地址锁存使能端和编程脉冲输入端。

当访问外部程序存储器时,ALE引脚的负跳变将低8位地址打入锁存;而非访问内部程序存储器时,ALE引脚将有一个1/6振荡频率的正脉冲信号,该信号可以用于外部计数或时钟信号。当访问外部数据存储器(执行MOVX类指令)时,ALE引脚会跳过一个脉冲。另外,对8EH单元的特殊功能寄存器的D0位置1,可禁止ALE输出,只有在执行MOVX或MOVC类指令时,ALE才被激活,仍输出锁存有效。在执行片外程序代码时,该设定禁止ALE位无效。

(Pin29):访问外部程序存储器的读选通信号。

当单片机访问外部程序存储器,读取指令码时,每个机器周期产生2次有效信号,即此脚输出2个负脉冲选通信号;在执行片内程序存储器以及读写外部数据时,不产生

脉冲信号。

(Pin31):

为访问内部或外部程序存储器选择信号。

当8051 CPU访问外部程序存储器时,则

必须保持低电平;当

保持高电平时,则8051 CPU先从片内0000H单元开始,执行内部程序存储器程序;如果外部还有扩展程序存储器,则8051 CPU在执行完内部程序存储器程序后,自动转向执行外部程序存储器中的程序。

跟电师傅学单片机(9):单片机四种寻址方式图文新解

头条号:电工人家,专门请电师傅讲解单片机应用技术,倾力奉献,机会难得,力求做到图文并茂、通俗易懂。欢迎电工电子爱好者关注和阅读,留言讨论,共同学习与提高,分享和普及电知识。

课前一语:每个成功者,都要穿越不为人知的黑暗。强者不是没眼泪,只能是含着眼泪向前跑。虽然泪水和汗水的化学成分相似,但前者只能为我们换来同情,后者却可以为我们赢得成功。

单片机80C51提供了七种寻址方式,前面已经讲了三种,现将余下的四种介绍如下:

四:寄存器间接寻址方式

寄存器间接寻址示意图

单片机指令中的寄存器里面的内容作为操作数的地址,通过地址找到操作数。即操作数是通过寄存器间接得到的,就是要转个弯才能找到操作数。因此称为寄存器间接寻址。指令中的寄存器前面加“@”显著标志。

通过“1”号箱间接找信的地址“2”号箱,找到“2”号箱才能拿到放在里面的信。

通过寄存器“R0”间接找到操作数的地址3AH,找到地址3AH才能找到放在里面操作数65H。

3AH只是个地址,65H才是操作数哦!

例如:

MOV A,@R0;将寄存器R0里面的内容3AH作为一个地址,根据这个地址找到单元中存放的内容65H送到累加器A。

注意:

单片机 寄存器间接寻址只能用以下3种寄存器:R0,R1,DPTR。其它的不具备间接寻址功能。

五:变址寻址方式

变址寻址示意图

基址+变址寻址方式是以DPTR或PC作为基址寄存器(16位寄存器),以累加器A(8位寄存器 )作为变址寄存器,并以两者相加形成的新16位地址作为操作数的地址。指令中的寄存器前面加“@”显著标志。

例 如:

单片机查表指令:查找关键数据

MOVC A,@DPTR+A;把DPTR和A相加作为新的16位地址0302H,根据这个地址得到程序存储器内的内容(操作数)88H送回累加器A中。

MOVC A,@A+PC;以PC作为基址寄存器,以累加器A作为变址寄存器,并以两者相加形成的新16位地址作为操作数的地址。根据这个地址找到操作数送回累加器A。

注意:

MOV指令中加了1个“C”:说明只能到程序存储器中去取数,不能到数据存储器里取数。

六:相对寻址方式

相对寻址示意图

单片机相对寻址和前面5种寻址方式不同,前面5种寻址方式都是找操作数。

相对寻址不是找操作数,不需要是个具体的数据。

是以PC的内容作为基础地址,加上指令中给定的偏移量作为转移地址,它只适用于双字节转移指令。称为单片机相对寻址方式。

例如:

SJMP 03H;

SJMP:跳转,转移。

单片机PC指针下正在指向2003H,本来是一步一步的往下执行。如果想直接跳到2006H处去取指令,就要加上差值03H。

当前PC值与目的PC值的相对差(相对偏移量),现在程序运行的当前地址和将要执行指令的地址之前的差值:

2006H-2003H=03H

将要执行指令的地址:

PC+03H=2003H+03H=2006H

七:位寻址方式

单片机位寻址只有16个单元可以位寻址:从20H~2FH,请看下图:

单片机位寻址地址表

位寻址示意图

在单片机位寻址区内,单片机CPU不仅具有字节寻址能力,而且还可以对16个单元中每一位(一共有128个位)进行寻址。称为位寻址。

例如:

SETB 3DH;将单片机位寻址区的27H单元的D5位:3DH置1。

相关问答

单片机 端口 地址 怎么确定?

单片机端口地址的确定需要根据具体的单片机型号和数据手册来确定。单片机的端口地址是由芯片设计者预先定义的,用于与外部设备进行通信和控制。在数据手册中,...

请问大神 单片机 中的 地址 是什么意思,什么叫位寻址和字寻址?

在单片机中,地址是数据存放的具体存储单元位置。一般用16进制(或二进制、8进制)数来表示(下同)。位地址则是一个二进制位存放的具体物理单元位置,每一个二...

51 单片机 地址线 和存储容量?

1、存储器分为程序存储器(ROM)和数据存储器(RAM),两种又都可以分为片内和片外,片外即需要自己在单片机外部扩展。2、8051单片机的片内程序存储器有4K,片内数...

单片机 片内和片外 地址 范围?

是哪个单片机?如果是51系列,两个指令有分别,MOV是片内,MOVX是片外是哪个单片机?如果是51系列,两个指令有分别,MOV是片内,MOVX是片外

51 单片机地址线 多少根?

51单片机的地址线是16根,高8位在P2口,低8位在P0口。P0口是地址总线和数据总线复用端口,在单片机输出地址时会同时输1个ALE信号,它的上升沿会把P0口的低8位地...

单片机 的每一个引脚是不是都有一个与它对应的 地址 呢?

1.是的,每一个单片机的引脚都有一个与之对应的地址。2.这是因为单片机是一种集成电路,其中的每一个引脚都有特定的功能和作用。为了能够对引脚进行控制和访...

单片机 4端口分别是哪四个?

以8051单片机为例:8051单片机的4个I/O口在结构上是基本相同的,但又各具特点。这四个端口都是8位双向口,每个端口都包括一个锁存器、一个输出驱动器...以8051...

单片机地址 什么0000H之类的H是什么意思?

H是十六进制的标识的意思,地址一般采用十六进制的表达方式H是十六进制的标识的意思,地址一般采用十六进制的表达方式

单片机 的ROM的容量为4KB.这里的是4KB等于多少bit?请问:地...

[最佳回答]每个地址含有16个二进制位,不是的.每个地址含有8个二进制位.单片机的数据线,是8条,所以每个地址只有8个二进制位.单片机的地址线,是16条,所以共有6...

51 单片机 有几条线可以位寻址?

字节地址:00H~7FH位地址:00H~7FH特殊功能寄存器地址:80H~7FH(离散分布有21个)字节地址:00H~7FH位地址:00H~7FH特殊功能寄存器地址:80H~...

猜你喜欢