




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第2章 89C51单片机的结构和原理,2.1 89C51单片机的内部结构及特点 2.2 89C51单片机引脚及其功能 2.3 89C51单片机存储器配置 2.4 时针电路及89C51CPU时序 2.5 复位及复位电路 2.6 89C51的低功耗工作方式 2.7 输入/输出端口结构,2.1 89C51单片机的内部结构及特点,MCS-51U单片机是由INTEL公司研发的。授权生产的公司有ATMEL、PHILIPS和SST等公司。(AT89C51,P89C51,STC89C51) 89C51芯片的特点是:低功耗、高性能、闪速可电改写的ROM、价格便宜。近年来得到极其广泛的应用。,下面以89C51单片
2、机为典型机,介绍该芯片内部的硬件资源、各个功能部件的结构及原理。,2.1.1 89C51单片机组成原理,不同型号MCS-51单片机的CPU处理能力和指令系统 完全兼容,只是存储器和I/O接口的配置有所不同。,2.1.1 MCS-51单片机的基本组成,2.1.1 89C51单片机组成原理,89C51单片机的组成 : 1. 8位CPU; 片内256字节RAM; 片内4KB的Flash ROM; 4. 4个8位并行 I/O接口; 5. 片内2个16位定时器/计数器 6. 片内5个中断源、2个中断优先级的中断处理系统 7.片内1个全双工串行I/O口 8.具有节电工作方式 9.最高允许振荡频率为24MH
3、z(8051为12MHz),2.1.2 MCS-51单片机内部结构,运算器,控制器,振荡器,2.1.2 MCS-51单片机内部结构,各部分的功能:,一、中央处理单元(CPU),CPU是单片机的核心,是计算机的控制和指挥中心,由运算器和控制器等部件组成。,一、中央处理单元(CPU),1.运算器 有:1个能进行8位算术运算和逻辑运算的单元ALU;8位的暂存器1、暂存器2;8位的累加器ACC;寄存器B;程序状态寄存器PSW;布尔处理器C等组成。,ALU:可对4位(半字节)、8位(一字节)和16位(双字节)数据进行算术和逻辑操作。, ACC:累加器,在指令中用助记符A来表示。它是最繁忙的一个寄存器。,
4、 PSW:程序状态寄存器(8位)。是一个标志寄存器,用来指示指令执行后的状态信息。PSW中的各位状态可供程序查询和判别。, B:寄存器(8位)。在乘、除运算时,运算前B用来存放一个操作数,运算完后用来存放一部分运算结果;当不做乘、除运算时,则作为一般的寄存器使用。, C:布尔处理器(1位)。它是以PSW中的进位标志位CY作为它的累加器,专门用于处理位操作。,2. 控制器,包括:程序计数器PC、指令寄存器IR、指令译码器ID、振荡器及时钟电路。,程序计数器PC:16位,由两个8位的计数器PCH(高8位)和PCL(低8 位)组成。它是程序的字节地址计数器。PC存放的内容是即将要执行的下一条指令的地
5、址。故,改变PC的内容就可以改变程序执行的方向。 PC可对64KB的ROM直接寻址,也可对89C51片内RAM寻址。,指令寄存器IR、指令译码器ID :由PC中的内容指定ROM(程序存储器)的地址,取出来的指令经IR送至ID,由ID对指令译码并送PLA产生一定序列的控制信号,以执行指令所规定的操作。,振荡器及时钟电路:89C51片内有振荡电路,只需外接晶振和频率微调电容(2个30皮法左右),频率为: 024MHz.(8051为12MHz)。,二、存储器,1.程序存储器(ROM) 89C51、8751的片内ROM容量为4KB,地址从0000H开始,到0FFFH。用于存放程序和表格常数。,89C5
6、1片内有:4KFlash程序存储器(ROM),它只能读不能写;数据存储器(RAM),它可以读、写。,2.数据存储器(RAM) 8031、89C51、8751的片内RAM容量为128B,地址从00H开始,到7FH。用于存放运算的中间结果、数据暂存及数据缓冲等。 另外,在RAM的128B单元中还有特殊功能寄存器(SFR),地址为80HFFH.详细内容将在后面介绍。,三、I/O接口,89C51有4个8位的并行接口,即:P0P3。它们都是准双向口(为什么是准双向口?后面会解释)。每个端口各有8根I/O线,均可作输入/输出用。 89C51有1个可编程的全双工串行口,即RXD(引脚P3.0,接收)和TXD
7、(引脚P3.1,发送). P0P3口的4个锁存器同RAM统一编址,可以把I/O作为一般特殊功能寄存器来寻址(所谓“寻址”,就是寻找指令中操作数或操作数所在的地址)。,2.2 89C51单片机引脚及其功能,图2-3 89C51的引脚结构,1I/O口线功能 4个8位并行 I/O 接口引脚 P0.0P0.7 、P1.0P1.7 、 P2.0P2.7 和 P3.0P3.7。 除P1口外,其它为多功能引 脚,可自 动切换用 作数据总线、 地址总线、控制总线或I/O 接 口外部引脚。,2.2 89C51单片机引脚及其功能,只有熟悉单片机的引脚功能,才能进行硬件电路的设计!,2.2 89C51单片机引脚及其
8、功能,2控制线 ALE/ PROG: ALE 地址锁存允许信号端。 CPU访问片外存储器时,该引脚输出信号作为锁存低8位地址的控制信号。 PROG是对片内带有4KB EPROM的8751编程写入时的编程脉冲输入端。 用示波器查看ALE端,若有脉冲信号输出,则说明89C51基本上是好的。,2控制线,PSEN: 外部ROM读选通信号端。在访问片外ROM时(该引脚接片外ROM 的OE端),定时输出负脉冲作为读片外ROM的选通信号。 检查一个89C51最小系统上电后能否正常工作,可用示波器查看该引脚有无脉冲输出,若有,则说明基本上工作正常。 EA/VPP: EA程序存储器选择信号端。 VPP固化编程电
9、源输入端(12V)。,2.2 89C51单片机引脚及其功能,当EA引脚接高电平(EA=1)时,CPU只访问片内ROM/EPROM,并执行片内程序存储器中的指令,当PC(程序计数器)的值超过0FFFH(89C51、8751为4KB)时,将自动转去执行片外ROM内的程序。,当EA引脚接低电平(接地,EA=0)时,CPU只访问片外ROM/EPROM,并执行片外程序存储器中的指令,而不管片内是否有ROM。 故对于无片内ROMR 的8031、8032,需要外扩EPROM,此时,EA引脚必须接地。,3. 复位:,RST/VPD:复位信号端和后备电源输入端。 输入10ms以上高电平脉冲,单片机复位。 VPD
10、使用后备电源,可实现掉电保护。,复位电路: 1)上电复位 2)外部信号复位,4.电源 工作电源:VCC(+5V) VSS(即GND端为接地端)。,5. 外接晶振引脚,XTAL2 接外部晶振和微调电容的一端。若须采用外部时钟电路时,该引脚悬空。 要查看89C51的振荡电路是否工作,可用示波器查看该引脚有无脉冲信号输出,若有则说明振荡器工作正常。 XTAL1 接外部晶振和微调电容的另一端。若须采用外部时钟电路时,该引脚是外部时钟的输入端。,6. 输入/输出端口,P0口(P0.0P0.7):P0口是一个漏极开路的8位准双向I/O端口。每一位口线能驱动8个LS型TTL负载。 当P0口作为输入口使用时,
11、要先向端口写“1”。而作为输出口使用时则不需要。 P0口内部无上拉电阻,故当作为输出口使用,需输出高电平时,应加外部上拉电阻。,在Proteus ISIS中做实验: 1)未加上拉电阻,观察LED; 2)加入上拉电阻,观察LED。,1、若P0.1为高电平时:LED1亮 2、若P0.5为低电平时:LED2不亮,;上拉电阻实验程序 ORG 0000H ;ORG是汇编伪指令,通电后单片机从0000H单元开始取指令 AJMP L1 ;跳转到标号为L1的指令 ORG 0030H ;从0030H单元放第1条指令 L1:SETB P0.1;P0.1为高电平 SETB P0.5; P0.5为高电平 SJMP $
12、;程序在此处原地等待,防止程序跑飞 END;汇编伪指令,意思是(机器)汇编结束,在Proteus ISIS中做个实验 1)未加上拉电阻,观察LED; 2)加入上拉电阻,观察LED。,6. 输入/输出端口,P0口还是复用端口,当CPU访问片外存储器时, P0口分时提供低8位的地址和8位数据。,6. 输入/输出端口,P1口(P1.0P1.7):P1口是一个带内部上拉电阻的8位准双向I/O端口。每一位口线能驱动8个LS型TTL负载。 当P1口作为输入口使用时,要先向端口写“1”。而作为输出口使用时则不需要。,P2口(P2.0P2.7):P2口是一个带内部上拉电阻的8位准双向I/O端口。每一位口线能驱
13、动4个LS型TTL负载。 当P2口作为输入口使用时,要先向端口写“1”。而作为输出口使用时则不需要。 当CPU访问片外存储器时,P2口输出地址的高8位。, P3口(P3.0P3.7):P3口是一个带内部上拉电阻的8位准双向I/O端口。每一位口线能驱动4个LS型TTL负载。 P3口作为输入口使用时,要先向端口写“1”。而作为输出口使用时则不需要。 P3口还具有第二功能。,实例(输入/输出),水位的电信号从P1.0和P1.1输入,即P1.0和P1.1输入口使用。水位的电信号要从P1.0和P1.1口输入到CPU中,必须先向P1.0/P1.1的“端口锁存器”“写1”(称为输入的准备动作)。 P1.2和
14、P1.3是作输出口使用。具体是:P1.2用于控制水泵电机的启动与停止;P1.3用于LED的点亮与熄灭(即LED作水泵电机的启动/停止的信号灯)。作为输出口使用时,不用向其“端口锁存器”“写1”。 I/O口线的这一特点是因为单片机内部的电路结构所确定的!, P3口作为第二功能端口时的功能表,P21. 表2-1, 物理结构(哈佛结构),89C51存储器,程序存储器ROM,数据存储器RAM,片内程序存储器,片外程序存储器,片内数据存储器,片外数据存储器,2.3 89C51存储器配置,一、物理空间与地址,物理上4个存储器地址空间: 片内/片外程序存储器空间 片内/片外数据存储器空间 逻辑上3个存储器地
15、址空间: 64KB 程序存储器 (片内、片外统一编址0000HFFFFH) 256B 片内数据存储器 (地址: 00HFFH) 64KB 片外数据存储器 (地址: 0000HFFFFH),这三个存储空间的地址是重叠的,用指令来区别这三个不同的逻辑空间:当CPU访问片内、片外ROM时,用“MOVC”指令;当访问片外RAM时,用“MOVX”指令;访问片内RAM时,用“MOV”指令。,二、程序和数据存储器逻辑空间,普林斯顿结构:程序和数据共用一个存储器逻辑空间, 统一 编址。 哈佛结构: 程序与数据分为两个独立存储器逻辑空间, 分开编址。,2.3.1 程序存储器(ROM)地址空间,ROM是用来存放编
16、好的程序和表格常数。89C51有64K的Flash ROM。ROM通过16位的程序计数器(PC)寻址,寻址空间为64K。但不能使程序从ROM中转移到数据存储器(RAM)中去。,2.3.1 程序存储器(ROM)地址空间, 用户角度 1、片内、外统一编址的64K程序存储器地址空间。CPU访问片内、片外ROM指令用“MOVC。 2、64K的片外数据存储器地址空间。访问片外RAM指令用“MOVX”。 3、256字节的片内数据存储器地址空间。访问片内RAM指令用“MOV”。 上述三个存储空间地址是重叠的,89C51的指令系统采用不同的数据传送指令符号。,2.3.1 程序存储器(ROM)地址空间, 寻址方
17、式: 1、当 EA=“1”时: 89C51的PC在00000FFFH范围内执行片内ROM中的程 序,当指令地址超过0FFFH 后就自动转向片外ROM中 取指令。,2、当 EA=”0”时: 89C51片内ROM不起作用,CPU只能从片ROM中取指令。可以从 0000H 开始寻址。由于8031片内不带ROM ,所以使用时必须 EA=”0”。,3、89C51从片内ROM和片外ROM取指的速度相同。,2.3.1 程序存储器(ROM)地址空间,程序存储器中留有一些存储单元给系统使用,如下表:,P26. 表2-2 保留的存储单元,ROM中地址从0000H0002H共3个单元留给单片机上电复位后的引导程序。
18、 89C51上电复位后PC的内容为0000H,故CPU总是从ROM中的0000H单元开始执行程序。,放“跳转指令”,2.3.1 程序存储器(ROM)地址空间,P26. 表2-3 中断矢量地址表,例如,当外部中断引脚INT0(P3.2)有效,即P3.1=0时,即引起中断申请,CPU响应中断后自动将地址0030H(INT0中断的入口矢量地址)装入到PC中,则程序就自动转向到0003H单元执行。,2.3.1 程序存储器(ROM)地址空间,执行外部程序(即访问片外ROM时)时的硬件连接如图2-5所示。指令:“MOVC”。,图中,单片机EA引脚接地代表何意?,2.3.2 数据存储器(RAM)地址空间,R
19、AM用来存放运算的中间结果、数据暂存和缓冲、标志位等。 片内RAM的存储空间为256B,分为:低128B(地址:00H7FH),是真正的RAM区;高128B(地址:80HFFH),是特殊功能寄存器区(SFR)。,2.3.2 数据存储器(RAM)地址空间,1. 片内RAM 工作寄存器区:(4组,每一 组有8个工作寄存器R0R7,可通过 PSW中的RS1、RS0设置加于选择) 字节地址:00H1FH 位寻址区: 字节地址:20H2FH 位地址为:00H7FH 数据缓冲区/堆栈区: 字节地址:00H7FH 一般使用30H7FH,低128B,2. 片外RAM,89C51片内RAM只有128B,若需要扩
20、展片外RAM,则可外接静态RAM芯片如6116(2K)、6264(8K)、62256(32K)。硬件连接如图2-6所示。 CPU访问片外RAM时,用指令:“MOVX”。当执行该指令时,RD和WR的引脚信号有效。,图中,89C51的引脚EA接高电平(即电源+Vcc)是何含义?,3. 特殊功能寄存器SFR,占用字节地址:80HFFH 位寻址寄存器: 其字节地址可被8整除。 专用寄存器: A、B、PSW、DPTR、SP I/O接口寄存器: P0、P1、P2、P3、SBUF、 TMOD、TCON、SCON ,高128B,访问SFR只能用直接寻址方式。,部分特殊功能寄存器,程序状态寄存器PSW(D0H)
21、 格式:,进位位标志位,半进位标志位,用户标志位,工作寄存器组选择控制位,奇偶校验标志位,未定义,溢出标志位,复习:第1章讲过“进位”与“溢出”,进位,例如在加法运算中,每位数等于基数时向前一位数进一 ,这叫进位 溢出是指有符号数的运算结果超出了数(补码) -128+127的表示范围,破坏了符号位. 如:105+50=69H+32H=155。,CY(PSW.7)进位/借位标志位。在执行加(减)运算时,若最高位(第7位)向前有进位(或借位)位,则CY自动置1;否则CY自动清0。它也是布尔处理器的位累加器,可用于布尔操作。 AC(PSW.6)半进位/借位标志位。在执行加(减)运算时,第3位向第4位
22、有进位(或借位),则AC自动置1,否则AC自动清0。 F0 (PSW.5)可由用户定义的标志位。,OV (PSW.2)溢出标志位。,累加器在进行有符号数(-128+127)运算时即进行补码运算时有溢出(超出-128+127范围)时,OV自动置1;无溢出时OV自动清0 。 在MCS-51中,无符号数进行乘法运算时,若两数的乘积超过255时,OV=1,否则为0;当执行除法运算时,若除数为0时,则OV=1,否则OV为时0。(P66.),如何判断是否溢出,例如:有符号数:+105+(+50)=+155。 69H+32H=9BH,在“伟福”编释软件中,验证OV位:69H+32H ORG 0000H ;从
23、0000H单元放跳转指令(即) AJMP L1 ;AJMP L1) ORG 0030H ;从0030H开始存放下面的第1条指令 L1:MOV A,#69H ;69H存入累加器A中 ADD A,#32H ;69H+32H的结果存入到A中 SJMP $ ;原地踏步 END,若无符号数: 105+50=155。 69H+32H=9BH=916+11=155。 计算是正确的。 虽然OV=1(溢出),可不予理会。 因为这个溢出指的是有符号数: +105+(+50)=+155,运算时的溢出。,Proteus验证实验,两个补码数相加,若有溢出,则黄LED亮;若无溢出,则绿LED亮。试画出硬件电路图并编写程序
24、,并在Proteus ISIS中进行仿真验证。,ORG 0000H AJMP MAIN ORG 0050H MAIN:SETB P1.1 SETB P1.5 MOV A,#XXH ADD A,#XXH JB OV,L1 ;若OV=1,转L1 CLR P1.5 ;OV=0,0P1.5,即绿LED亮 AJMP L2 L1:CLR P1.1 ;溢出, 0P1.1,即黄LED亮 L2:SJMP $ END,如:69H+32H, 即真值:+150(+50); 53H+21H, 即真值:+83+(+33); 7AH+0B2H, 即真值:+122+(-78)。,ORG 0000H AJMP MAIN ORG
25、 0050H MAIN:SETB P1.1 SETB P1.5 MOV A,#XXH ADD A,#XXH MOV 20H,A ;结果存入20H单元中 JB OV,L1 CLR P1.5 AJMP L2 L1:CLR P1.1 MOV R0,#21H MOV A,20H ANL A,#0FH MOV R0,A ;低4位存入21H单元中 INC R0 MOV A,20H SWAP A ANL A,#0FH MOV R0,A ;高4位存入22H单元中 MOV DPTR,#TAB MOV A,22H MOVC A,A+DPTR MOV P2,A ;显示十位 SETB P1.6 MOV A,21H M
26、OVC A,A+DPTR MOV P3,A ;显示个位 SETB P1.7 L2:SJMP $ TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H DB 80H,90H,88H,83H,0C6H,0A1H,86H,8EH,0BFH,0FFH END,若要将计算结果(16进制)显示出来。则需把计算值进行拆字(P95例4-3),再由7段LDE数码管显示(P241)。,RS1 (PSW.4)、RS0(PSW.3)工作寄存器组选择位。 PSW.1 未定义。 P (PSW.0)奇偶标志位。 P=1表示累加器中“1”的个数为奇数 P=0表示累加器中“1”的个数为偶数 C
27、PU随时监视着ACC中的“1”的个数,并反映在PSW中。,部分特殊功能寄存器,表2-8 RS0,RS1的组合关系,部分特殊功能寄存器,栈指针SP(81H) SP的内容可指向89C51片内00H7FH RAM的任何单元。 系统复位后,SP初始化为07H,即指向07H的RAM单 元。,堆栈 “先进后出”原则 堆栈的操作:PUSH(数据压入);POP(数据弹出)。,在使用堆栈之前,先给SP赋值,即规定堆栈的起始位置,称为“堆底”。 89C51的堆栈指针SP是一个双向计数器:进栈时,SP的内容自动+1;出栈时自动 -1。,堆栈的操作,MOV SP,#60H,堆栈区,堆栈是片内RAM中临时开辟的暂存区,
28、堆栈主要是为子程序调用和中断操作而设立的。其具体功能有两种:保护现场和保护断点。计算机无论是执行子程序还是执行中断操作最后都要返回主程序,因此计算机在转去执行这些程序之前,必须考虑其返回问题。这就要预先把主程序的断点保护起来,为程序的正确返回作准备。那么,把断点和现场内容保护在哪里?这就必须保护在堆栈内,用户可以指定内部RAM的最高若干字节做为堆栈区。在初始化程序中,可以对堆栈指针SP写入栈底的地址,于是从SP指定的栈底直到7FH单元都是堆栈区。例如MOV SP , # 5FH。那么,从60H7FH单元都是堆栈区。,部分特殊功能寄存器, 数据指针DPTR(83H、82H) DPTR是一个16位
29、的特殊功能寄存器,其高位字节(高8位) 寄存器用DPH表示(地址为:83H),低位字节(低8位) 寄存器用DPL表示(地址为:82H)。 DPTR既可以作为一个16位寄存器使用,也可以作为两个 独立的8位寄存器DPH和DPL来使用。 DPTR主要用来存放16位的地址,以便对64K片外RAM 作间接寻址。,2.4 CPU时序,2.4.1 片内振荡器及时钟信号的产生 89C51内部有一个高增益反相放大器,用来构成振荡器。在XTAL1引脚(19)和XTAL2引脚(18)间跨接一个石英晶体(即晶振)及两个电容(30皮法左右)就可构成稳定的自激振荡器。 如果用多片89C51同时工作,则一般采用外部振荡源
30、方式,以便于同步工作。此时, XTAL2引脚(18)悬空。,而XTAL1引脚(19)作外部时钟信号输入的输入端。, 时钟,时钟频率: 范围要求在1.2MHz24MHz 之间。,基本时序单位: 1.振荡周期:晶振的振荡周期。 2.状态周期:振荡周期2分频,也称时钟周期。 3.机器周期:完成一个基本操作所需要的时间。一个机器周期包括12 个时钟周期。 4.指令周期:执行一条指令的时间。 以机器周期为单位:单周期、双周期和四周期指令。 INTEL对每一条指令都给出了它的指令周期数, MCS-51单片机的所有指令中,有一些完成得比较快,只要一个机器周期就行了,有一些完成得比较慢,得要2个机器周期,还有
31、两条指令要4个机器周期才行。, 时钟,2.4 CPU取指、执指时序,CPU取指、执指时序,2.5 复位及复位电路,2.5.1 复位操作 复位是单片机的初始化操作。主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。,表2-9 一些寄存器的复位状态,2.5.2 复位信号及其产生,MCS-51单片机复位(RST高电平2个机器周期) 任何单片机在工作之前都要有个复位的过程,复位是什么意思呢?对单片机来说,是程序还没有开始执行,是在做准备工作-初始状态。显然,准备工作不需要太长的时间,复位需要不少于24个时钟周期的时间就可以了。,2.5.3 复位电路,只要在单片机的RST引脚上加
32、上高电平(2个机器周期),就可以了。为了达到这个要求,可以用很多种方法,右图为其中一种方法。,2.6 89C51单片机的低功耗工作方式,89C51提供二种节电方式,即空闲(待机)方式和掉电(停机)方式。它们是通过对电源控制寄存器PCON的“PD”位和“IDL”位的设置来实现的。,2.6 89C51单片机的低功耗工作方式,例如,若使89C51进入“空闲方式”,则只要设置IDL=1。 指令为:MOV PCON,#0000 0001B 或写成:MOV PCON,#01H,如若使89C51进入“停机方式”,则要设置PD=1。 指令为:MOV PCON,#0000 0010B 或写成:MOV PCON,
33、#02H,2.6 89C51单片机的低功耗工作方式,注意:如果PD位和IDL位同时置“1”, 即指令:MOV PCON,#0000 0011B (或:MOV PCON,#03H )时, 则PD优先(即为停机方式优先)。 当89C51复位时,PCON的值为:0XXX0000B。,空闲(待机)方式的特点,系统在空闲工作方式时,CPU内部状态维持不变,即堆栈指针SP、程序计数器PC、程序状态字PSW、累加器ACC所有的内容不变,端口状态不变。ALE和PSEN保持高电平。 系统退出空闲方式的方法:任何的中断请求被响应都可由硬件使IDL位清0,使系统中止空闲工作方式;由硬件复位(即按复位键)。,89C5
34、1进入空闲方式时,CPU此时得不到时钟信号,但中断、串行口、定时器等仍在时钟控制下正常运行。,停机(掉电)方式的特点,89C51在停机方式时,内部振荡器停止工作(即没有振荡时钟),故所有的功能部件都停止工作。内部RAM区和SFR中的内容被保留,而端口的输出状态值都保存在对应的SFR中。ALE和PSEN都为低电平。 退出停机方式的唯一方法:硬件复位。复位后所有SFR中的内容被初始化,但片内RAM区的数据不变。 在停机工作方式下,Vcc可降到2V,退出掉电方式之前,Vcc必须恢复正常的工作电压值。,空闲方式和停机方式的原理,2.7 输入/输出端口结构,场效应管(复习) 当G = 0 时,场效应管截
35、止; 当G = 1 时,场效应管导通。,2.7.1 P0口,下图为P0口的某位P0.n(n=07)结构图,它由一个输出锁存器、 两个三态输入缓冲器和输出驱动电路及控制电路组成。 P0口既可以作为I/O用,也可以作为地址/数据线用。,三态缓冲器,与门,多路开关,一、P0口作为一般I/O口使用,P口用作输出口时 CPU发出控制电平“0”(即:硬件自动使“控制” =0)封锁“与门”,将输出上 拉场效应管T1截止,同时使多路开关MUX把锁存器的输出端 Q与场效应管T2 栅极接通。, P0口用作输入口时,输入时-分读引脚或读锁存器。 读引脚:由传送指令(MOV)实现。 下面的缓冲器2用于读端口引脚数据,
36、当执行一条由端口输入的指令时,读脉冲把三态缓冲器2打开,这样端口引脚上的数据经过缓冲器读入到内部总线。,第1步:输入时,先向锁存器“写”1。指令为:SETB P0.n 或: MOV P0,#0FFH,1,1,0,0,T2截止,第2步:引脚信号,“读引脚”信号有效,缓冲器2打开, P0口用作输入口时, 输入时-分读引脚或读锁存器 读锁存器:有些指令 如:ANL P0,A 称为“读-修改-写” 指令, 需要读锁存器。 缓冲器1用于读端口锁存器数据。,原因:,如果此时该端口的负载恰是一个晶体管基极,且原端口输出值 为1,那么导通了的PN结会把端口引脚高电平拉低;若此时直 接读端口引脚信号,将会把原输
37、出的“1”电平误读为“0”电平。 现采用读输出锁存器代替读引脚,图中,上面的三态缓冲器就 为读锁存器Q端信号而设,读输出锁存器可避免上述可能发生 的错误。,准双向口,从图中可以看出,在读入端口数据时,由于输出驱动FET并接 在引脚上,如果T2导通,就会将输入的高电平拉成低电平,产 生误读。所以在端口进行输入操作前,应先向端口锁存器写 “1”,使T2截止,引脚处于悬浮状态,变为高阻抗输入。这就 是所谓的准双向口。,二、 P0口作为地址/数据总线使用,在系统扩展时,P0端口作为地址/数据总线使用时。 执行“MOVX”指令或 EA =0 时执行“MOVC”指令时,内部硬件自动使“控制” =1。,P0口用作输出地址/数据总线。, P0引脚输出地址/输入数据,输入信号是从引脚通过输入缓冲器进入内部总线。 此时,CPU自动使MUX向下,并向P0口写“1”,“读引脚”控制 信号有效,下面的缓冲器打开,外部数据读入内部总线。,2.7.2 P1口,它由一个输出锁存器、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家庭农场雇工协议书范本
- 购买临时合同协议书范本
- 辣椒代加工协议书范本
- 入股分红的协议书范本
- 甲状腺各项检查的临床意义以及各种疾病术后处理
- 肺部磨玻璃影结节的处理与策略2讲课文档
- 化学原料生产数据挖掘与环境保护政策适应性评估考核试卷
- 智能家居与卫生器具的集成解决方案研究考核试卷
- 施工现场文明施工档案管理考核试卷
- 耐候性测试对半导体照明器件电磁兼容性的影响考核试卷
- 2025榆林能源集团有限公司招聘工作人员(473人)笔试参考题库附带答案详解
- 员工如何做到降本增效培训
- JJF 2216-2025电磁流量计在线校准规范
- 2025年安徽合肥庐阳国有资产投资控股集团招聘笔试参考题库含答案解析
- 医务人员临床用血和无偿献血知识培训制度
- 老年大学各项规章制度
- 个人房屋租赁合同电子版2025
- 《家族企业人力资源管理探究-以某集团为例》15000字【论文】
- 化工工程设计中的重点难点及解决方案
- GB/T 45164-2024熔模铸件缺陷分类及命名
- 社会责任组织架构及职责
评论
0/150
提交评论