51单片机管脚说明
mcs-51单片机的引脚和输入输出端口
MCS-51单片机的引脚和输入输出端口MCS-51有4组8位I/O口,共占用32个引脚:P0、P1、P2和P3口,P1、P2和P3为准双向口,P0口则为双向三态输入输出口。
●P0口(P0.0~P0.7)占用32~39脚;●P1口(P1.0~P1.7)占用1~8脚;●P2口(P2.0~P2.7)占用21~28脚;●P3口(P3.0~P3.7)占用10~17脚;这四个口的主要功能如下:(1) P0 口是一个8位不带内部上拉电阻的漏极开路型准双向I/O口,因此该口输出时需外接上拉电阻,而P1 、P2 和P3口都是带内部上拉电阻的8位双向I/O口。
(2) 在访问片外ROM时,P0口分时兼作数据总线和低8位地址线;P2口作高位地址线。
(3) 内部带程序存储器的芯片,在EPROM编程和程序验证时,P1输入低8位地址,P2输入高8位地址,P0输入指令代码。
(注:P1、P2作输入口时,必须要使每位先置“1”,才能读入外部数据。
)(4) P3口除作双向I/0口外还兼有专用功能。
P0口和P2口:图1为P0口和P2口其中一位的电路图,由图可见,电路中包含一个数据输出锁存器和两个三态数据输入缓冲器,另外还有一个数据输出的驱动和控制电路。
这两组口线用来作为CPU与外部数据存储器、外部程序存储器和I/O扩展口,而不能像P1、P3直接用作输出口。
它们一起可以作为外部地址总线,P0口身兼两职,既可作为地址总线,也可作为数据总线。
P2口作为外部数据存储器或程序存储器的地址总线的高8位输出口AB8-AB15,P0口由ALE选通作为地址总线的低8位输出口AB0-AB7。
外部的程序存储器由PSEN信号选通,数据存储器则由WR和RD读写信号选通,因为216=64k,所以8051最大可外接64kB的程序存储器和数据存储器P1口:图2为P1口其中一位的电路图,P1口为8位准双向口,每一位均可单独定义为输入或输出口,当作为输入口时,1写入锁存器,Q(非)=0,T2截止,内上拉电阻将电位拉至1,此时该口输出为1,当0写入锁存器,Q(非)=1,T2导通,输出则为0。
C51单片机引脚图及引脚功能介绍
80C51单片机引脚图及引脚功能介绍首先我们来介绍一下单片机的引脚图及引脚功能(如下图所示),引脚的具体功能将在下面详细介绍单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。
⒈ 电源:⑴ VCC - 芯片电源,接+5V;⑵ VSS - 接地端;⒉ 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。
⒊ 控制线:控制线共有4根,⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲① ALE功能:用来锁存P0口送出的低8位地址② PROG功能:片内有EPROM的芯片,在EPROM 编程期间,此引脚输入编程脉冲。
⑵ PSEN:外ROM读选通信号。
⑶ RST/VPD:复位/备用电源。
① RST(Reset)功能:复位信号输入端。
② VPD功能:在Vcc掉电情况下,接备用电源。
⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。
① EA功能:内外ROM选择端。
② Vp p功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
⒋ 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脚相连。
51单片机默认状态下各管脚电平
51单片机默认状态下各管脚电平51单片机是一种常用的微控制器,具有多个管脚用于输入输出以实现各种功能。
下面我们来了解一下51单片机默认状态下各管脚的电平。
1. P0口:P0口是51单片机的8位双向IO口,它的默认状态下是高电平。
P0口可以用来连接外部设备,如LED灯、数码管等。
通过控制P0口的电平,我们可以实现对外部设备的控制。
2. P1口:P1口也是一个8位双向IO口,它的默认状态下也是高电平。
P1口可以用来连接外部设备,如按键、传感器等。
通过读取P1口的电平,我们可以获取外部设备的状态信息。
3. P2口:P2口是一个8位双向IO口,它的默认状态下是高电平。
P2口可以用来连接外部设备,如LCD显示屏、蜂鸣器等。
通过控制P2口的电平,我们可以实现对外部设备的显示和声音输出。
4. P3口:P3口是一个8位双向IO口,它的默认状态下是高电平。
P3口可以用来连接外部设备,如数码管、电机等。
通过控制P3口的电平,我们可以实现对外部设备的数值显示和运动控制。
5. EA管脚:EA管脚是51单片机的外部访问使能管脚,它的默认状态下是低电平。
当EA管脚为低电平时,51单片机将从外部存储器中启动程序。
当EA管脚为高电平时,51单片机将从内部存储器中启动程序。
6. ALE管脚:ALE管脚是51单片机的地址锁存使能管脚,它的默认状态下是高电平。
当ALE管脚为高电平时,51单片机将地址信息锁存。
当ALE管脚为低电平时,51单片机将地址信息输出到外部设备。
7. PSEN管脚:PSEN管脚是51单片机的程序存储器使能管脚,它的默认状态下是高电平。
当PSEN管脚为高电平时,51单片机将从程序存储器中读取指令。
当PSEN管脚为低电平时,51单片机将从外部设备中读取指令。
8. RST管脚:RST管脚是51单片机的复位管脚,它的默认状态下是高电平。
当RST管脚由高电平变为低电平时,51单片机将重新启动。
通过控制RST管脚的电平,我们可以实现对51单片机的复位操作。
第3章MCS-51单片机的内部资源及应用
MOV P0, A ANL P0, #data ORL P0, A
(2)读端口数据方式: CPU读入的这个数据并非端口引脚线 上的数据。读端口数据可以直接读端口。例如,下面的指 令均可以从P1口输入数据,这是锁存器上的数据。
2.P2口
P2口常用做外部存储器的高8位地址 口。当不用做地址口时,P2口也可作为 通用I/O口,这时它也是一个准双向I/O 口。不必外接上拉电阻就可以驱动任何 MOS驱动电路,且只能驱动4个TTL输 入。P2口的位结构如右图所示。
3.P1口
P1口常用做通用I/O口,它也是一 个标准的准双向I/O口,不必外接上拉 电阻就可以驱动任何MOS驱动电路, 且只能驱动4个TTL输入。P1口的位结 构如右图所示。
制。
(3)中断允许控制寄存器IE (0A8H)
EA
ES ET1 EX1 ET0 EX0
(3)中断允许控制寄存器IE (0A8H)
中断与子程序的最主要区别:子程序是预先安排好的,中断 是随机发生的。
中断涉及的几个环节:中断源、 中断申请、开放中断、保护 现场、中断服务、恢复现场、中断返回。
2. 中断源
中断源是指引起中断的设备或事件,或发出中断请求的源头。
3. 中断的分类
中断按功能通常可分为可屏蔽中断、非屏蔽中断和软件中断三类。 可屏蔽中断是指CPU可以通过指令来允许或屏蔽中断的请求。 非屏蔽中断是指CPU对中断请求是不可屏蔽的,一旦出现,CPU必须响应。 软件中断则是指通过相应的中断指令使CPU响应中断。
1.I/O口直接用于输入/输出
在I/O口直接用做输入/输出时,CPU既可以把它们看做数据口,也可以看 做状态口,这是由用户决定的。
51单片机外部引脚英文全称是什么
引言:51单片机是一种常用的嵌入式系统微控制器,常用于各种电子设备中。
在使用51单片机时,了解其外部引脚的英文全称是非常重要的。
本文将详细介绍51单片机外部引脚的英文全称,探讨其各个引脚的功能和用途。
概述:51单片机外部引脚的英文全称是根据它们在芯片上的物理位置和连接功能来命名的。
这些引脚包括电源引脚、输入输出引脚、复位引脚和其他特殊功能引脚。
了解这些英文全称可以帮助工程师更好地掌握51单片机的使用和应用。
正文:1. 电源引脚(Power Pins)1.1 VCCVCC引脚是指供电引脚,它连接到单片机的正电源。
VCC引脚提供的电压通常是5V,也可以是3.3V或其他电压。
1.2 GNDGND引脚是指接地引脚,它连接到单片机的负电源。
GND引脚用于建立电路的共地参考点。
2. 输入输出引脚(I/O Pins)2.1 P0.0 - P0.7P0引脚是51单片机上的一个8位可编程输入输出引脚组。
P0.0到P0.7分别对应于物理引脚P0.0到P0.7。
这些引脚可以配置为输入或输出,用于与其他设备进行数据交换。
2.2 P1.0 - P1.7P1引脚是51单片机上的另一个8位可编程输入输出引脚组。
P1.0到P1.7分别对应于物理引脚P1.0到P1.7。
这些引脚也可以配置为输入或输出,用于与其他设备进行数据交换。
2.3 P2.0 - P2.7P2引脚是51单片机上的第三个8位可编程输入输出引脚组。
P2.0到P2.7分别对应于物理引脚P2.0到P2.7。
这些引脚同样可以配置为输入或输出,用于数据交换。
2.4 P3.0 - P3.7P3引脚是51单片机上的第四个8位可编程输入输出引脚组。
P3.0到P3.7分别对应于物理引脚P3.0到P3.7。
这些引脚也可以配置为输入或输出。
3. 复位引脚(Reset Pin)3.1 RSTRST引脚是51单片机上的复位引脚。
当RST引脚被拉低时,单片机将被复位。
复位引脚通常通过一个复位电路提供一个确定的复位信号。
80C51单片机引脚图及引脚功能介绍
80C51单片机引脚图及引脚功能介绍首先我们来介绍一下单片机的引脚图及引脚功能(如下图所示),引脚的具体功能将在下面详细介绍单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。
⒈电源:⑴ VCC - 芯片电源,接+5V;⑵ VSS - 接地端;⒉时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。
⒊控制线:控制线共有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。
⒋ 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脚相连。
单片机引脚说明按其引脚功能分为四部分叙述这条引脚的功能
单片机引脚说明-按其引脚功能分为四部分叙述这条引脚的功能————————————————————————————————作者: ————————————————————————————————日期:下面按其引脚功能分为四部分叙述这40条引脚的功能。
ﻫ1、主电源引脚VCC和VSSVCC——(40脚)接+5V电压;ﻫVSS——(20脚)接地。
2、外接晶体引脚XTAL1和XTAL2XTAL1(19脚)接外部晶体的一个引脚。
在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。
当采用外部振荡器时,对HMOS单片机,此引脚应接地;对CHMOS单片机,此引脚作为驱动端。
XTAL2(18脚)接外晶体的另一端。
在单片机内部,接至上述振荡器的反相放大器的输出端。
采用外部振荡器时,对HMOS单片机,该引脚接外部振荡器的信号,即把外部振荡器的信号直接接到内部时钟发生器的输入端;对XHMOS,此引脚应悬浮。
ﻫ3、控制或与其它电源复用引脚RST/VPD、ALE/PROG、PSEN和EA/VPP①RST/VPD(9脚)当振荡器运行时,在此脚上出现两个机器周期的高电平将使单片机复位。
推荐在此引脚与VSS引脚之间连接一个约8.2k的下拉电阻,与VCC引脚之间连接一个约10μF的电容,以保证可靠地复位。
ﻫVCC掉电期间,此引脚可接上备用电源,以保证内部RAM的数据不丢失。
当VCC主电源下掉到低于规定的电平,而VPD在其规定的电压范围(5±0.5V)内,VPD就向内部RAM提供备用电源。
②ALE/PROG(30脚):当访问外部存贮器时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。
即使不访问外部存储器,ALE端仍以不变的频率周期性地出现正脉冲信号,此频率为振荡器频率的1/6。
因此,它可用作对外输出的时钟,或用于定时目的。
然而要注意的是,每当访问外部数据存储器时,将跳过一个ALE脉冲。
ALE端可以驱动(吸收或输出电流)8个LS型的TTL输入电路。
基于51单片机的模拟电梯控制系统_毕业设计
摘要本文介绍了基于单片机的电梯控制系统,硬件部分主要由单片机最小系统模块、电梯内外电路按键模拟检测模块、电梯外请求发光管显示模块、楼层显示数码管模块、电梯上下行模块及模拟传感器模块等5部分组成。
该系统采用单片机(AT89C51)作为控制核心,内外均使用按键按下与否引起的单片机相应端口电平变化的原理,作为用户请求信息发送到单片机,单片机根据判断的结果最终驱动步进电机做相应的运动,在运动的过程中,单片机依照请求信息通过模拟的传感器使步进电机停止运动,并利用彩灯作为上升和下降的状况显示,七段数码管实时显示当前楼层,完成整个请求和响应的过程。
软件部分使用汇编语言实现,利用查询方式来检测用户请求的按键信息。
根据电梯运行到相应楼层时,模拟按键引起的电平变化,进行判断和执行实现电梯的控制,并且将程序模块化,方便了修改和调用。
硬件设计简单可靠,结合软件,基本实现了四层电梯的模拟运行。
关键词:单片机,AT89C51,电梯控制,步进电机目录摘要 (I)目录 (II)第1章绪论 (1)1.1电梯的研究背景及意义 (1)1.2 电梯的国内外发展状况 (1)第2章电梯设计任务与要求 (2)2.1设计任务 (2)2.2设计要求 (2)第3章总体设计方案 (3)3.1设计思路 (3)3.2总体设计框图 (3)第4章电梯控制系统 (4)4.1电梯控制系统 (4)4.2主要硬件设计器件介绍 (5)4.3 软件设计 (9)第5章个人心得体会 (12)参考文献 (14)致谢 (15)附录I: (16)附录II: (18)第1章绪论1.1电梯的研究背景及意义电梯是高层宾馆、商城、住宅、多层厂房和仓库等高层建筑不可缺少的垂直方向的交通工具。
随着社会的发展,建筑物规模越来越大,楼层越来越多,对电梯的可靠性、舒适感和美学等方面的要求也有了更高的要求。
电梯是集机电一体的复杂系统,涉及机械传动、电气控制和土建等工程领域,而对现代电梯而言,应具有高度的安全性。
51单片机-数码管显示
} void delay(int x) {
int i,j; for(i=0;i<x;i++)
for(j=1;j<120;j++); }
LED字型显示代码表
段符号
十六进制代码
显示 dp
g
f
e
d
c
b
a 共阴极 共阳极
0
0
1
0
2
0
3
0
4
0
5
0
6
0
7
0
8
0
9
0
A0
b
0
C0
d
0
E0
F
0
H0
P0
0
1
1
1
1
1
1
3FH
C0H
0
0
0
0
1
1
0
06H
F9H
1
0
1
1
0
1
1
5BH
A4H
1
0
0
1
1
1
1
4FH
B0H
1
1
0
0
1
Hale Waihona Puke 1066H
99H
1
1
0
1
1
0
1
6DH 92H
1
1
1
1
1
0
1
7DH
1. 静态显示的特点
静态显示就是单片机将所要显示的数据送出去后,数码管始终显示 该数据(不变),到下一次显示时,再传送一次新的显示数据。
AT89S52 (51)单片机的引脚图及各引脚功能说明
AT89S52 单片机的引脚图及各引脚功能说明由于本书所有的例程均是基于AT89S52 单片机开发的,这里着重介绍AT89S52 各个引脚及功能。
这些关系到在后面学习例程时对原理图的理解,读者要特别重视。
而对于存储器、定时器、中断系统等部分内容,读者可参考介绍MCS-51单片机的相关书籍。
AT89S52 是Atmel公司生产的一种低功耗、高性能CMOS 8位微控制器,具有8 位在系统可编程Flash存储器。
AT89S52 使用Atme公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
片上Flash 允许程序存储器在系统可编程,也适于常规编程器。
在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案.AT89S52 具有PDIP、PLCC、TQFP3 种封装形式以适用于不同的使用场合。
各封装引脚定义如图1.2所示。
图 1.2 AT89S52引脚图下面简单介绍AT89S52 各引脚的功能,更多信息请查阅Atmel公司的技术文档。
VCC:电源。
GND:地。
P0 口:P0 口是一个8 位漏极开路的双向I/O 口.作为输出口,每位能驱动8 个TTL逻辑电平.对P0 端口写“1”时,引脚用做高阻抗输入。
当访问外部程序和数据存储器时,P0 口也被作为低8 位地址/数据复用。
在这种模式下,P0 具有内部上拉电阻.在Flash编程时,P0 口也用来接收指令字节;在程序校验时,输出指令字节。
在程序校验时,需要外部上拉电阻。
P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,P1 输出缓冲器能驱动4 个TT逻辑电平.当对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
当作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
此外,P1.0 和P1。
2 分别作为定时器/计数器2 的外部计数输入(P1。
51单片机引脚介绍(全)
51单片机引脚介绍(全)51单片机引脚介绍(全)单片机(Microcontroller)是一种集成了微处理器核心、存储器和各种输入输出控制电路的集成电路芯片,广泛应用于嵌入式系统中。
而51单片机(8051 Microcontroller)是最早被广泛使用的一款单片机型号,其引脚布局和功能十分重要。
本文将对51单片机的引脚进行详细介绍,以便更好地理解和应用。
1. 引脚简介51单片机共有40个引脚,编号为P0.0至P3.7,其中P0、P1、P2、P3为4个8位的I/O端口,分别对应于32个可编程的引脚。
此外,引脚还包括VCC(供电正极)、GND(接地)以及RESET(复位引脚)、PSEN(程序存储器使能引脚)、ALE/PROG(地址锁存/编程使能引脚)、EA/VPP(外部访问使能/编程电压),共计7个特殊功能引脚。
2. I/O口的功能P0口是可用的8位双向I/O口,可以用于与外设的数据传输。
P0口在模拟输入/输出工作状态下为双向I/O口,在数字输入/输出工作状态下为输出口。
P1口也是一个可用的8位双向I/O口,用于与外设的数据传输。
P2口是一个不可用的8位双向I/O口,它被用作外部总线的高8位数据总线。
P3口是一个可用的8位双向I/O口,用于与外设的数据传输。
3. 特殊功能引脚RESET引脚是用于复位单片机的引脚。
将RESET引脚拉低,即可使单片机复位。
PSEN引脚是用于访问外部程序存储器(EPROM或闪存)的引脚。
当PSEN为高时,表示访问的是程序存储器。
ALE/PROG引脚在T0(定时器0)的溢出和外部中断0激活时产生外部地址锁存信号。
在程序编程时,它与PSEN引脚一起用作编程使能信号,并提供编程电压。
EA/VPP引脚是用于控制单片机是否使用外部存储器。
当EA/VPP 为低时,表示单片机使用外部存储器;当EA/VPP为高时,表示单片机使用内部存储器。
4. 其他引脚VCC引脚是单片机的正电源引脚,需要接入正电源。
51单片机 寄存器,引脚与指令
51单片机:寄存器,引脚与指令本篇总结了单片机学习过程中常常遇到的一些单片机引脚,寄存器,与指令的缩写符号和助记符及简要介绍,方便大家初学与查看。
欢迎下载!1.51单片机:寄存器符号地址功能介绍B F0H B寄存器ACC E0H累加器PSW D0H程序状态字IP B8H中断优先级控制寄存器P3B0H P3口锁存器IE A8H中断允许控制寄存器P2A0H P2口锁存器SBUF99H串行口锁存器SCON98H串行口控制寄存器P190H P1口锁存器TH18DH定时器/计数器1(高8位)TH08CH定时器/计数器1(低8位)TL18BH定时器/计数器0(高8位)TL08AH定时器/计数器0(低8位)TMOD89H定时器/计数器方式控制寄存器TCON88H定时器/计数器控制寄存器DPH83H数据地址指针(高8位)DPL82H数据地址指针(低8位)SP81H堆栈指针P080H P0口锁存器PCON87H电源控制寄存器下面,我们介绍一下几个常用的SFR。
是累加器,通常用A表示。
ACC---是累加器,通常用1、ACC---这是个什么东西,可不能从名字上理解,它是一个寄存器,而不是一个做加法的东西,为什么给它这么一个名字呢?或许是因为在运算器做运算时其中一个数一定是在ACC中的缘故吧。
它的名字特殊,身份也特殊,稍后在中篇中我们将学到指令,可以发现,所有的运算类指令都离不开它。
自身带有全零标志Z,若A=0则Z=1;若A≠0则z=0。
该标志常用作程序分枝转移的判断条件。
一个寄存器。
B--一个寄存器。
2、B--在做乘、除法时放乘数或除数,不做乘除法时,随你怎么用。
程序状态字。
PSW-----程序状态字。
3、PSW-----这是一个很重要的东西,里面放了CPU工作时的很多状态,借此,我们可以了解CPU的当前状态,并作出相应的处理。
它的各位功能请看下表:D7D6D5D4D3D2D1D0CY AC F0RS1RS0OV P下面我们逐一介绍各位的用途进位标志。
51单片机的使用说明书
使用说明书一、简介1.Embeded51Embeded51开发板采用国内常用的 51核心、管脚兼容的STC单片机,单板上即可实现烧写、调试、开发。
同时我们加入了一些基本入门模块比如:数码管显示、LED、掉电存储器、继电器等,目的是启发初学者,带领大家走入嵌入式开发殿堂!当然此板的功能绝对不局限于此。
本着开放的原则,我们开放了所有的 IO口和关键信号管脚,板上原有占用资源可以通过短路帽插拔轻松释放,大家可以发挥自己的想象和动手能力,在我们的基础平台上扩充自己的模块,打造属于自己的开发平台。
如果您能够在Embeded51平台上有所得,我们将会感到无比的欣慰与自豪!另外,我们也欢迎大家对现有平台提出改进建议。
2.试验内容板载资源试验● I/O口输入输出● LED实验●按键实验●单片机内部定时器操作●中断实验●串口通讯●继电器实验●掉电存储器实验●数码管动态扫描显示通过板载的开放 I/O口,您还可以自己扩展:RTC、温度传感器、LCD、蓝牙通讯、超声波、红外、电机驱动等等,只要你想一切皆有可能!二、板卡说明1. 板卡框架及功能说明⑴继电器模块⑵ USB-RS232转换(下载、串口通讯)⑶掉电存储器⑷按键⑸四位数码管显示(共阴数码管)⑹板载资源选择⑺单片机(51核心、管脚兼容、功能兼容)⑻端口开放区⑼端口开放区⑽板卡供电(USB、电源适配器可选)⑾电源开关⑿ LED2. 接口说明1.1供电板卡提供 USB供电和电源适配器 2种方式,电源输入 DC5V,USB接口既提供了电源同时也作为通讯口。
电源开关负责电源通断,电源指示灯指示板卡是否在有电状态。
1.2扩展口经典 51核心单片机提供四组 32个 I/O口,板卡上将这四组 32个端口全部开放出来,为您提供稳定、方便的单片机开发基础系统,您可以插上想象的翅膀扩展您想要的任何模块。
1.3继电器接口接口采用 5.08工业插头,提供弱电控制强电的功能。
1.4跳线区板载基本功能模块可以通过短路帽选择是否连通,基础实验时可以选择连通,方便验证试验结果,以后可以拔去短路帽自己扩展想要的功能模块。
8脚51单片机介绍及头文件-STC15F104E
8脚51单片机介绍及头文件STC15F104ESTC的8脚单片机有直插和SOP两种形式的封装,其中有6个IO口,剩下2个是VCC和GND ,不需要带晶振内部自带有时钟发生电路,在此要说明这种型号的单片机有专用的烧录软件,在宏晶官网都有下载。
这6个IO口实际上是我们普通单片机上的P3口,实际编程时也是使用P3.X来实现IO口操作。
唯一的不同就是没有硬件的串口,需要用到定时器来模拟(这点不好),但是下载电路和STC的串口下载电路时一样的。
不做修改。
这个有点费解?下载时用到的是串口形式的下载电路,硬件上使用时却没有串口。
杯具啊!关于IO口的复用功能,除P3.1没有复用功能外,其他引脚均有复用功能。
分别是5个外部中断,3个时钟输出,一个复位输入。
芯片默认是不需要复位电路的,上电自复位的。
可以通过软件来选择引脚作为复位脚。
同时在烧录软件上可以选择低压复位。
手册上说的是8种。
软件上只显示了6种-不解???让人惊喜的是烧录软件上提供硬件开启看门狗功能。
还可以选择看门狗分频级数。
还是蛮方便的嘛。
程序又少了几句话。
最后要说一点的是该种单片机以E结尾的都有EEPROM喔。
例如我买的STC15F104E。
有了这种小的单片机,大家以后做点简单的玩意也不拍浪费了。
好东西。
支持一下!特附上修改过的STC15F04E 头文件/*STC15F104E单片机特殊功能寄存器头文件*/#ifndef __REG52_H__#define __REG52_H__/* BYTE Registers */sfr P3 = 0xB0;sfr PSW = 0xD0;sfr ACC = 0xE0;sfr B = 0xF0;sfr SP = 0x81;sfr DPL = 0x82;sfr DPH = 0x83;/*BIT5 LVDF 低压检测标记位只要VCC小于芯片门槛电压自动置1 需软件清0 同时也是低压检测中断标记位BIT1 PD 为1进入掉电模式硬件清0BIT0 IDL 为1进入空闲模式硬件清0*/sfr PCON = 0x87;sfr TCON = 0x88;sfr TMOD = 0x89;sfr TL0 = 0x8A;sfr TL1 = 0x8B;sfr TH0 = 0x8C;sfr TH1 = 0x8D;sfr IE = 0xA8;sfr IP = 0xB8;/* PSW */sbit CY = PSW^7;sbit AC = PSW^6;sbit F0 = PSW^5;sbit RS1 = PSW^4;sbit RS0 = PSW^3;sbit OV = PSW^2;sbit P = PSW^0; //8052 only/* TCON */sbit TF1 = TCON^7;sbit TR1 = TCON^6;sbit TF0 = TCON^5;sbit TR0 = TCON^4;sbit IE1 = TCON^3;sbit IT1 = TCON^2;sbit IE0 = TCON^1;sbit IT0 = TCON^0;/* IE */sbit EA = IE^7;sbit ELVD = IE^6; //低压检测中断sbit ET1 = IE^3;sbit EX1 = IE^2;sbit ET0 = IE^1;sbit EX0 = IE^0;/* IP */sbit PT1 = IP^3;sbit PX1 = IP^2;sbit PT0 = IP^1;sbit PX0 = IP^0;/* P3 */sbit RD = P3^7;sbit WR = P3^6;sbit T1 = P3^5;sbit T0 = P3^4;sbit INT1 = P3^3;sbit INT0 = P3^2;sbit TXD = P3^1;sbit RXD = P3^0;/*IO口的设置寄存器四种模式P3M0 P1M10 0 与普通的IO口一样0 1 设置为强推挽模式1 0 设置为高阻输入模式1 1 设置为高漏输出模式*/sfr P3M0=0XB2;sfr P3M1=0XB1;/*AUXR寄存器BIT7 T0X12 定时器0速度为传统12倍BIT6 T1X12 定时器1速度为传统12倍*/sfr AUXR=0X8E;//不可以位寻址的/*CLK_DIV时钟分频寄存器控制系统时钟的分频数。
51单片机引脚工作原理介绍
51单片机引脚工作原理介绍
51单片机是一种常用的单片机系列,其引脚工作原理如下:
1. 引脚功能,51单片机的引脚具有多种功能,包括输入、输出、中断、定时器/计数器等。
每个引脚可以通过配置寄存器来设置其功能。
2. 输入引脚,某些引脚可以配置为输入模式,用于接收外部信号。
这些引脚通常与外部传感器、开关等连接,可以通过读取引脚的电平状态来获取外部信号。
3. 输出引脚,某些引脚可以配置为输出模式,用于控制外部设备。
这些引脚通常与LED、继电器等外部设备连接,可以通过设置引脚的电平状态来控制外部设备的开关状态。
4. 中断引脚,51单片机具有多个中断引脚,用于实现中断功能。
当外部事件触发中断引脚时,单片机会暂停当前任务,执行中断服务程序。
中断引脚可以用于处理紧急事件、实现实时响应等功能。
5. 定时器/计数器引脚,51单片机内置了多个定时器/计数器模块,用于实现定时、计数等功能。
这些模块的引脚可以配置为定时器/计数器功能,用于产生精确的时间延迟、计数外部事件等。
6. 引脚配置,通过设置相应的寄存器,可以配置引脚的工作模式、电平状态、中断触发条件等。
引脚的配置可以通过编程的方式实现,使得单片机可以根据需要与外部环境进行交互。
总结起来,51单片机的引脚具有多种功能,包括输入、输出、中断、定时器/计数器等。
通过设置相应的寄存器,可以配置引脚的工作模式和功能,实现与外部环境的交互。
这些引脚的工作原理是通过控制引脚的电平状态或触发条件来实现相应的功能。
51单片机引脚介绍(全)
51单片机引脚介绍(上)单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。
⒈电源:⑴VCC - 芯片电源,接+5V;⑵VSS - 接地端;⒉时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。
⒊控制线:控制线共有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。
⒋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脚相连。
51系列单片机引脚排列图与引脚功能介绍(含AT8051、89C2051等)
51系列单片机引脚排列图与引脚功能介绍(含AT8051、89C2051等)51系列单片机引脚排列图与引脚功能介绍(含AT8051、89C2051等)AT89c51(含8051、80S51、8031、8751、8052等)可以说是最常用的51单片机了,下图介绍了AT89c51双列直插和smt两种封装的芯片引脚图资料.供大家查阅.管脚资料与普通的51单片机一样.部分引脚简要说明:1、 RESET:一般接2个元件:①接10K电阻到地,②接10μ电容到电源。
2、 -EA / VPP:一般情况下接高电平(这时使用MCU内部RAM/ROM)。
3、 ALE / PROG:一般情况下空着(这时使用MCU内部RAM/ROM)。
4、 -PSEN:一般情况下空着(当使用MCU内部RAM/ROM时)。
5、 P0内部没有上拉电阻。
所以必要时需要在每个引脚外接5.1K左右上拉电阻到电源。
6、 XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空(特别声明:有些文章把XTAL1、XTAL2的功能正好说反了。
而我们这里的说法绝对是正确的)。
内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。
晶振的频率可以在1MHz-24MHz内选择。
电容取20PF左右。
7、 VDD:电源+5V。
VSS:GND接地。
PDIP:PQFP/TQFP:PLCC:引脚功能说明:89C51外部引脚图:(可以直接拷入ASM程序文件中,作注释使用,十分方便); ┏━┓┏━━┓; P1.0 ┫1 ┗┛ 40┣ Vcc; P1.1 ┫2 39┣ P0.0; P1.2 ┫3 38┣ P0.1; P1.3 ┫4 37┣ P0.2; P1.4 ┫5 36┣ P0.3; P1.5 ┫6 35┣ P0.4; P1.6 ┫7 34┣ P0.5; P1.7 ┫8 33┣ P0.6; RST/Vpd ┫9 32┣ P0.7; RXD P3.0 ┫10 31┣ -EA/Vpp(内1/外0 程序地址选择); TXD P3.1 ┫11 30┣ ALE/-P (地址锁存输出); -INT0 P3.2 ┫12 29┣ -PSEN (外部程序读选通输出); -INT1 P3.3 ┫13 28┣ P2.7; T0 P3.4 ┫14 27┣ P2.6; T1 P3.5 ┫15 26┣ P2.5; -WR P3.6 ┫16 25┣ P2.4; -RD P3.7 ┫17 24┣ P2.3; X2 ┫18 23┣ P2.2; X1 ┫19 22┣ P2.1; GND ┫20 21┣ P2.0; ┗━━━━━┛引脚说明:①电源引脚Vcc(40脚):典型值+5V。
MCS-51单片机的引脚
它是外部程序存储器ROM的读 选通信号。在执行访问外部 ROM指令时,会自动产生PSEN (1)、电源线:VCC(+5V)、VSS(地) 信号;而在访问外部数据存储 (2)、振荡电路:XTAL1、XTAL2 器RAM或访问内部ROM时,不产 生PSEN信号。 (3)、复位引脚:RST (4)、并行口:P0、P1、P2、P3
MCS-51的引脚
教学内容
教学内容:理解端口的概念,掌握端口 的结构,MCS-51的引脚。 重点:掌握外部设备进行数据交流的硬 件系统。
引入课程
CPU+M:计算机主机。 配合外设(I/O)构成计算机硬件系统。
MCS51单片机信号引脚简介
P1. 0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RST RXD/ P3. 0 TXD/ P3.1 INT0/ P3.2 INT1/ P3.3 T0/ P3.4 T1/ P3.5 WR/ P3.6 RD/ P3.7 XTAL2 XTAL1 VSS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
读引脚
D
Q
P0.n
CLK Q
MUX
T2
P0口 引脚
驱动场效应管T2栅极接通。故内部总线与P0口同相。由 于输出驱动级是漏极开路电路,若驱动NMOS或其 它拉流负载时,需要外接上拉电阻。P0的输出级可驱动 8个LSTTL负载。
读锁存器 地址/数据 控制 VCC
T1
内部总线 写锁存器
读引脚
D
Q
P0.n
管脚图
P3口线为多功能引脚,可自动切 换用作数据总线、地址总线、 控制总线和或I/O 接口外部引 脚。
51系列单片机各引脚功能概述
51系列单片机各引脚功能概述AT89C51引脚功能VCC/GND:供电电源。
P0口:可以被定义为数据/地址的低八位,能够用于外部程序/数据存储器。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:标准输入输出I/O,P1口管脚写入1后,被内部上拉为高,可用作输入。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:既可用于标准输入输出I/O,也可用于外部程序存储器或数据存储器访问时的高八位地址。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:既可以作标准输入输出I/O,也可作为AT89C51的一些特殊功能口,管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
/PSEN:外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA / VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA 端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
51单片机管脚说明(2007-06-26 15:46)分类:单片机资料几学习心得51单片机管脚说明发表日期:2007-06-16 00:12:46 点击数:10当我们拿到一块单片机芯片时,看到这么多的“大腿”,他们都有干什么用的?了解了51家族的渊源,现在我们就去了解一下它们的“腿”吧.大家可得学好了,这可是至关重要的哟.如果连手跟腿都分不清,要学好单片机那就有如凭空造屋了.这一章节相当管用,希望大家能用心学好,如果这一章节学不好,以后学习会有很大的阻力.(我们的教材都是以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 地址锁存控制信号:在系统扩展时,ALE用于控制把P0口的输出低8位地址送锁存器锁存起来,以实现低位地址和数据的隔离.参见图2(8051扩展2KB EEPROM电路,在图中ALE 与4LS373锁存器的G相连接,当CPU对外部进行存取时,用以锁住地址的低位地址,即P0口输出.由于ALE是以晶振六分之一的固定频率输出的正脉冲,当系统中未使用外部存储器时,ALE 脚也会有六分之一的固定频率输出,因此可作为外部时钟或外部定时脉冲使用.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).3、8751烧写内部EPROM时,利用此脚输入21V的烧写电压.RST 复位信号:当输入的信号连续2个机器周期以上高电平时即为有效,用以完成单片机的复位初始化操作.XTAL1和XTAL2 外接晶振引脚.当使用芯片内部时钟时,此二引脚用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号.VCC:电源+5V输入VSS:GND接地.各端口工作原理讲解并行端口P0端口总线I/O端口,双向,三态,数据地址分时复用,该端口除用于数据的输入/输出外,在8031单片机外接程序存储器时,还分时地输出/输入地址/指令.由Po端口输出的信号无锁存,输入的信息有读端口引脚和读端口锁存器之分.P0端口8位中的一位结构图见下图:由上图可见,P0端口由锁存器、输入缓冲器、切换开关与相应控制电路、场效应管驱动电路构成.在输出状态下,当切换开关MUX向下时,从内部总线来的数据经锁存器反相和场效应管T2反相,输出到端口引脚线上.此时,场效应管T1关断,因而这种输出方式应为外接上拉电阻的漏极开路式.当切换开关MUX向上时,一位地址/数据信号分时地输出到端口线上.此外,由T1、T2的通断组合,形成高电平、低电平与高阻浮动三态的输出.在输入状态下,从锁存器和从引脚上读来的信号一般是一致的,但也有例外.例如,当从内部总线输出低电平后,锁存器Q=0,Q=1,场效应管T2开通,端口线呈低电平状态.此时无论端口线上外接的信号是低电乎还是高电平,从引脚读入单片机的信号都是低电平,因而不能正确地读入端口引脚上的信号.又如,当从内部总线输出高电平后,锁存器Q=1,Q=0,场效应管T2截止.如外接引脚信号为低电平,从引脚上读入的信号就与从锁存器读入的信号不同.为此,8031单片机在对端口P0一P3的输入操作上,有如下约定:为此,8031单片机在对端口P0一P3的输入操作上,有如下约定:凡属于读-修改-写方式的指令,从锁存器读入信号,其它指令则从端口引脚线上读入信号.读-修改-写指令的特点是,从端口输入(读)信号,在单片机内加以运算(修改)后,再输出(写)到该端口上.下面是几条读--修改-写指令的例子.这样安排的原因在于读-修改-写指令需要得到端口原输出的状态,修改后再输出,读锁存器而不是读引脚,可以避免因外部电路的原因而使原端口的状态被读错.P0端口是8031单片机的总线口,分时出现数据D7一D0、低8位地址A7一AO,以及三态,用来接口存储器、外部电路与外部设备.P0端口是使用最广泛的I/O端口.P1端口:通用I/0端口,准双向静态口.输出的信息有锁存,输入有读引脚和读锁存器之分.P1端口的一位结构见下图. 由图可见,P1端口与P0端口的主要差别在于,P1端口用内部上拉电阻R代替了P0端口的场效应管T1,并且输出的信息仅来自内部总线.由内部总线输出的数据经锁存器反相和场效应管反相后,锁存在端口线上,所以,P1端口是具有输出锁存的静态口.由下图可见,要正确地从引脚上读入外部信息,必须先使场效应管关断,以便由外部输入的信息确定引脚的状态.为此,在作引脚读入前,必须先对该端口写入l.具有这种操作特点的输入/输出端口,称为准双向I/O口.8031单片机的P1、P2、P3都是准双向口.P0端口由于输出有三态功能,输入前,端口线已处于高阻态,无需先写入l后再作读操作.单片机复位后,各个端口已自动地被写入了1,此时,可直接作输入操作.如果在应用端口的过程中,已向P1一P3端口线输出过0,则再要输入时,必须先写1后再读引脚,才能得到正确的信息.此外,随输入指令的不同,H端口也有读锁存器与读引脚之分.Pl端口是803l单片机中唯一仅有的单功能I/O端口,并且没有特定的专用功能,输出信号锁存在引脚上,故又称为通用静态口.P2端口:P2端口的一位结构见下图:由图可见,P2端口在片内既有上拉电阻,又有切换开关MUX,所以P2端口在功能上兼有P0端口和P1端口的特点.这主要表现在输出功能上,当切换开关MUX向左时,从内部总线输出的一位数据经反相器和场效应管反相后,输出在端口引脚线上;当MUX向右时,输出的一位地址信号也经反相器和场效应管反相后,输出在端口引脚线上.由于8031单片机必须外接程序存储器才能构成应用电路,而P2端口就是用来周期性地输出从外存中取指令的地址(高8位地址),因此,P2端口的切换开关MUX总是在进行切换,分时地输出从内部总线来的数据和从地址信号线上来的地址.因此P2端口是动态的I/O端口.输出数据虽被锁存,但不是稳定地出现在端口线上.其实,这里输出的数据往往也是一种地址,只不过是外部RAM的高8位地址.在输入功能方面,P2端口与P0和H端口相同,有读引脚和读锁存器之分,并且P2端口也是准双向口.可见,P2端口的主要特点包括:①不能输出静态的数据;②自身输出外部程序存储器的高8位地址;②执行MOVX指令时,还输出外部RAM的高位地址,故称P2端口为动态地址端口.P3端口:双功能静态I/O口P3端口的一位结构见下图.由上图可见,P3端口和Pl端口的结构相似,区别仅在于P3端口的各端口线有两种功能选择.当处于第一功能时,第二输出功能线为1,此时,内部总线信号经锁存器和场效应管输入/输出,其作用与P1端口作用相同,也是静态准双向I/O端口.当处于第二功能时,锁存器输出1,通过第二输出功能线输出特定的内含信号,在输入方面,即可以通过缓冲器读入引脚信号,还可以通过替代输入功能读入片内的特定第二功能信号.由于输出信号锁存并且有双重功能,故P3端口为静态双功能端口.P3口的特殊功能(即第二功能):使P3端品各线处于第二功能的条件是:1\串行I/O处于运行状态(RXD,TXD);2\打开了处部中断(INT0,INT1);3\定时器/计数器处于外部计数状态(T0,T1)4\执行读写外部RAM的指令(RD,WR)在应用中,如不设定P3端口各位的第二功能(WR,RD信叼的产生不用设置),则P3端口线自动处于第一功能状态,也就是静态I/O端口的工作状态.在更多的场合是根据应用的需要,把几条端口线设置为第二功能,而另外几条端口线处于第一功能运行状态.在这种情况下,不宜对P3端口作字节操作,需采用位操作的形式.端口的负载能力和输入/输出操作:P0端口能驱动8个LSTTL负载.如需增加负载能力,可在P0总线上增加总线驱动器.P1,P2,P3端口各能驱动4个LSTTL负载.前已述及,由于P0-P3端口已映射成特殊功能寄存器中的P0一P3端口寄存器,所以对这些端口寄存器的读/写就实现了信息从相应端口的输入/输出.例如:MOV A, P1 ;把Pl端口线上的信息输入到AMoV P1, A ;把A的内容由P1端口输出MOV P3, #0FFH ;使P3端口线各位置l串行端口:MCS-51系列单片机片内有一个串行I/O端口,通过引脚RXD(P3.0)和TXD(P3.1)可与外设电路进行全双工的串行异步通信.1.串行端口的基本特点8031单片机的串行端口有4种基本工作方式,通过编程设置,可以使其工作在任一方式,以满足不同应用场合的需要.其中,方式0主要用于外接移位寄存器,以扩展单片机的I/O电路;方式1多用于双机之间或与外设电路的通信;方式2,3除有方式l的功能外,还可用作多机通信,以构成分布式多微机系统.串行端口有两个控制寄存器,用来设置工作方式、发送或接收的状态、特征位、数据传送的波特率(每秒传送的位数)以及作为中断标志等.串行端口有一个数据寄存器SBUF(在特殊功能寄存器中的字节地址为99H),该寄存器为发送和接收所共同.发送时,只写不读;接收时,只读不写.在一定条件下,向阳UF写入数据就启动了发送过程;读SBUf就启动了接收过程.串行通信的波特率可以程控设定.在不同工作方式中,由时钟振荡频率的分频值或由定时器Tl 的定时溢出时间确定,使用十分方便灵活.2.串行端口的工作方式①方式08位移位寄存器输入/输出方式.多用于外接移位寄存器以扩展I/O端口.波特率固定为fosc/12.其中,fosc为时钟频率.在方式0中,串行端口作为输出时,只要向串行缓冲器SBUF写入一字节数据后,串行端口就把此8位数据以等的波特率,从RXD引脚逐位输出(从低位到高位);此时,TXD输出频率为fosc/12的同步移位脉冲.数据发送前,仅管不使用中断,中断标志TI还必须清零,8位数据发送完后,TI自动置1.如要再发送,必须用软件将TI清零.串行端口作为输入时,RXD为数据输入端,TXD仍为同步信号输出端,输出频率为fosc/12的同步移位脉冲,使外部数据逐位移入RxD.当接收到8位数据(一帧)后,中断标志RI自动置.如果再接收,必须用软件先将RI清零.串行方式0发送和接收的时序过程见下图.②方式110位异步通信方式.其中,1个起始位(0),8个数据位(由低位到高位)和1个停止位(1).波特率由定时器T1的溢出率和SMOD位的状态确定.一条写SBUF指令就可启动数据发送过程.在发送移位时钟(由波特率确定)的同步下,从TxD 先送出起始位,然后是8位数据位,最后是停止位.这样的一帧10位数据发送完后,中断标志TI 置位.在允许接收的条件下(REN=1),当RXD出现由1到O的负跳变时,即被当成是串行发送来的一帧数据的起始位,从而启动一次接收过程.当8位数据接收完,并检测到高电乎停止位后,即把接收到的8位数据装入SBUF,置位RI,一帧数据的接收过程就完成了.方式1的数据传送波特率可以编程设置,使用范围宽,其计算式为:波特率=2SMOD/32×(定时器T1的溢出率)其中,SMOD是控制寄存器PCON中的一位程控位,其取值有0和l两种状态.显然,当SMOD =0时,波特率=1/32(定时器Tl溢出率),而当SMOD=1时,波特率=1/16(定时器T1溢出率).所谓定时器的溢出率,就是指定时器一秒钟内的溢出次数.波特率的算法,以及要求一定波特率时定时器定时初值的求法,后面将详细讨论. ·串行方式1的发送和接收过程的时序见下图.③方式2,311位异步通信方式.其中,1个起始位(0),8个数据位(由低位到高位),1个附加的第9位和1个停止住(1).方式2和方式3除波特率不同外,其它性能完全相同.方式2,3的发送、接收时序见下图.由图可见,方式2和方式3与方式l的操作过程基本相同,主要差别在于方式2,3有第9位数据.发送时,发送机的这第9位数据来自该机SCON中的TB8,而接收机将接收到的这第9位数据送入本机SCON中的RB8.这个第9位数据通常用作数据的奇偶检验位,或在多机通信中作为地址/数据的特征位.方式2和方式3的波特率计算式如下:方式2的波特率=2SMOD/64×fosc方式3的波特率=2SMOD/32×定时器T1的溢出率由此可见,在晶振时钟频率一定的条件下,方式2只有两种波特率,而方式3可通过编程设置成多种波特率,这正是这两种方式的差别所在.3.串行端口的控制寄存器串行端口共有2个控制寄存器SCON和PCON,用以设置串行端口的工作方式、接收/发送的运行状态、接收/发送数据的特征、波特率的大小,以及作为运行的中断标志等.在这些引脚中,“新动力2004版”学习套件都有这些实验功能,并有相应的例程,配套的光盘中还有试验板的原理图.我在后面的章节中也会按照“新动力2004版”的实验功能一步一步的深入讲解下去.。