




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第9 9章章 AT89C51AT89C51扩展扩展I/OI/O接口的设计接口的设计9.1 I/O9.1 I/O接口扩展概述接口扩展概述由第由第8 8章可知,扩展章可知,扩展I/OI/O接口与扩展存储器一样,都属于系统接口与扩展存储器一样,都属于系统扩展的内容。那么扩展的内容。那么AT89C51AT89C51单片机扩展单片机扩展I/OI/O接口接口应该具有哪些应该具有哪些功能呢?功能呢? 9.1.1 I/O9.1.1 I/O接口的功能接口的功能I/OI/O接口电路应满足以下要求:接口电路应满足以下要求:1.1.实现和不同外设的速度匹配实现和不同外设的速度匹配大多数的外设的速度很慢,无法和大多数
2、的外设的速度很慢,无法和s s量级的单片机速量级的单片机速度相比度相比。单片机只有在单片机只有在确认确认外设已为数据传送做好准备的前提外设已为数据传送做好准备的前提下才能进行下才能进行I/OI/O操作。操作。想知道外设是否准备好想知道外设是否准备好,需需I/OI/O接口电路与外设之间接口电路与外设之间传送传送状态信息状态信息。 2. 2. 输出数据锁存输出数据锁存由于由于单片机工作速度快,单片机工作速度快,数据在数据总线上保留的时间十分短数据在数据总线上保留的时间十分短 暂,暂,无法满足慢速外设的数据接收无法满足慢速外设的数据接收。I/OI/O电路应具有数据输电路应具有数据输 出锁存器,以保证
3、接收设备接出锁存器,以保证接收设备接 收。收。3. 3. 输入数据三态缓冲输入数据三态缓冲输入设备向单片机输入数据时,但输入设备向单片机输入数据时,但数据总线上面可能数据总线上面可能“挂挂”有有多多 个数据源个数据源,为不发生冲突,为不发生冲突,只允许当前正在进行数据传送的只允许当前正在进行数据传送的 数据源使用数据总线,其余的应处于隔离状态。数据源使用数据总线,其余的应处于隔离状态。 9.1.2 I/O9.1.2 I/O端口的编址端口的编址首先搞清楚首先搞清楚I/OI/O接口接口(InterfaceInterface)和)和I/OI/O端口端口(PortPort)的概念。)的概念。I/OI/
4、O端口:端口:简称简称I/OI/O口口,指具有端口地址的寄存器或缓冲器。,指具有端口地址的寄存器或缓冲器。I/OI/O接口:接口:是指单片机与外设间的是指单片机与外设间的I/OI/O接口芯片。接口芯片。一个一个I/OI/O接口芯片可以有多个接口芯片可以有多个I/OI/O端口,分为:端口,分为: (1 1)数据口数据口(2 2)命令口命令口(3 3)状态口状态口I/OI/O端口编址端口编址是给所有是给所有I/OI/O接口中的寄存器接口中的寄存器编址编址。I/OI/O端口编址两种方式端口编址两种方式:独立编址独立编址与与统一编址统一编址。1 1独立编址独立编址I/OI/O寄存器地址空间和存储器地址
5、空间寄存器地址空间和存储器地址空间分开编址分开编址,但,但 需专门读写需专门读写I/OI/O的指令和控制信号。的指令和控制信号。2 2统一编址统一编址I/OI/O寄存器与数据存储器单元同等对待寄存器与数据存储器单元同等对待,统一编址。,统一编址。 不需要专门的不需要专门的I/OI/O指令,直接使用访问数据存储器指令,直接使用访问数据存储器 的指令进行的指令进行I/OI/O操作,简单、方便且功能强。操作,简单、方便且功能强。AT89C51AT89C51使用使用统一编址统一编址的方式的方式 每一接口芯片中的每一接口芯片中的一个功能寄存器(端口)的地址一个功能寄存器(端口)的地址, ,就相当于就相当
6、于一个一个RAMRAM单元单元。9.1.3 I/O9.1.3 I/O数据的几种传送方式数据的几种传送方式为实现和不同的外设的为实现和不同的外设的速度匹配速度匹配,I/OI/O接口必须根据不同外设接口必须根据不同外设选择恰当的选择恰当的I/OI/O数据传送方式。数据传送方式。I/OI/O数据传送的几种传送方式是:数据传送的几种传送方式是: (1 1)同步传送()同步传送(2 2)查询传送()查询传送(3 3)中断传送。)中断传送。1.1.同步传送方式同步传送方式当外设速度和单片机的速度相比拟时,常采用同步传送方当外设速度和单片机的速度相比拟时,常采用同步传送方 式,式,最典型的同步传送最典型的同
7、步传送就是单片机和外部数据存储器之就是单片机和外部数据存储器之 间的数据传送。间的数据传送。2.2.查询传送方式查询传送方式查询外设查询外设“准备好准备好”后,再进行数据传送。后,再进行数据传送。 优点:优点:通用性好,硬件连线和查询程序十分简单,通用性好,硬件连线和查询程序十分简单, 缺点:缺点:效率不高。效率不高。为提高效率,通常采用中断传送方式。为提高效率,通常采用中断传送方式。3.3.中断传送方式中断传送方式外设准备好后,发中断请求,单片机进入与外设数据传送的外设准备好后,发中断请求,单片机进入与外设数据传送的 中断服务程序,进行数据的传送。中断服务程序,进行数据的传送。中断服务完成后
8、又返回主程序继续执行。中断服务完成后又返回主程序继续执行。工作效率高。工作效率高。如何实现如何实现I/OI/O接口的扩展。接口的扩展。IntelIntel公司公司的的配套可编程配套可编程I/OI/O接口接口 芯片芯片的种类齐全,为扩展的种类齐全,为扩展I/OI/O接口提供了很大的方便。接口提供了很大的方便。9.1.4 I/O9.1.4 I/O接口电路接口电路常用的外围常用的外围I/OI/O接口芯片有:接口芯片有: (1 1)82C5582C55:可编程的通用并行接口电路(:可编程的通用并行接口电路(3 3个个8 8位位I/OI/O口)口)(2 2)81C5581C55:可编程的:可编程的IO/
9、RAMIO/RAM扩展接口电路(扩展接口电路(2 2个个8 8位位I/OI/O口口,1,1个个6 6位位I/OI/O口口, , 256256个个RAMRAM字节单元,字节单元,1 1个个1414位的减法定时位的减法定时器器/ /计数器计数器)。)。可与可与89C5189C51单片机单片机直接连接直接连接,接口逻辑十分简单。,接口逻辑十分简单。9.2 AT89C519.2 AT89C51与可编程并行与可编程并行I/OI/O芯片芯片82C5582C55的接口设计的接口设计9.2.1 82C559.2.1 82C55芯片介绍芯片介绍82C5582C55是是IntelIntel公司生产的公司生产的可编
10、程可编程并行并行I/OI/O接口芯片,具有接口芯片,具有3 3个个 8 8位位的的并行并行I/OI/O口口,3 3种工作方式种工作方式,可通过编程改变其功,可通过编程改变其功 能,因而能,因而使用灵活方便,通用性强使用灵活方便,通用性强。1.1.引脚说明引脚说明 4040只引脚,双列直插式封装,见只引脚,双列直插式封装,见图图9-19-1。图图9-1引脚功能:引脚功能:D7D7D0D0:三态双向数据线,与单片机数据总线连接三态双向数据线,与单片机数据总线连接CSCS* *:片选信号线,低电平有效,表示本芯片被选中片选信号线,低电平有效,表示本芯片被选中RDRD* *:读出信号线,控制读出信号线
11、,控制8255A8255A中数据的读出高中数据的读出高WRWR* *:写入信号线,控制向写入信号线,控制向8255A8255A数据的写入。数据的写入。VccVcc:+5V+5V电源电源PA7PA7PA0PA0:A A口输入口输入/ /输出线。输出线。PB7PB7PB0PB0:B B口输入口输入/ /输出线输出线PC7PC7PC0PC0:C C口输入口输入/ /输出线输出线A1A1、A0A0:地址线,用来选择地址线,用来选择82C5582C55内部的内部的4 4个端口。个端口。RESETRESET:复位引脚,高电平有效复位引脚,高电平有效 2.2.内部结构内部结构图图9-2(1 1)端口)端口P
12、APA、PBPB、PCPC功能和结构上有些差异功能和结构上有些差异 PA PA口口:输出锁存和缓冲;输入锁存:输出锁存和缓冲;输入锁存 PB PB口口:输出锁存和缓冲;输入缓冲:输出锁存和缓冲;输入缓冲 PC PC口口:输出锁存;数据输入缓冲:输出锁存;数据输入缓冲 PC PC口可在软件的控制下,口可在软件的控制下,分为两个分为两个4 4位端口位端口,作为,作为PAPA口、口、PBPB口选通方式操作时的状态控制信号。口选通方式操作时的状态控制信号。(2)A(2)A组和组和B B组控制电路组控制电路A A组:组:PAPA口和口和PCPC口的上半部(口的上半部(PC7PC7PC4PC4););B
13、B组:组:PBPB口和口和PCPC口的下半部(口的下半部(PC3PC3PC0PC0), ,可根据可根据“命令字命令字”对对 PCPC口口按位按位“置置1”1”或或“清清0”0”。(3)(3)数据总线缓冲器数据总线缓冲器 三态双向,作为三态双向,作为8255A8255A与单片机数据线之间接口,传送数与单片机数据线之间接口,传送数据、指令、控制命令及外部状态信息。据、指令、控制命令及外部状态信息。(4)(4)读读/ /写控制逻辑电路线写控制逻辑电路线 该电路接收该电路接收CPUCPU发来的控制信号、发来的控制信号、RESETRESET、地址信号、地址信号A1A1、A0A0等。对端口进行读写。等。对
14、端口进行读写。各端口的工作状态与控制信号的关系各端口的工作状态与控制信号的关系如如表表9-19-1所示。所示。表表9-1 82C559-1 82C55端口工作状态选择端口工作状态选择A1A1A0A0RDRD* *WRWR* *CSCS* *工作状态工作状态0 00 00 01 10 0读端口读端口A A:A A口数据口数据数据总线数据总线读端口读端口B B:B B口数据口数据数据总线数据总线 读端口读端口C C:C C口数据口数据数据总线数据总线0 01 10 01 10 01 10 00 01 10 00 00 01 10 00 0写端口写端口A A:总线数据总线数据A A口口写端口写端口B
15、 B:总线数据总线数据B B口口写端口写端口C C:总线数据总线数据C C口口写控制字:写控制字:总线数据总线数据控制字寄控制字寄 存器存器0 01 11 10 00 01 10 01 10 00 01 11 11 10 00 01 1数据总线为三态数据总线为三态1 11 10 01 10 0非法状态非法状态1 11 10 0数据总线为三态数据总线为三态9.2.2 9.2.2 工作方式选择控制字及工作方式选择控制字及C C口置位口置位/ /复位控制字复位控制字82C5582C55有三种工作方式:有三种工作方式: (1) (1) 方式方式0 0:基本输入输出;基本输入输出;(2) (2) 方式方
16、式1 1:选通输入输出;选通输入输出;(3) (3) 方式方式2 2:双向传送(仅双向传送(仅A A口有)。口有)。三种工作方式由方式控制字来决定。三种工作方式由方式控制字来决定。控制字格式如下。控制字格式如下。1.1.工作方式选择控制字工作方式选择控制字图图9-3C C口上半部分(口上半部分(PC7PC7PC4PC4)随)随A A口称为口称为A A组组,C C口下半部分(口下半部分(PC3PC3PC0PC0)随)随B B口称为口称为B B组组。 其中其中A A口口可工作于方式可工作于方式0 0、1 1、和、和2 2,而,而B B口口只能工作在方式只能工作在方式0 0和和方式方式1 1。例例9
17、-1 写入工作方式控制字写入工作方式控制字95H95H可将可将8255A8255A编程为:编程为:A A口口方式方式0 0输入输入,B B口口方式方式1 1输出输出,C C口的上半口的上半 部分部分(PC7PC7 PC4PC4)输出,)输出,C C口的下半部分口的下半部分(PC3PC3PC0PC0)输入。)输入。2. C2. C口按位置位口按位置位/ /复位控制字复位控制字可对可对C C口口8 8位中的任一位置位中的任一位置“1”1”或清或清“0”0”。用于。用于位控位控。图图9-4例例9-2 控制字控制字07H07H写入控制口,置写入控制口,置“1” PC31” PC3;08H08H写入控制
18、写入控制 口,清口,清“0” PC40” PC4。9.2.3 82C559.2.3 82C55的三种工作方式的三种工作方式1.1.方式方式0 0基本的输入基本的输入/ /输出方式。输出方式。外设的外设的I/OI/O数据可在数据可在82C5582C55的各端口得到锁存和缓冲的各端口得到锁存和缓冲AT89C51AT89C51可对可对82C5582C55进行数据的进行数据的无条件传送无条件传送 例如例如: :从口线从口线读入一组开关状态读入一组开关状态,向端口输出数字量,向端口输出数字量,控制控制一组指示灯的亮、灭。一组指示灯的亮、灭。不需要联络信号不需要联络信号,基本功能为:基本功能为:(1 1)
19、具有两个)具有两个8 8位端口(位端口(A A、B B)和两个)和两个4 4位端口(位端口(C C的上半部的上半部分和下半部分)。分和下半部分)。(2 2)任一个端口都可以设定为输入或输出,各端口的输入、)任一个端口都可以设定为输入或输出,各端口的输入、输出可构成输出可构成1616种组合。种组合。(3 3)数据输出锁存,输入不锁存。)数据输出锁存,输入不锁存。例例9-39-3 假设假设82C5582C55的的控制字寄存器地址控制字寄存器地址为为FF7FHFF7FH,则令,则令A A口和口和 C C口的高口的高4 4位工作在方式位工作在方式0 0输出,输出, B B口和口和C C口的低口的低4
20、4位工位工 作于方式作于方式0 0输入输入,初始化程序:初始化程序:MOV DPTRMOV DPTR,#0FF7FH #0FF7FH ;控制字寄存器地址送;控制字寄存器地址送DPTR DPTR MOV AMOV A,#83H #83H ;方式控制字;方式控制字83H83H送送A AMOVX DPTRMOVX DPTR,A A ;83H83H送控制字寄存器送控制字寄存器2. 2. 方式方式1 1 选通输入选通输入/ /输出工作方式。输出工作方式。A A口和口和B B口通常用于口通常用于I/OI/O数据传送,数据传送,C C口用作口用作A A口和口和B B口的联络线,以中断方式传送数据。口的联络线
21、,以中断方式传送数据。 (1) (1) 方式方式1 1输入输入 控制联络信号如控制联络信号如图图9-59-5所示,所示,STBSTB* *与与IBFIBF构成了一对应答联构成了一对应答联络信号络信号,联络信号的功能如下:联络信号的功能如下:图图9-5STBSTB* *:选通输入,是由输入外设送来的输入信号。选通输入,是由输入外设送来的输入信号。IBFIBF:输入缓冲器满,高电平有效。表示数据已送入输入缓冲器满,高电平有效。表示数据已送入 8255A8255A的输入锁存器,它由的输入锁存器,它由STBSTB* *信号的下降沿置信号的下降沿置 位,由信号的上升沿使其复位位,由信号的上升沿使其复位I
22、NTRINTR:中断请求信号,高电平有效。由中断请求信号,高电平有效。由8255A8255A输出,输出, 向单片机发中断请求。向单片机发中断请求。INTE AINTE A:A A口中断允许,由口中断允许,由PC4PC4控制,控制, INTE BINTE B:B B口中断允许,由口中断允许,由PC2PC2控制。控制。A A口的方式口的方式1 1输入输入工作方式见工作方式见图图9-69-6。图图9-6(2 2)方式)方式1 1输出输出 如如图图9-79-7所示。所示。OBFOBF* *与与ACKACK* *构成了一对应答联络信号构成了一对应答联络信号,各各信号的功能如下:信号的功能如下:OBFOB
23、F* *:输出缓冲器满信号,输出缓冲器满信号,82C5582C55给外设的联络信号,外设可给外设的联络信号,外设可以将数据取走。以将数据取走。ACKACK* *:外设的响应信号,外设已将数据取走。外设的响应信号,外设已将数据取走。INTRINTR* *:中断请求信号。表示该数据已被外设取走,中断请求信号。表示该数据已被外设取走, 请求单片机继续输出下一个数据。请求单片机继续输出下一个数据。INTE AINTE A:中断允许,由:中断允许,由PC6PC6控制。控制。INTE BINTE B:中断允许,由:中断允许,由PC2PC2控制。控制。图图9-7B B口的口的方式方式1 1输出输出如如图图9
24、-89-8所示:所示:图图9-83.3.方式方式2 2只有只有A A口才能设定为方式口才能设定为方式2 2。图图9-99-9为方式为方式2 2工作示意图。工作示意图。在方式在方式2 2下,下,PA7PA7PA0PA0为双向为双向I/OI/O总线。总线。 当当输入输入时,时,PA7PA7PA0PA0受受STBASTBA* *和和IBFAIBFA控制,其工作过程和控制,其工作过程和方式方式1 1输入时相同;输入时相同; 当当输出输出时,时,PA7PA7PA0PA0受受OBFAOBFA* *、ACKAACKA* *控制,其工作过程和方控制,其工作过程和方式式1 1输出时相同。输出时相同。图图9-99
25、.2.4 AT89C519.2.4 AT89C51单片机和单片机和82C5582C55的接口的接口1.1.硬件接口电路硬件接口电路 如如图图9-109-10是是80318031扩展扩展1 1片片8255A8255A的电路图。的电路图。74LS37374LS373是地是地址锁存器,址锁存器,P0.1P0.1、P0.0P0.0经经74LS37374LS373与与8255A8255A的地址线的地址线A1A1、A0A0连接;连接; P0.7P0.7经经74LS37374LS373与片选端相连,其他地址线悬空。与片选端相连,其他地址线悬空。2.2.确定确定82C5582C55端口地址端口地址图图9-10
26、9-10中中82C5582C55各端口寄存器的地址为:各端口寄存器的地址为:A A口:口: FF7CHFF7CHB B口:口: FF7DHFF7DHC C口:口: FF7EHFF7EH控制寄存器:控制寄存器: FF7FHFF7FH图图9-103.3.软件编程软件编程例例9-49-4 要求要求82C5582C55工作在方式工作在方式0 0,且,且A A口作为输入,口作为输入,B B口、口、 C C口作为输出,口作为输出,程序如下:程序如下:MOV MOV A,#90H A,#90H ;A A口方式口方式0 0输入,输入,B B口、口、 ;C C口输出的控制字送口输出的控制字送A AMOVMOVD
27、PTR,#0FF7FH DPTR,#0FF7FH ;控制寄存器地址;控制寄存器地址DPTRDPTRMOVX DPTR,AMOVX DPTR,A ;方式控制字;方式控制字控制寄存器控制寄存器MOVMOVDPTR,#0FF7CH DPTR,#0FF7CH ;A A口地址口地址DPTRDPTRMOVX A,DPTRMOVX A,DPTR ;从;从A A口读数据口读数据MOV DPTR,#0FF7DH MOV DPTR,#0FF7DH ;B B口地址口地址DPTRDPTRMOV MOV A,#DATA1A,#DATA1 ;要输出的数据;要输出的数据DATA1ADATA1AMOVX DPTR,A MOV
28、X DPTR,A ;将;将DATA1DATA1送送B B口输出口输出MOV DPTR,#0FF7EH MOV DPTR,#0FF7EH ;C C口地址口地址DPTRDPTRMOV A,#DATA2MOV A,#DATA2 ;DATA2ADATA2AMOVX DPTR,AMOVX DPTR,A ;将数据;将数据DATA2DATA2送送C C口输出口输出例例9-59-5 对端口对端口C C的置位的置位/ /复位。复位。把把PC5PC5置位,控制字为置位,控制字为0BH 0BH MOV R1,#7FH MOV R1,#7FH ;控制口地址;控制口地址R1R1 MOVMOV A,#0BH A,#0BH
29、 ;控制字;控制字A AMOVX R1,A MOVX R1,A ;控制字;控制字控制口,控制口,PC5=1PC5=1把把PC5PC5复位,控制字为复位,控制字为0AH0AHMOV R1,#7FH MOV R1,#7FH ;控制口地址;控制口地址R1R1 MOV A,#0AH MOV A,#0AH ;控制字;控制字A AMOVX R1,A MOVX R1,A ;控制字;控制字控制口,控制口,PC5=0PC5=09.3 89C519.3 89C51与可编程与可编程RAM/IORAM/IO芯片芯片81C5581C55的接口的接口 Intel 81C55Intel 81C55芯片包含芯片包含256B2
30、56B的的RAMRAM存储器存储器(静态),(静态),RAMRAM的存的存取时间为取时间为400ns400ns,两个可编程的两个可编程的8 8位并行口位并行口PAPA和和PBPB,一个可,一个可编程的编程的6 6位并行口位并行口PCPC,以及一个,以及一个1414位的位的减减1 1计数器计数器。PAPA口和口和PBPB口可工作于基本输入口可工作于基本输入/ /输出方式(同输出方式(同82C5582C55的方式的方式0 0)或选通输入或选通输入/ /输出方式(同输出方式(同82C5582C55的方式的方式1 1)。)。81C5581C55可直接与可直接与AT89C51AT89C51单片机相连,不
31、需要增加任何硬件逻单片机相连,不需要增加任何硬件逻辑电路。辑电路。由于由于81C5581C55片内集成有片内集成有I/OI/O口、口、RAMRAM和减和减1 1计数器,计数器,因而是因而是AT89C51AT89C51单片机系统中经常被选用的单片机系统中经常被选用的I/OI/O接口芯片之接口芯片之一。一。9.3.1 81C559.3.1 81C55芯片介绍芯片介绍1.1.8155H8155H的结构的结构如如图图9-119-11所示。所示。图图9-112.8155H2.8155H的引脚功能的引脚功能8155H8155H的引脚功能的引脚功能(1 1)AD7AD7AD0AD0(8 8条)条)(2 2)
32、I/OI/O总线总线(2222条)条)(3 3)控制总线()控制总线(8 8条)条) RESETRESET:复位输入线复位输入线 CECE* *和和IO/MIO/M* * RD RD* *和和WRWR* * ALE ALE:地址锁存允许地址锁存允许 TIMERINTIMERIN和和TIMEROUTTIMEROUT* *:(4 4)电源线()电源线(2 2条)条) VccVcc:+5V+5V电源电源 VssVss:地地图图9-12CECE* *IO/MIO/M* *A7A7A6A6A5A5A4A4A3A3A2A2A1A1A0A0所选的端口所选的端口0 01 10 00 00 0命令命令/ /状态
33、寄存器状态寄存器0 01 10 00 01 1A A口口0 01 10 01 10 0B B口口0 01 10 01 11 1C C口口0 01 11 10 00 0计数器低计数器低8 8位位0 01 11 10 01 1计数器高计数器高6 6位位0 00 0RAMRAM单元单元3.CPU3.CPU对对81C55 I/O81C55 I/O端口的控制端口的控制(1)(1)8155H8155H各端口地址分配,见表各端口地址分配,见表9-29-2表表9-29-2(2 2)8155H8155H的控制字的控制字图图9-13(3 3)8155H8155H的状态字的状态字图图9-149.3.2 81C559
34、.3.2 81C55的工作方式的工作方式1.1.存储器方式存储器方式 对片内对片内RAMRAM单元进行读写,若单元进行读写,若IO/MIO/M* *=0=0和和CECE* *=0=0,则通过,则通过AD7AD7AD0AD0上的地址对上的地址对RAMRAM存储器任一单元读写。存储器任一单元读写。2.I/O2.I/O方式方式 8155H 8155H的的I/OI/O方式分为方式分为基本基本I/OI/O和和选通选通I/OI/O两种工作方式,两种工作方式,如表如表9-39-3所示。可对片内任一寄存器读写,端口地址由所示。可对片内任一寄存器读写,端口地址由A2A2、A1A1、A0A0三位决定(见表三位决定
35、(见表9-29-2)。)。C C口口通用通用I/OI/O方式方式选通选通I/OI/O方式方式ALT1ALT1ALT2ALT2ALT3ALT3ALT4ALT4PC0PC0输入输入输出输出AINTRAINTR(A A口口中断)中断)AINTRAINTR(A A口中断)口中断)PC1PC1输入输入输出输出ABFABF(A A口缓口缓冲器满)冲器满)ABFABF(A A口缓冲器满)口缓冲器满)PC2PC2输入输入输出输出ASTBASTB* * (A A口选通)口选通)ASTBASTB* * (A A口选通)口选通)PC3PC3输入输入输出输出输出输出BINTRBINTR(B B口中断)口中断)PC4P
36、C4输入输入输出输出输出输出BBFBBF(B B口缓冲器满)口缓冲器满)PC5PC5输入输入输出输出输出输出BSTBBSTB* * (B B口选通)口选通)表表9-3 C9-3 C口在两种口在两种I/OI/O工作方式下各位定义工作方式下各位定义 (1 1)基本)基本I/OI/O方式方式(2 2)选通)选通I/OI/O方式方式 ( (见右图)见右图) a.a.选通选通I/OI/O输入输入b.b.选通选通I/OI/O输出输出图图9-153. 3. 内部定时器内部定时器/ /计数器及使用计数器及使用 14 14位的减位的减1 1定时器定时器/ /计数器计数器,计数长度计数长度和和计数方式计数方式由写
37、入计由写入计数寄存器的控制字来确定。数寄存器的控制字来确定。计数器的两个寄存器的格式如计数器的两个寄存器的格式如图图9-169-16。T13T13 T0:T0:计数器长度计数器长度M2M2、M1:M1:设置定时器的设置定时器的4 4种工作方式种工作方式4 4种工作方式及相应输出波形种工作方式及相应输出波形如图如图9-179-17。图图9-17 若写入计数器的初值为奇数,若写入计数器的初值为奇数, 引脚的方波引脚的方波输出是不对称的。输出是不对称的。例如例如,初值为初值为9 9时,计数器的输出,在时,计数器的输出,在5 5个个计数脉冲周期内为高电平,计数脉冲周期内为高电平,4 4个计数脉冲周期内
38、为低电平,如个计数脉冲周期内为低电平,如图图9-189-18所示。所示。 TIMEROUT图图9-189.3.3 9.3.3 AT89C51单片机与单片机与81C55的接口设计及软件编程的接口设计及软件编程 1.1.硬件接口电路硬件接口电路图图9-1981C5581C55的各端口以及的各端口以及RAMRAM单元的地址编码,见单元的地址编码,见表表9-49-4。2 281C5581C55的编程的编程8155H8155H初始化程序设计初始化程序设计例例9-69-6 若若A A口定义为基本输入方式,口定义为基本输入方式,B B口定义为基本输出方口定义为基本输出方 式,对输入脉冲进行式,对输入脉冲进行
39、2424分频,初始化程序如下:分频,初始化程序如下:START:MOV DPTR, START:MOV DPTR, 7F04H 7F04H ;指针指向定时器低;指针指向定时器低8 8位位MOV A,MOV A,18H18H ;计数初值;计数初值2424送送A,A, MOVX DPTR,AMOVX DPTR,A ;计数初值低;计数初值低8 8位装入定时器位装入定时器INC DPTR INC DPTR ;指针指向定时器高;指针指向定时器高8 8位位MOV A,MOV A,40H 40H ;设定时器连续方波输出;设定时器连续方波输出MOVX DPTR,AMOVX DPTR,A ;计数初值高;计数初值
40、高6 6位装入定时器位装入定时器MOV DPTR,MOV DPTR,7F00H 7F00H ;指向命令;指向命令/ /状态口状态口MOV A,#0C2HMOV A,#0C2H ;设定命令控制字;设定命令控制字MOVX DPTR,AMOVX DPTR,A ;A A口输入,口输入,B B口输出口输出, ,开定时器开定时器例例9-79-7 读读81C5581C55的的7EF1H7EF1H单元。程序如下:单元。程序如下:MOVMOVDPTR,#7EF1HDPTR,#7EF1H;DPTRDPTR数据指针指向数据指针指向;81C5581C55的的7EF1H7EF1H单元单元MOVX A,DPTRMOVX
41、A,DPTR;7EF1H7EF1H单元内容单元内容A A例例9-89-8将立即数将立即数41H41H写入写入81C55 RAM81C55 RAM的的7E20H7E20H单元。程序如下:单元。程序如下:MOV MOV A,#41HA,#41H; ;立即数立即数A AMOV MOV DPTR,#7E20HDPTR,#7E20H;DPTR;DPTR数据指针指向数据指针指向81C5581C55;的;的7E20H7E20H单元单元MOVX MOVX DPTR,ADPTR,A; ;立即数立即数41H41H送到送到81C55 81C55 ;RAMRAM的的7E20H7E20H单元单元81C5581C55既有
42、既有RAMRAM又有又有I/OI/O口口,此外,此外,还有计数器还有计数器。在同时需要。在同时需要扩展扩展RAM RAM 、I/OI/O和计数器的系统中,选用和计数器的系统中,选用81C5581C55特别经济。特别经济。是单片机应用系统中是单片机应用系统中常用的常用的外围接口芯片之一。外围接口芯片之一。9.4 9.4 用用74LSTTL74LSTTL电路扩展并行电路扩展并行I/OI/O口口 利用利用74LS27374LS273和和74LS24474LS244,将,将P0P0口扩展成简单的输入、输出口扩展成简单的输入、输出口的电路口的电路。 74LS27374LS273输出端接输出端接8 8个个
43、LEDLED发光二极管,以发光二极管,以显示显示8 8个个按钮开关状态按钮开关状态,某位低电平时二极管发光。,某位低电平时二极管发光。 74LS24474LS244是缓冲驱动器,扩展输入口,是缓冲驱动器,扩展输入口,接接8 8个按钮开关。个按钮开关。 74LS27374LS273和和74LS24474LS244的工作受的工作受80318031的的P2.0P2.0、RDRD* *、WRWR* *三条控三条控制线控制。制线控制。电路的工作原理如下电路的工作原理如下: : 当当P2.0=0,WRP2.0=0,WR* *=0(RD=0(RD* *= =) )选中写选中写74LS27374LS273,
44、AT89C51AT89C51通过通过P0P0口输出数据到口输出数据到74LS27374LS273,;,; 当当P2.0=0,RDP2.0=0,RD* *=0(WR=0(WR* *=1)=1)时选中读时选中读74LS244,74LS244, 某开关按下时某开关按下时则对应位输入为则对应位输入为“0”0”。 图图9-20输出程序段:输出程序段:MOV A,#data MOV A,#data ;数据;数据A AMOV DPTR,#0FEFFHMOV DPTR,#0FEFFH;I/OI/O地址地址DPTRDPTRMOVX DPTR,A MOVX DPTR,A ;WRWR* *为低,数据经为低,数据经7
45、4LS27374LS273口输出口输出输入程序段:输入程序段: MOV DPTR,#0FEFFH MOV DPTR,#0FEFFH ;I/OI/O地址地址DPTRDPTR MOVX A,DPTR MOVX A,DPTR;RDRD* *为低,为低,74LS24474LS244口口 ;数据读入内部;数据读入内部RAMRAM例例9-99-9 编写程序把按钮开关状态通过图编写程序把按钮开关状态通过图9-209-20中的发光二极管中的发光二极管显示出来。显示出来。程序如下:程序如下:DDIS:DDIS: MOV DPTR,#0FEFFH MOV DPTR,#0FEFFH ;输入口地址;输入口地址DPTRDPTRLP:LP:MOVX A,DPTR MOVX A,DPTR ;按钮开关状态读入;按钮开关状态读入A A中中MOVX DP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年民航安全检查员职业技能竞赛理论考试题(附答案)
- 幼儿园七七事变主题教育
- 2024计算机二级各科目试题及答案
- 幼儿园小种子音乐说课
- 河南省周口市2024-2025学年八年级下学期3月月考生物试题(原卷版+解析版)
- 消防月工作总结
- 小学五年级道德与法治教学工作总结
- 2025物业管理公司标准《合同管理制度》
- 南京房屋装修合同范本
- 计算机二级考试新手指南试题及答案2024年
- 2025年国家公务员录用考试公共基础知识预测押题试卷及答案(共七套)
- 2025-2030中国儿童服装行业市场发展分析及投资前景预测研究报告
- 部编版语文教材培训讲座-口语交际
- 2025年全国中小学生安全教育日专题
- 2025年工程力学笔试试题及答案
- 2025年电子设备装接工岗位职业技能资格证考试题(附答案)
- 2025年河南航空港发展投资集团有限公司社会招聘45人笔试参考题库附带答案详解
- 企业一季一课安全教育记录(2篇)
- 2025-2030年中国工业废水处理产业十三五发展规划及战略规划分析报告
- 2024年全国高考新课标Ⅱ卷数学试题含答案解析
- 2025年山东国际信托股份限公司社会招聘高频重点提升(共500题)附带答案详解
评论
0/150
提交评论