51系列单片机
89C51/89S51均采用40Pin 封装的双列直接DIP结构。在它们40 个引脚配置中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位,共32个I/O口,P3口线与第2功能复用。
现在我们对这些引脚的功能加以说明:
Pin40:正电源脚,工作时,接+5V电源。
Pin20:负电源脚,工作时,接地。
Pin19:时钟XTAL1 脚,片内振荡电路的输入端。
Pin18:时钟XTAL2 脚,片内振荡电路的输出端。
8051的时钟有两种方式,一种是片内时钟振荡方式,但需在18和19脚外接石英晶体(2~12MHz)和振荡电容,振荡电容的值一般取10pF~30pF。另外一种是外部时钟方式,即将XTAL2悬空,外部时钟信号从XTAL1脚输入。
Pin39-Pin32 为P0.0-P0.7输入输出(I/O)引脚。
Pin1-Pin8为P1.0-P1.7输入输出引脚。
Pin21-Pin28 为P2.0-P2.7输入输出引脚。
Pin10-Pin17 为P3.0-P3.7输入输出脚。
Pin9:RESET/Vpd复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。
8051 的复位方式可以是自动复位,也可以是手动复位,此外,RESET/Vpd还是复用脚,Vcc掉电期间,此脚可接上备用电源,以保证单片机内部RAM 的数据不丢失。
Pin30:ALE/PROG当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一个1/6 时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。如果单片机是EPROM,在编程其间,PROG将用于输入编程脉冲。
Pin29:PROG当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。
Pin31:EA/Vpp程序存储器的内外部选通线,8051和8751 单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB 时,读取内部程序存储器指令数据,而超过4kB 地址则读取外部指令数据。如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。
关键字:单片机 MCS-51 单片机引脚
引用地址:
单片机学习之四:MCS-51单片机引脚说明
推荐阅读最新更新时间:2024-03-16 15:09
单片机逻辑电路与逻辑运算
在数字电路,我们经常会遇到逻辑电路,而在 C 语言中,我们则经常用到逻辑运算。二者在原理上是相互关联的,我们在这里就先简单介绍一下,随着学习的深入,再慢慢加深理解。 首先,在“逻辑”这个概念范畴内,存在真和假这两个逻辑值,而将其对应到数字电路或 C 语言中,就变成了“非 0 值”和“0 值”这两个值,即逻辑上的“假”就是数字电路或C 语言中的“0”这个值,而逻辑“真”就是其它一切“非 0 值”。 然后,我们来具体分析一下几个主要的逻辑运算符。我们假定有 2 个字节变量:A 和 B,二者进行某种逻辑运算后的结果为 F。 以下逻辑运算符都是按照变量整体值进行运算的,通常就叫做逻辑运算符: 逻辑运算符 说明 && 逻辑与 F =
[单片机]
单片机系统总线及总线构造
对于没有内部ROM的单片机或者当程序较长、片内ROM容量不够时,用户必须在单片机外部扩展程序存储器。MCS-51单片机片外有16条地址线,即P0口和P2口,因此最大寻址范围为64 KB(0000H~FFFFH)。 MCS-51系列单片机片外引脚可以构成如图所示的三总线结构: 地址总线(AB) 数据总线(DB) 控制总线(CB) 所有外部芯片都通过这三组总线进行扩展。
[单片机]
基于51单片机的电子时钟(数码管显示)
此次对于数码管进行一个简单的应用,同时可以设计一个电子小时钟,增加趣味性。 首先我们先进行原理图的讲解,这里我们直接使用的开发板,其原理连接图如下: 其中D(0~1)是连接在单片机的P0口上的。 从图中,我们可以看到,第一个74HC573是来控制8个数码管的位选的,就是说我要选种哪个数码管,这里的WE是低电平有效,比如说我想选中最后一个数码管,那么这里我就要将0x7f送到相应的I/O口。第二个74HC573是来控制数码管显示什么的这里0~9的16进制码如下: 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; 要想完成电子时钟,我们先要显示一个数值, 这里
[单片机]
51单片机学习第二天
(1)数字电路中只有两种电平: 高电平和低电平 高电平:5V或者3.3,取决于单片机电源。 低电平:0V (2)RS232电平:计算机串口的电平 高电平:-12V 低电平:+12V 由上面的两个可知,当我们使用单片机跟电脑通信的时候,需要通过各种元器件将单片机的电平转换成计算机可识别的电平才能跟电脑进行通信。 二、进制 二进制 十六进制 三、二进制逻辑运算 四、8051的引脚封装 五、单片机工作的基本时序,一共四种 (1)振荡周期:也称时钟周期,是指为单片机提供时针脉冲信号的振荡源的周期。 (2)状态周期:每个状态周期为时针周期的2倍,是振荡周期经二分频后得到的。 (3)机器周期:一个机器周期包含6个状态周期
[单片机]
AT89S51单片机的内部时钟电路设计
时钟电路用于产生AT89S51单片机工作时所必需的控制信号。AT89S51单片机的内部电路正是在时钟信号的控制下,严格地按时序执行指令进行工作。 在执行指令时,CPU首先到程序存储器中取出需要执行的指令操作码,然后译码,并由时序电路产生一系列控制信号完成指令所规定的操作。CPU发出的时序信号有两类,一类用于对片内各个功能部件的控制,用户无需了解;另一类用于对片外存储器或I/O口的控制,这部分时序对于分析、设计硬件接口电路至关重要,这也是单片机应用系统设计者普遍关心和重视的问题。 时钟电路设计 AT89S51单片机各功能部件的运行都以时钟控制信号为基准,有条不紊、一拍一拍地工作。 因此,时钟频率直接影响单片机的速度,时钟
[单片机]
MCS-51逻辑运算及移位指令
逻辑运算和移位指令共有25条,有与、或、异或、求反、左右移位、清0等逻辑操作,有直接、寄存器和寄存器间址等寻址方式。这类指令一般不影响程序状态字(PSW)标志。 . 循环移位指令(4条) 这4条指令的作用是将累加器中的内容循环左或右移一位,后两条指令是连同进位位CY一起移位。 RL A ;累加器A中的内容左移一位 RR A ;累加器A中的内容右移一位 RLC A ;累加器A中的内容连同进位位CY左移一位 RRC A ;累加器A中的内容连同进位位CY右移一位 . 累加器半字节交换指令(1条) 这条指令是将累加器中的内容高低半字节互换,这在上一节中内容已有介
[单片机]
单片机学习札记之7 STC15W系列的ADC配置
ADC了,STC151K16PWM的ADC是1个10位的,有8个通道,我偶们这个小时钟,只用到了三路AD,分别是P1.5,P1.6,P1.7,其中,P1.5引脚是测电池电压的,P1.6是测温度的,P1.7是测光线强弱的。我们拿ADC5来举例说明下,ADC的配置步骤。 在使用ADC之前,首先第一步要配置IO口为高阻输入,也就是电流既不能流入也不能流出,配置如下: 第二是对ADC进行初始化,设置模拟口位 因为我们的要求不高,进行测试的时候,ADC转换设置540个时钟就可以了,也就是完成一次ADC转换,需要540个时钟的时间才可以。 我们是在用中断的方式获得ADC的结果,并保存到temp里。 但是我们读取到的
[单片机]
51单片机232多机通信
自己写的简单的程序,实在是很简单,不过我可是菜鸟,为了记下自己的点点进步,所以贴到博客上。 具体实现的功能就是主机发送命令,相应的从机给主机回送数据(数字),主机通过数码管显示。 通信协议比较简单,需要加上对地址应答部分和数据校验。 //主机加按键命令,发送命令,查询方式,从机受到命令后发送数据,主机显示 #include reg52.h #include string.h #define uchar unsigned char #define uint unsigned int sbit key1=P1^0; //按键命令 sbit key2=P1^1; sbit key3=P1^2; uchar tem
[单片机]