机电-第8章可编程接口芯片_第1页
机电-第8章可编程接口芯片_第2页
机电-第8章可编程接口芯片_第3页
机电-第8章可编程接口芯片_第4页
机电-第8章可编程接口芯片_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第8章微机接口技术及其应用目录8.1并行I/O接口8.2串行通信接口8.3定时/计数器技术目录8.4A/D与D/A接口2024-02-031第8章微机接口技术及其应用8.1并行I/O接口8.1.1并行I/O接口

并行输入/输出就是把一个字符的几个位同时进行传输。它具有传输速度快、效率高的优点。并行通讯所用的电缆较多,不适合长距离传输。所以,并行通讯总是用在数据传输率要求较高,而传输的距离较短的场合。实现并行输入/输出的接口就是并行接口。通常,一个并行接口可设计为输出接口,如连接一台打印机。也可设计为输入接口,如连接键盘。还可设计成双向通讯接口,既作为输入接口又作为输出接口,如连接像磁盘驱动器这样的需双向通路的设备。2/3/20242第8章微机接口技术及其应用CPU数据总线控制寄存器输入缓冲/寄存器输出缓冲/寄存器状态寄存器I/O设备控制状态信号数据状态控制并行接口端口地址图8-1并行接口电路示意图2/3/20243第8章微机接口技术及其应用图8-1是典型的并行接口和外设连接的示意图。从图中可以看到,并行接口左边是与CPU连接的总线,右边用一个通道和输入设备相连,另一个通道和输出设备相连,输入和输出都有独立的信号交换联络控制线。在并行接口内部用控制寄存器来寄存CPU对它的控制命令,用状态寄存器来提供各种工作状态供CPU查询,此外,还有供输出和输入数据用的输出数据锁存器和输入数据缓冲器。并行接口的工作原理如下:在输入过程中,当外设把数据送到数据输入线上时,通过“数据输入准备好”状态线通知接口取数。接口在把数据锁存到输入缓冲器的同时,把数据输入回答线置“1”,用来通知外设,接口的数据输入缓冲器“满”,禁止外设再送数据。2/3/20244第8章微机接口技术及其应用并且把内部状态寄存器中“输入准备好”状态位置“1”,以便CPU对其进行查询或向CPU申请中断。在CPU读取接口中的数据后,接口将自动清除“输入准备好”状态位和“数据输入回答”信号,以便外设输入下一个数据。在输出过程中,当数据输出缓冲器“空闲”时,接口中“输出准备好”状态位置“1”。在接收到CPU的数据后,“输出准备好”状态位复位。数据通过输出线送到外设,同时,由“数据输出准备好”信号线通知外设取数据。当外设接收一个数据时,回送一个“数据输出回答”信号,通知接口准备下一次输出数据。接口将撤消“数据输出准备好”信号并再一次置“输出准备好”状态位为“1”,以便CPU输出下一个数据。2/3/20245第8章微机接口技术及其应用8.1.2可编程并行输入/输出接口8255A

8255A是Intel公司生产的一种可编程并行输入/输出接口芯片。它的通用性强,可以方便地和微机连接,用来扩展输入/输出口。8255A有3个8位并行端口,根据不同的初始化编程,可以分别定义为输入或输出方式,以完成CPU与外设的数据传送。1.8255A的结构

8255A的内部结构如图8-2所示。它由并行I/O端口、控制电路、数据总线缓冲器和读/写控制逻辑等几个部分组成。(1)并行I/O端口A、B、C。2/3/20246第8章微机接口技术及其应用数据总线缓冲器读/写控制逻辑A组端口A(8)A组端口C(4)B组端口B(8)B组端口C(4)A组控制B组控制8位内部数据总线DBI/OPA7~PA0I/OPC7~PC4I/OPC3~PC0I/OPB7~PB0CPU接口内部逻辑

外设接口RDWRA0A1RESETCS图8-28255A内部结构2/3/20247

A、B、C口都是8位的,可以选择作为输入或输出,但在结构和功能上有所不同。A口含有一个8位数据输出锁存/缓冲器和一个8位数据输入锁存器。B口含有一个8位数据输入/输出锁存/缓冲器和一个8位的数据输入缓冲器(不锁存)。C口含有一个8位数据输出缓冲器和一个8位数据输入缓冲器(不锁存)。当数据传送不需要联络信号时,这三个端口都可以用作输入或输出口。当A口、B口工作在需要联络信号输入、输出方式时,C口可以分别为A口和B口提供状态和控制信息。

第8章微机接口技术及其应用2/3/20248(2)A组和B组控制电路。

8255A的三个端口在使用时分为A、B组。A组包括A口8位和C口的高4位,B组包括B口8位和C口的低4位。两组的控制电路中有控制寄存器,根据写入的控制字决定两组的工作方式,也可以对C口的每一位置“1”或清“0”。(3)数据总线缓冲器。

数据总线缓冲器是三态双向8位缓冲器,是8255A与CPU数据总线的接口。数据的输入/输出、控制字和状态信息的传送,都是通过这个缓冲器进行的。由于8255A的数据总线是三态的,所以D0~D7可以直接与CPU的数据总线相连。第8章微机接口技术及其应用2/3/20249(4)读/写控制逻辑。

8255A的读/写控制逻辑的作用是从CPU的地址和控制总线上接收有关信号,转变成各种控制命令送到数据缓冲器以及A组、B组控制电路,从而管理三个端口、控制寄存器和数据总线之间的传送操作。2.8255A的引脚功能

8255A采用40脚双列直插式封装,引脚如图8-3所示。下面分别介绍各个引脚的功能。第8章微机接口技术及其应用2/3/202410第8章微机接口技术及其应用

408255A2021PA4PA5PA6PA7WRRESETD0D11D2D3D4D5D6D7VCCPC7PC6PB5PB4PB3PA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC0PC1PC2PC3PB0PB1PC2图8-38255A的引脚2/3/202411第8章微机接口技术及其应用(1)D7~D0:8255A的双向三态数据线,和系统的数据总线相连,用来读写数据和写入控制字。(2)A1、A0:端口选择线,用于选择8255A的三个数据端口和一个控制端口。当A1A0为00时:选择端口A;为01时,选择端口B;为10时,选择端口C;为11时,选择控制端口。在8088系统中,A1、A0直接与系统地址总线的A1、A0连接即可。在8086系统中存在奇偶地址的问题,一般将8255A的数据线与系统的低8位数据总线相连,8255A的A1、A0与系统地址总线的A1、A0连接,而用系统地址总线的A0=0作为该8255A的片选条件之一。

2/3/202412第8章微机接口技术及其应用(3):片选信号,低电平有效。当为低电平时8255A才能接受CPU的读写。与地址译码器输出端相连。(4):读信号,低电平有效,当为低电平时允许CPU从8255A读取各端口的数据。(5):写信号,低电平有效,当为低电平时8255A才能接受写入数据或控制字。(6)RESET:复位信号,高电平有效。当为高电平时,8255A所有的寄存器清0,所有的输入/输出引脚均呈高祖态,直到写入控制字为止。2/3/202413第8章微机接口技术及其应用与I/O设备相连接的信号线:(1)PA7~PA0:端口A数据线。(2)PB7~PB0:端口B数据线。(3)PC7~PC0:端口C数据线。3.8255A控制字

控制字是用来设置8255A的工作方式,8255A有两个控制字:方式选择控制字和C口按位置位/复位控制字。对8255A的编程就是向控制寄存器端口写入控制字,通过表8-1来看,8255A只有一个控制寄存器端口地址(A1A0=11),这两个控制字写入同一端口地址(A1A0=11),为了进行区分,控制字的D7位作为标志位,D7=1表示是工作方式控制字;D7=0表示是按位置位/复位控制字。

2/3/202414第8章微机接口技术及其应用表8-1信号组合实现的各种端口操作D7~D0呈高阻状态未被选中,不工作×××1D7~D0呈高阻状态11×数据总线→控制寄存器端口11数据总线→端口C10数据总线→端口B01数据总线→端口A输出(写)0100端口C→数据总线10端口B→数据总线01端口A→数据总线输入(读)10000功能说明操作WRRDA1、A0CS2/3/202415第8章微机接口技术及其应用

(1)工作方式控制字

8255A有三种工作方式:方式0、方式1、方式2。工作方式控制字的作用是确定三个数据口在哪种方式下工作以及在该方式下式输入还是输出。工作方式控制字的格式如图8-4所示。

(2)C口按位置位/复位控制字端口C设置为输出方式时,常常用于控制目的,用来发送控制信号。此时,可利用按位置位/复位控制字的作用,使C口的某一引脚输出特定的电平状态(高电平或低电平),而不影响端口C的其他位的状态。控制字的格式如图8-5所示。

2/3/202416D6D5D4D3D2D1D01B组PC3~PC00:输出1:输入B组PB8~PB00:输出1:输入B组方式选择0:方式01:方式1A组PC7~PC40:输出1:输入A组PA7~PA00:输出1:输入A组方式选择00:方式001:方式11×:方式2标志位=1A组控制B组控制图8-48255A工作方式控制字

第8章微机接口技术及其应用2/3/202417【例8.1】设某片8255A的各端口处于如下工作方式:端口A工作于方式1输出;端口B工作于方式0输入;端口C的高4位输出,低4位输入。根据8255A的方式选择控制字格式(图8.3)可写出该片的方式选择控制字为:10100011B或0A3H。【解】设此8255A芯片的A端口、B端口、C端口、控制端口地址为208H、209H、20AH、20BH,则其初始化程序为MOV DX,20BH;8255A控制端口MOV AL,0A3H;写入控制字OUT DX,AL;送到控制端口第8章微机接口技术及其应用2/3/202418第8章微机接口技术及其应用D7D6D5D4D3D2D1D01=置位0=复位位选择000C口0位001C口1位…111C口7位未用位(一般取0)标志位=0图8-5C口按位置位/复位控制字格式2/3/202419【例8.2】

设8255A的A端口、B端口、C端口、控制端口地址为60H、61H、62H、63H,以下的程序段可实现对端口C的PC2复位和PC5置位,即MOV AL,00000100B(04H)OUT 63H,AL;复位PC2MOV AL,00001011B(0BH)OUT 63H,AL;置位PC5第8章微机接口技术及其应用2/3/202420第8章微机接口技术及其应用4.8255A的工作方式

(1)方式0:基本I/O在方式0下,A、B、C三个端口均用作输入/输出,这种输入/输出只是简单的输入/输出,是一种不使用专用控制信号线的简单输入/输出方式,无联络信号。如图8-6所示。

A口

8255AC口

B口系统总线PA7~PA0PA7~PA0PA7~PA0PA7~PA0图8-68255A工作方式02/3/202421第8章微机接口技术及其应用在这种方式下,三个端口都可以由程序规定为输入或输出方式,但不能既作为输入又作为输出,也没有提供固定的联络信号。C口分为高4位和低4位,可以分别设置为输入或输出方式。各端口在输出方式下有锁存功能,输入不锁存。当以工作方式0输入时,外设先将数据送到8255A的某个端口,CPU执行一条输入指令,有效将该端口的数据送入CPU。当以工作方式0输出时,CPU执行一条输出指令,有效,将数据送到8255A的某个端口,然后由外设取走。工作方式0适合于数据的无条件传送,也可以人为指定某些位作为状态信息线,进行查询式传送。2/3/202422若用于查询传送,可用端口A、B、C三个中的任一位充当查询信号,其余位可作为独立的端口位用于与外设连接,进行数据信息的传送。在方式0下,C口的高低4位可分别设定为输入或输出,但CPU的IN或OUT指令必须至少以一个字节为单位进行读写,所以必须采取适当的屏蔽措施。如表8-2。

第8章微机接口技术及其应用2/3/202423【例8.4】

设8255A端口A、B、C和控制端口地址80H、82H、84H、86H,选用C端口高4位中PC7作为输出设备的状态位,C端口低4位中PC1作为输出设备的选通位。写入方式选择控制字8AH设定各端口的工作在输出一个数据前,先通过输入PC7,查询输出设备状态,准备好则从端口A输出,并由PC1发出选通脉冲信号通知输出设备准备接受数据。此题为一种方式0下自定义的联络信号,接口图如图8.5所示。

MOV AL,8AH OUT 86H,ALNEXT: IN AL,84H TEST AL,80H JZ NEXT;查询外设是否准备就绪

MOV AL,CL OUT 80H,AL;将数据输出到端口A MOV AL,02H OUT 84H,AL;复位PC1 INC AL OUT 84H,AL;置位PC1,向端口C发送选通脉冲信号第8章微机接口技术及其应用2/3/202424第8章微机接口技术及其应用(2)方式1:带选通的输入/输出这种方式仅A口和B口工作在这种方式下,A口或B口可以作为输入或输出,但不能既是输入又是输出。不论是输入还是输出,都要利用C口的某些引脚作为联络信号,并且这些联络信号和端口C的各引脚保持固定的关系,它们不能用程序加以改变。C口未被占用的位仍可用于输入或输出(控制字的D3位决定)。端口A、B工作方式1时联络信号的对应关系见表8-3。

2/3/202425第8章微机接口技术及其应用表8-38255A芯片工作在方式1时的通信联络信号端口联络线输入输出端口A方式1PC7I/OOBFAPC6I/OACKAPC5IBFAI/OPC4STBAI/OPC3INTRAINTRA端口B方式1PC2STBBACKBPC1IBFBOBFBPC0INTRBINTRB2/3/202426第8章微机接口技术及其应用8255A工作在方式1时,具有以下特点:①端口A、B均可工作在方式1的输入或输出方式。②端口A、B若只有一个工作在方式1,而另一个工作在方式0,则端口C中有3位作为方式1的联络信号,端口C其余位均可工作在方式0的输入或输出方式。③端口A、B都工作在方式1,则需要端口C中6位作为其联络信号,剩下的2位还可工作在方式0的I/O方式。如图8-7所示,方式1下8255A的各端口的输入结构图。2/3/202427第8章微机接口技术及其应用方式1输入:A口1PC4,51=输入0=输出WROBFAACKAINTRAI/OD7~D0PA7~PA0INTEAPC7PC6PC3PC4、PC5&2011I/O×××A组控制字1WROBFBACKBINTRBD7~D0PB7~PB0INTEBPC1PC1PC0&××××11×B组控制字方式1输入:B口图8-7方式1下8255A的各端口的输入结构2/3/202428方式1输入过程如图8.7所示。图8.78255A方式1输入过程2/3/202429方式1输入的具体工作过程如下:(1)当外设将数据送至端口A或端口B的数据线上后,就向8255A发出负脉冲,使选通信号为低,8255A将输入数据送至输入锁存器锁存。(2)8255A在选通信号有效之后将数据线的数据锁存在指定的数据锁存器中,其后将输入缓冲器满信号IBF变成高电平,输出给外设,不再接收外设送来的新数据。(3)选通信号结束后,其电位由低变高,若此时IBF信号和INTE信号也同时为高电平,INTR变为有效,向CPU发出中断请求信号,通知CPU输入的数据已锁存进输入缓冲器,等待CPU读取。(4)CPU接收中断请求,发出读信号,读取数据,并在读信号的下降沿,INTR信号复位,撤销中断请求。(5)CPU读结束,在读信号的上升沿,IBF复位,则允许外设发送新的数据。2/3/202430第8章微机接口技术及其应用

1PC4,51=输入0=输出WROBFAACKAINTRAI/OD7~D0PA7~PA0INTEAPC7PC6PC3PC4、PC5&2010I/O×××A组控制字1WROBFBACKBINTRBD7~D0PB7~PB0INTEBPC1PC1PC0&××××10×B组控制字方式1输出:B口如图8-8所示,方式1下8255A的各端口的输出结构图。

图8-8方式1下8255A的各端口的输出结构2/3/202431方式1输出过程如图8.9所示。图8.98255A方式1输出过程2/3/202432方式的具体工作过程如下:(1)CPU响应中断请求,发出信号,将输出的数据送入指定端口的输出数据缓冲器中。信号的上升沿使中断请求信号INTR复位。(2)CPU输出结束时,信号的上升沿使有效,表示输出缓冲器满,通知外设可以接收数据。(3)当外设开始接收数据,便发出信号,作为响应回答信号。的下降沿使无效。(4)若CPU允许中断,则在的上升沿后,INTR有效,向CPU发出中断请求,通知CPU输出缓冲器中的数据已经被外设取走,可以输出新的数据到缓冲器中。第8章微机接口技术及其应用2/3/202433第8章微机接口技术及其应用(3)方式2:带选通的双向输入/输出方式2是双向传送方式,一般既可作为输入设备,又可作为输出设备的并行外设进行数据交换,并且输入、输出数据不会同时进行。方式2类似于方式1输入和输出的组合。设定为方式2后,端口C的5位作为指定的控制/联络信号。方式2下端口A的结构如图8-9所示,各联络信号含义见表8-4。

2/3/202434第8章微机接口技术及其应用1B组方式0=方式01=方式11××I/OI/OI/O×D7D6D5D4D3D2D1D0INTRAOBFAACKASTBAIBFAI/ORDWRPA7~PA0INTE1PC7PC6PC4PC2、PC0&PC3PC5INTE2&≥1B口0=输出1=输入PC2~PC00=输出1=输入图8-9方式2下8255A端口A的结构2/3/202435第8章微机接口技术及其应用表8-48255A芯片端口A方式2时的联络信号联络线联络信号信号含义PC7端口A输出缓冲器满信号PC6端口A外设收到数据的应答信号PC5IBFA端口A输入缓冲器满信号PC4端口A外设数据输入选通信号PC3INTRA中断请求信号PC2I/O数据线或B组联络线PC1I/O数据线或B组联络线PC0I/O数据线或B组联络线

注:当端口B工作在方式1时,表中的PC2~PC0仍作为联络信号含义与表8-3相同。

2/3/202436【例8.5】8255A端口A作为数据输出端口工作于方式0,接了8个发光二极管,端口B作为数据输入端口工作于方式0,要求单拨PB4对应的开关K4时,发光二极管全亮;K4拨回原位又全灭。单拨PB7对应的开关K7,单个发光二极管从VD0~VD7循环亮灯,K6回原位全灭。设8255A端口地址为203H~206H。

【解】端口A、端口B都工作于方式0,因此采用无条件传送方式,端口A用于数据输出,端口B用于数据输入,因此得到8255A的方式选择控制字为10000010B=82H。程序为

STACK SEGMENTDW 100DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKMAIN: MOV AL,82H;8255A控制字

MOV DX,206H OUT DX,AL;8255A初始化NEXT: MOV DX,204H IN AL,DX;读B口数据

TEST AL,10H;测试PB4 JNZ LIT ;PB4=1,转LIT,发光二极管全亮 MOV AL,00H;否则全灭 JMP TRLTLIT: MOV AL,0FFHTRLT: MOV DX,203H OUT DX,AL MOV DX,204H

IN AL,DX;读B口数据

TEST AL,80H;测试PB7

JNZ CONT0

;PB7=1,转CONT,发光二极管循环点亮

MOV AL,00H;否则全灭

MOV DX,203H OUT DX,AL JMP NEXTCONT0: MOV BL,01HCONT1: MOV AL,BL MOV DX,203H OUT DX,AL CALL DELAY;调用延时程序 SHL BL,1 JNZ CONT1 JMP NEXT CODE ENDSEND MAIN2/3/202437第8章微机接口技术及其应用8.2串行通信接口8.2.1串行通信基本概念

微型计算机与一些常用的外部设备(如电传打字机、CRT终端等)之间的数据交换,往往需要采用串行通讯方式。在远程计算机通讯中,串行通讯更是一种不可缺少的通讯方式。串行通讯是指数据一位一位地顺序传送,只占用一条传输线,它可由两种方式来实现:一种是将8位通道中的一位依靠软件来实现串行数据传送;另一种是通过专用的通讯接口,将并行数据转换为串行数据。2/3/202438第8章微机接口技术及其应用

1.串行通信的分类按照串行数据的格式,串行通信可分为异步传送和同步传送两类。同步通信靠同步信号、识别同步字符来实现数据的发送和接收,而异步通信是一种利用字符的再同步技术的通信方式。(1)异步传送方式:异步传送的数据以字符为单位。传送时,各个字符可以是连续传送的,也可以是间断传送的,这完全由发送方根据需要来决定。异步传送的另一个特点是,双方各自用自己的时钟源来控制发送和接收。由于字符的发送是随机进行的,对于接收方来说,要判别何时是新的一个字符开始。因而,在异步通信时,必须对字符规定一定的格式。异步通信字符格式如图8-11所示。2/3/202439第8章微机接口技术及其应用100/10/10/10/11110…0/1起始位8位数据奇偶校验位停止位起始位第n个字符第n+1个字符0/10/10/10/10/1图8-11异步通信字符格式

2/3/202440第8章微机接口技术及其应用(2)同步传送方式:同步传送以许多字符或许多位组织成的数据块为传送单位,是一种连续传送数据的方式。通信开始以后,发送端连续发送字符,接收端也连续接收字符,直到一个数据块传送结束。同步传送时,字符与字符之间没有间隙,也不用起始位和停止位,仅在数据块开始时用同步字符SYNC来指示,其数据格式如图8-12所示。2/3/202441第8章微机接口技术及其应用数据1数据2…数据n校验字符1校验字符2数据块同步字符同步字符图8-12同步通信字符格式

2/3/202442第8章微机接口技术及其应用8.2.2可编程串行通信接口芯片—8251A1.8251A的特点和内部结构Intel8251A是可编程的串行通信接口芯片,它的主要特点如下:(1)可用于串行异步通信和串行同步通信。(2)对于异步通信,每个字符5~8位数据位,1个启动位,1个位作为奇/偶效验。并能根据编程为每个数据增加1位、1位半或2位停止位,可以检查家启动位,自动检测和处理停止位。(3)对于同步通信,可设为单同步、双同步或者外同步,同步字符可由用户自行设定。(4)异步通信的时钟频率可设为波特率的1倍、16倍或64倍。2/3/202443第8章微机接口技术及其应用(5)可以设定奇校验或偶校验,也可以不设校验。校验位的插入、检错及剔除都由芯片本身完成。(6)异步通信时,波特率的可选范围为0~9600波特,同步通信时,波特率的可选范围为0~56K波特。(7)提供与外部设备特别是调制解调器的联络信号,便于直接和通信线路相连接。(8)接收、发送数据分别有各自的缓冲器,可以进行全双工通信。2/3/202444第8章微机接口技术及其应用数据总线缓冲器读/写控制逻辑发送器及发送控制接收器及接受控制调制/解调控制D7~D0RESETC/DCLKRDWRCSTXDTXRDYTXETXCRXDRXRDYSYNDETRXCDTRDSRRTSCTS图8-148251A结构图2/3/202445第8章微机接口技术及其应用2.8251A的外部引脚8251A是一个采用NMOS工艺制造的28引脚双列直插式封装的组件,其外部引脚如图8-15所示。D2D3RXDGNDD4D5D6D7TXCWRCSR/DRDRXRDYD1D0VCCRXCDTRRTSDSRRESETCLKTXDTXEMPTYCTSSYNDET/BRKDETTXRDY12814158251A图8-158251A的引脚2/3/202446第8章微机接口技术及其应用4.8251A的控制字寄存器和状态字寄存器8251A内除具有可读写的数据寄存器外,还具有只可写的控制字寄存器和只可读的状态寄存器,CPU对它们的操作见表8-5。(1)控制字寄存器控制字寄存器寄存方式控制字和命令控制字。①方式控制字:方式控制字确定8251A的通信方式(同步/异步)、校验方式(奇校验/偶校验/不校验)、数据位数(5/6/7/8位)及波特率参数等。方式控制字的格式如图8-16所示。它应在复位后写入,且只需写入一次。

2/3/202447第8章微机接口技术及其应用CSC/DRDWR操作0110CPU向8251A写入控制命令字01CPU从8251A读取状态信息010CPU向8251A写入数据信息01CPU从8251A读取数据信息×11高阻态,不进行任何读写操作1×××高阻态,不进行任何读写操作表8-5CPU对8251A的读写操作控制

2/3/202448第8章微机接口技术及其应用D7D6D5D4D3D2D1D0通信方式及波特率00同步×101异步×110异步×1611异步×62数据位数005位016位107位118位校验方式×0不校验01奇校验11偶校验00无效011位停止位101位半停止位112位停止位×0内同步01双同步字符11单同步字符同步方式?YN图8-168251A方式控制字的格式2/3/202449第8章微机接口技术及其应用②命令控制字:命令控制字使8251A处于规定的状态以准备发送或接收数据。命令控制字的格式如图8-17所示。它应在方式控制字写入后写入,用于控制8251A的工作,可以多次写入。方式控制字和命令控制字本身无特征标志,也没有独立的端口地址,8251A是根据写入先后次序来区分这两者的:先写入者为方式控制字,后写入者为命令控制字。所以CPU对8251A初始化编程时必须按一定的顺序写入方式控制字和命令控制字。

2/3/202450第8章微机接口技术及其应用ENIRRISERSBRKRXEDRTTXEN1进行搜索方式1内部复位1请求发送1清除错误标志发送断点字符允许接收1数据终端准备好允许发送1允许0禁止1允许0禁止1迫使TXD为低0正常工作图8-178251A命令控制字格式

2/3/202451第8章微机接口技术及其应用(2)状态控制字CPU可通过指令读出8251A状态控制字,以了解8251A当时的工作状态,做出是否进行新的数据传送的决定。状态控制字放在状态寄存器中,CPU只能读状态寄存器而不能写状态寄存器。状态控制字的格式如图8-18所示。

DSRSYNDETFEOEPETXERXRDYTXRDY数据装置准备好1已达到同步0未达到同步帧校验错标志溢出错标志1奇偶错1接收器准备好1发送器准备好图8-188251A状态字格式

2/3/202452第8章微机接口技术及其应用5.8251A的初始化编程8251A复位装入方式控制字同步方式?输入同步字符双同步字符方式?输入命令字复位8251A?传送数据传送完?输入第日二个同步字符YYNNNYYN2/3/202453第8章微机接口技术及其应用8.3定时/计数器技术8.3.1定时/计数器的基本概念微型计算机系统常常需要一种器件为处理机和外部设备提供时间间隔标志,或对外部输入脉冲进行计数,这种器件称为定时/计数器。2/3/2024548.3.2可编程定时器/计数器8253Intel-8253就是在微机系统中应用最广的定时/计数器芯片,它是一种可编程芯片,工作方式、定时时间和输出信号形式等均可编程设置,使用十分方便。1.8253的内部结构和主要特征8253芯片是一个双列直插式器件,具有24个引脚,主要特性有:(1)采用NMOS工艺,用单一的+5V电源供电。(2)芯片内具有三个独立的16位减法计数器(或称计数器通道),每个计数器又可分为两个8位的计数器。(3)计数频率为0~5MHZ。(4)两种计数方式:二进制或BCD方式计数。(5)每个计数器有6种工作方式都可由程序设计,即可对系统时钟脉冲计数实现定势,又可对外部事件进行计数。(6)可由软件或硬件控制开始计数或停止计数。第8章微机接口技术及其应用2/3/202455第8章微机接口技术及其应用2.8253的内部结构

8253的结构由计数器、控制寄存器、读/写控制逻辑和数据缓冲器等四部分组成,图8-20所示。

图8-208253的内部结构2/3/202456第8章微机接口技术及其应用4.8253的引脚。8253为24脚双列直插式封装结构,其引脚按功能分为与CPU接口引脚和与外设接口引脚两类。如图8-21所示。12482531213D7D6D5D4D3D2D1D0CLK0OUT0GATE0GNDVCCWRRDCSA1A0CLK2OUT2GATE2CLK1GATE1OUT1图8-218253引脚图2/3/202457第8章微机接口技术及其应用5.8253控制字使用8253芯片时,必须确定每个计数器的工作方式和预置的初值。计数器的工作方式由控制字确定,程序中使用OUT指令将控制字写入命令寄存器,设定8253的工作方式。控制字的格式如图8-22所示。2/3/202458第8章微机接口技术及其应用图8-228253的控制字格式D7D0D6D5D4D3D2D12/3/2024598253的工作方式01、000:方式0(计数结束产生中断)性质:写入控制字,OUT端为低电平,计数初值装入该计数器后,等待到GATE输入高电平时,计数器开始递减计数。在整个计数过程中,OUT保持低电平,当计数器减为0时,OUT输出高电平。①设定工作方式(0)②设定计数初值(4)③

硬件启动(GATE=1)④计数值(4)送入计数器⑤计数过程(-1)⑥计数结束(0)特点:计数器只计一遍。计数过程GATE控制,GATE=0暂停计数,GATE=1接着计数。装入计数值为8位时,立即开始计数;装入16位计数值时,在写入第一个字节后停止计数,等第二个字节写入后开始新的计数。2/3/2024602、001:方式1(可编程单拍脉冲)性质:写入控制字,OUT端为高电平,计数初值装入该计数器后,在GATE信号的上升沿后的下一个CLK脉冲的下降沿开始计数,OUT变为低电平。在整个计数过程中,OUT保持低电平,当计数器减为0时,OUT变为高电平,输出一个单脉冲,若GATE信号再由低变高,可再产生一个单脉冲,相当一个单稳态。①设定工作方式(1)②设定计数初值(4)[3硬件启动(GATE=1)]④计数值(4)送入计数器⑤计数过程(--1)⑥计数结束(0)特点:GATE上升沿触发,计数值可重复使用。8253的工作方式12/3/2024613、010:方式2(分频器或脉冲信号发生器)性质:8253相当于一个分频脉冲产生器,若计数值为N,则每输入N个CLK脉冲,输出一个脉冲,脉冲宽度等于N*CLK周期。特点:计数初值装入计数器后,由GATE信号控制,若GATE信号为0时,暂停计数,当变为高电平的下一个CLK脉冲又开始重新计数。计数过程中,CPU可随时改变计数值,当计数器减为0时,又按新的计数值分频。8253的工作方式22/3/2024624、011:方式3(方波发生器)性质:输出周期性方波,若计数值为N,则输出的方波周期是N个CLK周期。CPU写入控制字后OUT变高,写完计数值后自动开始计数,输出保持高电平。当计到一半计数值时,输出变低,直到计数到0,输出又变为高,重新开始计数。特点:计数初值装入计数器,由GATE信号控制,若GATE=0暂停计数,GATE=1允许计数。计数过程中,新装入值不影响原计数过程。计数为偶数,计数器减2,到0,OUT改变,计数值重新装入,反复工作。当N为奇数时,在前半波多计一个CLK脉冲,因此,输出占空比为的近似方波。8253的工作方式32/3/202463例:要求计数器0工作于方式3,输出方波的频率为2KHz,计数脉冲的频率为2.5MHz,采用BCD计数,试写出初始化程序段。设8253的端口地址为:80H~83H。N=(1/2KHz)/(1/2.5MHz)=2.5MHz/2KHz=1250MOVAL,37HOUT83H,ALMOVAL,50HOUT80H,ALMOVAL,12HOUT80H,AL000111113.初始化程序段:1.分频系数计算:2.8253的方式控制字为:2/3/2024645、100:方式4(软件触发选通)写入控制字,OUT端为高电平,写入计数初值后立即开始计数(相当软件触发启动),计数器计到0时,OUT变为低电平,经过一个CLK脉冲周期,OUT又变高,计数器停止计数,只有写入新计数值才能开始新的计数。要求GATE一直为高电平。8253的工作方式42/3/2024656、101:方式5(硬件触发选通)写入控制字,OUT变高,写入计数初值后,由GATE信号的上升沿触发开始计数。计到0后,OUT变为低电平。经一个CLK周期后,OUT又变为高电平,并停止计数,等下次GATE触发才能再计数。8253的工作方式52/3/2024667.8253工作方式小结(1)方式2、4、5的输出波形是相同的,都是宽度为一个CLK时钟周期的负脉冲,但方式2可自动连续工作,方式4由软件触发启动,方式5由硬件触发启动。(2)方式1与方式5工作过程相同,但输出波形不同,方式1输出的是宽度为N个CLK脉冲的低电平有效的脉冲(计数过程中输出为低),而方式5输出的是宽度为一个CLK脉冲的负脉冲(计数过程中输出为高)。(3)输出端OUT的初始状态,方式0在写入方式字CW后输出为低,其余方式,写入控制字后,输出均为高。(4)任一种方式,均是在写入计数初值之后,才能开始计数,方式0、2、3、4都是在写入计数初值之后,开始计数的,而方式1和方式5需要外部触发启动,才开始计数。2/3/2024678253-

工作方式与输出波形图

方式功能输出波形触发性质0计数结束产生中断写初值后,经N+1个时钟周期OUT端变为高电平,GATE=0停止计数软触发单次负脉冲1可重触发单稳态触发器输出宽度为N个时钟周期的负脉冲,只要有新的GATE脉冲,重新计数硬触发单次负脉冲2分频器输出宽度为一个时钟周期的负脉冲,自动触发连续的脉冲波3方波发生器N为偶数,占空比为1/2;N为奇数,N+1/2个正脉冲,N-1/2个负脉冲自动触发连续的方波4软件触发的选通信号写入初值后,经N个时钟周期,OUT变低一个时钟周期软触发单次单拍负脉冲5硬件触发的选通信号门控触发后,经N个时钟周期,OUT变低一个时钟周期硬触发单次单拍负脉冲2/3/2024688253-各工作方式特点比较

工作方式GATE=0或下降沿GATE上升沿GATE高电平改变计数值方式0禁止计数―允许计数立即有效方式1―启动计数―外部触发有效方式2禁止计数并置OUT为高电平初始化计数允许计数计数到1有效方式3禁止计数并置OUT为高电平初始化计数允许计数计数到0有效方式4禁止计数―允许计数立即有效方式5―启动计数―外部触发有效2/3/202469四、8253的应用编程举例1.写入通道控制字,规定通道的工作方式;(A1A0=11)2.写入计数值(由控制字的D7D6确定通道号)。①若规定只写入低8位,则写入的为计数值的低8位,高8位自动置0;②若规定只写入高8位,则写入的为计数值的高8位,低8位自动置0;③若是16位计数值,则分两次写入,先写入低8位,再写入高8位。2/3/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论