第八章 接口技术_第1页
第八章 接口技术_第2页
第八章 接口技术_第3页
第八章 接口技术_第4页
第八章 接口技术_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

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

文档简介

1、1第八章第八章 接口技术接口技术2本章主要内容本章主要内容 定时与计数器定时与计数器 并行传输以其接口并行传输以其接口 DMA传输及传输及DMA控制器控制器 串行传输及其接口串行传输及其接口 D/A与与A/D转换及其接口转换及其接口 其它接口:磁盘控制器接口,显示器接口,键盘接其它接口:磁盘控制器接口,显示器接口,键盘接口等属于标准的外部设备接口,这里不予介绍。口等属于标准的外部设备接口,这里不予介绍。3第一节第一节 定时器定时器/计数器计数器4定时与计数定时与计数 计算机中和日常生活中一样广泛应用定时与计数计算机中和日常生活中一样广泛应用定时与计数 定时定时 (日时钟,信号源的时钟周期,测试

2、中的超时处理等)(日时钟,信号源的时钟周期,测试中的超时处理等) 产生一个精确的时延产生一个精确的时延 计数计数 (产品计数、汽车流量计数、学生人数计数等)(产品计数、汽车流量计数、学生人数计数等) 对特定事件进行计数对特定事件进行计数 实质上,定时是通过计数来实现的。实质上,定时是通过计数来实现的。 例如:一年例如:一年365天,一天天,一天24小时,一小时小时,一小时60分。分。 香港回归倒计时。奥运会开幕倒计时。时间是通过计数香港回归倒计时。奥运会开幕倒计时。时间是通过计数实现的。实现的。5计算机系统中的定时计算机系统中的定时 通常,一个计算机系统中定时功能是必需的。该定时器用来通常,一

3、个计算机系统中定时功能是必需的。该定时器用来驱动操作系统的系统时钟。操作系统根据系统时钟完成任务驱动操作系统的系统时钟。操作系统根据系统时钟完成任务调度等。定时长度(古代称之为调度等。定时长度(古代称之为Tick , 嘀嗒声)可以是嘀嗒声)可以是500ns,10ms,100ms等。等。 定时器的工作原理定时器的工作原理Fosc标准时钟发生器标准时钟发生器预分频器预分频器其输出作为计数器时钟(计时精度与计时长度)其输出作为计数器时钟(计时精度与计时长度)时间常数寄存器(时间常数寄存器(TCR)-存放计数初值,决定计时长度。存放计数初值,决定计时长度。计数器计数器它从它从TCR取得初值,在时钟驱动

4、下进行计数(可以是减计数或加计数)取得初值,在时钟驱动下进行计数(可以是减计数或加计数)6定时方法定时方法 软件定时软件定时 用循环程序实现。占用用循环程序实现。占用CPU时间。主机频率不同,时间。主机频率不同,软件延时就不同。定时程序通用性差。软件延时就不同。定时程序通用性差。 硬件定时硬件定时 采用硬件或可编程定时器芯片实现。定时准确,不采用硬件或可编程定时器芯片实现。定时准确,不占用占用CPU时间。但需附加硬件。时间。但需附加硬件。 典型芯片典型芯片 Intel 8253/8254 Zilog CTC7 一、可编程定时一、可编程定时/ /计数器计数器8253/82548253/82548

5、定时器定时器/计数器计数器8253/8254引脚图引脚图 123456789101112131415161718192021222324D7D6D5D4D3D2D1D0CLK0CLK2GAT0GAT1OUT0OUT1GNDCLK1GAT2OUT2A0A1VCCWRRDCS图图8.68.6(a a) 定时器定时器/ /计数器计数器 8253/8254 8253/8254引脚图引脚图98253/8254外部特性外部特性 面向面向CPU的信号线的信号线 D0D7(In/Out) 三态双向数据线三态双向数据线 RD(In) 读信号线读信号线 WR(In)写信号线写信号线 CS(In) 片选片选 A0,

6、A1 (In)地址线。占有地址线。占有4个个I/O端口端口 在在PC机中的端口地址为:机中的端口地址为: CH0 40H CH1 41H CH2 42H 控制口控制口 43H 108253/8254外部特性(续)外部特性(续) 面向面向I/O的信号线(包括的信号线(包括3组同样的信号)组同样的信号) CLK 02(In)计数时钟输入计数时钟输入 GATE02(In)门控信号。门控信号。“0”电平禁止计数器工电平禁止计数器工作。作。 OUT02(Out)计数器输出。表示定时或计数已到。计数器输出。表示定时或计数已到。118253/8254内部结构内部结构 数据总线缓冲器读/写逻辑控制命令寄存器计

7、数器0计数器1计数器2D7D0A0A1CSWRRDCLK0GATE0OUT0CLK1GATE1GATE2CLK2OUT2OUT1内部总线图图8.6(b) 8253/82548.6(b) 8253/8254内部结构框图内部结构框图128253/8254的内部结构(续)的内部结构(续) 数据总线缓冲器数据总线缓冲器 三态、双向三态、双向8位寄存器位寄存器 读读/写控制电路写控制电路 A1A0占用占用4个端口。个端口。0010对应计数器对应计数器02,11对应对应控制寄存器。控制寄存器。 控制命令寄存器控制命令寄存器 存放存放CPU送来的控制字送来的控制字138253/8354的每个计数通道逻辑框图

8、的每个计数通道逻辑框图 1616位当前计数器锁存值位当前计数器锁存值(OL)(OL)1616位减位减1 1计数器计数器(CE)(CE)1616位初值计数器位初值计数器(CR)(CR)装入装入/ /读出初值读出初值锁存后读出当前值锁存后读出当前值CLKCLKGATEGATEOUTOUTLSBLSBMSBMSBMSBMSBLSB LSB 图图8.6(c) 8253/82548.6(c) 8253/8254内部逻辑框图内部逻辑框图148253/8254的内部逻辑(续)的内部逻辑(续) 计数器计数器 芯片内部有芯片内部有3个独立、完全相同的计数器。每一个个独立、完全相同的计数器。每一个计数器可工作在不

9、同的模式。计数器可工作在不同的模式。 16位计数初值寄存器位计数初值寄存器CR 用于存放计数初值。然后将初值装入减用于存放计数初值。然后将初值装入减1计数器计数器CE。可自动重载初值可自动重载初值 16位计数单元位计数单元CE 减减“1”计数器。计数器。CPU不能直接读、写不能直接读、写CE的值。的值。 16位当前计数值锁存器位当前计数值锁存器OL OL“跟随跟随”CE的值。收到的值。收到“锁存锁存”命令后,锁存当命令后,锁存当前前CE的值。的值。CPU读走后,恢复到读走后,恢复到“跟随跟随”CE的状态。的状态。15控制字格式控制字格式 上电后,上电后,8253/4的状态是未知的,工作模式、计

10、数的状态是未知的,工作模式、计数值和输出也是未知的。因此,需初始化。值和输出也是未知的。因此,需初始化。 8254与与8253相比,增加了状态回读命令。相比,增加了状态回读命令。 控制字格式如下控制字格式如下: 16控制字格式(续)控制字格式(续)8253方式控制字共方式控制字共8位,初始化编程时写入控制口(位,初始化编程时写入控制口(43H)D7D6D5D4 D3D2D1D0计计数数码码制制1 1- -B BC CD D计计数数0 0- -二二进进计计数数工工作作方方式式0 00 00 0- -方方式式0 00 00 01 1- -方方式式1 1X X1 10 0- -方方式式2 2X X1

11、 11 1- -方方式式3 31 10 00 0- -方方式式4 41 10 01 1- -方方式式5 5计计数数器器选选择择00CH001CH110CH211不不用用读读/ /写写控控制制0 00 0- -锁锁定定当当前前计计数数值值0 01 1- -只只读读/ /写写计计数数器器低低字字节节1 10 0- -只只读读/ /写写计计数数器器高高字字节节1 11 1- -先先读读/ /写写计计数数低低字字节节 后后读读/ /写写计计数数高高字字节节图图8 8. .7 7 8 82 25 53 3/ /8 82 25 54 4控控制制字字格格式式17写操作规则写操作规则 对每一计数器,控制字必须

12、先于计数初值写入对每一计数器,控制字必须先于计数初值写入 计数初值的写入必须遵循控制字定义的计数格式计数初值的写入必须遵循控制字定义的计数格式(即:只读(即:只读/写低字节,只读写低字节,只读/写高字节或先读写高字节或先读/写低写低字节再读字节再读/写高字节)写高字节) 例:设置计数器例:设置计数器1、模式、模式3、计数初值、计数初值2345Htimer equ 40hmov al, ahmov al, 01110110bout timer+1, alout timer+3, al mov ax, 2345hout timer+1, al18读操作读操作 简单读操作简单读操作 直接读直接读OL

13、的内容。但必须使的内容。但必须使GATE无效或用外部逻无效或用外部逻辑禁止辑禁止CLK信号。否则,可能读到不正确的值。信号。否则,可能读到不正确的值。 计数器锁存方式计数器锁存方式 使用使用“锁存锁存”命令,然后再读命令,然后再读OL的内容。的内容。 上述两种当前计数值的读出必须遵循控制字定义的上述两种当前计数值的读出必须遵循控制字定义的计数格式(即:只读计数格式(即:只读/写低字节,只读写低字节,只读/写高字节或写高字节或先读先读/写低字节再读写低字节再读/写高字节)写高字节)19读操作(续)读操作(续) 例:读计数器例:读计数器1的当前计数值的当前计数值mov al, 01000000b

14、;01计数器计数器1,00计数器计数器1锁存,锁存,000方式方式0,二进计数。,二进计数。out timer+3, al ;写入控制字写入控制字in al, timer+1 ;读计数器读计数器1低字节低字节mov bl, alin al, timer+1 ;读计数器读计数器1高字节高字节mov bh, al208253的工作方式的工作方式共有共有6种工作方式:种工作方式: 方式方式0计数结束中断计数结束中断(OUT输出低电平,其上升沿可作为中断请输出低电平,其上升沿可作为中断请求信号)求信号) 方式方式1硬件触发的单稳电路硬件触发的单稳电路(OUT输出单稳低电平信号)输出单稳低电平信号) 方

15、式方式2时钟发生器(可作为波特率发生器)时钟发生器(可作为波特率发生器)(OUT输出输出是一个周期性波形,输出的低电平为一个是一个周期性波形,输出的低电平为一个CLK周期,可作为波特率发生器)周期,可作为波特率发生器) 例如:例如:CLK=1000KHz,计数器初值,计数器初值=1000,OUT输出为输出为1KHz的波形。的波形。 方式方式3方波发生器方波发生器(OUT输出方波信号)输出方波信号) 例如:例如:CLK=1000KHz,计数初值,计数初值=1000,OUT输出为输出为1KHz的对称方波的对称方波 方式方式4软件触发的选通脉冲软件触发的选通脉冲(OUT输出一个输出一个CLK周期的负

16、脉周期的负脉冲信号。写入时间常数后计数器开始计数)冲信号。写入时间常数后计数器开始计数) 方式方式5硬件触发的选通脉冲硬件触发的选通脉冲(OUT输出同方式输出同方式4,GATE 上升沿触发)上升沿触发)218253的工作方式(续)的工作方式(续) 对对6种工作方式,公共操作说明如下:种工作方式,公共操作说明如下: 写入控制字后,写入控制字后,OUT端进入已知初始状态(高电平端进入已知初始状态(高电平或低电平)或低电平) 写入初值后,经过写入初值后,经过CLK ,计数初值装入计数初值装入CE部部件。件。 在在CLK的的 ,采样门控信号,采样门控信号GATE GATE电平触发:电平触发: GATE

17、 CLK GATE边沿触发:边沿触发: GATE 边沿触发器置位边沿触发器置位 CLK 采样采样228253的工作方式(续)的工作方式(续) 在在CLK的的 ,计数器,计数器CE减减“1” 说明:除了方式说明:除了方式1、5(硬件触发)外,(硬件触发)外, 工作于其它方式时,工作于其它方式时,GATE应是高电平。应是高电平。23工作方式工作方式0 称为计数结束产生中断。用于事件计数,计数结束称为计数结束产生中断。用于事件计数,计数结束时产生的上升沿作为中断请求信号。时产生的上升沿作为中断请求信号。 GATE=1,使能计数器使能计数器 GATE=0,禁止计数器。禁止计数器。GATE不影响不影响O

18、UT 写入控制字后,写入控制字后,OUT为为“0” 写入计数初值后,在下一个写入计数初值后,在下一个CLK的的 ,置计数初,置计数初值到计数执行部件值到计数执行部件CE 计数为计数为“0”后,后,OUT为为“1” 计数初值一次有效计数初值一次有效24工作方式工作方式0(续)(续) 方式方式 0 特点:特点:正常情况、正常情况、 GATE作用、作用、 重新写入新计数值重新写入新计数值n=443210n=443210n=9932108n=3CLKWROUTWRGATEOUTWROUT图图8.8(a) 8253方式方式0波形图波形图25工作方式工作方式1 称为可重复触发的单稳态触发器。负脉冲宽度可控

19、称为可重复触发的单稳态触发器。负脉冲宽度可控制。(硬件触发方式)制。(硬件触发方式) OUT的初始状态为高电平的初始状态为高电平 GATE的的 后,在下一个后,在下一个CLK的的 ,置计数初,置计数初值到减一计数器值到减一计数器CE,OUT为为“0” 计数为计数为“0”后,后,OUT为为“1” 若外部若外部GATE再次触发,计数初值可多次有效。再次触发,计数初值可多次有效。268253/8254 方式方式1时序时序 正常情况正常情况 GATE作用作用 在计数时又写入新时间常数在计数时又写入新时间常数n=443210n=4432103210CLKWROUTWRGATEOUTOUTGATEGATE

20、44n=2210图图8.8(b) 8253方式方式1波形图波形图27方式方式2 称为分频器或速率波发生器。用于产生实时时钟中称为分频器或速率波发生器。用于产生实时时钟中断请求信号。断请求信号。 OUT的初始状态为高电平的初始状态为高电平 写入控制字和初值后,在下一个写入控制字和初值后,在下一个CLK的的 ,置计,置计数初值到减一计数器数初值到减一计数器CE。 计数为计数为“1”后,后, OUT为一个为一个CLK宽度的负脉冲。宽度的负脉冲。然后自动重置计数初值,输出然后自动重置计数初值,输出OUT是连续的周期波是连续的周期波形。形。288253/8254 方式方式2时序时序 方式方式2,输出周期

21、性负脉冲,输出周期性负脉冲3210CLKWROUTGATE(3)210n=3图图8.8(c) 8253方方式式2波波形形图图 29工作方式工作方式3 称为方波发生器。类似方式称为方波发生器。类似方式2。 OUT的初始状态为高电平的初始状态为高电平 写入控制字和初值后,在下一个写入控制字和初值后,在下一个CLK的的 ,置计,置计数初值到减一计数器数初值到减一计数器CE。 计数初值可多次有效,计数初值可多次有效,OUT是连续的周期方波。是连续的周期方波。 计数初值为偶数,则输出为计数初值为偶数,则输出为CLK的的n分频,占空比分频,占空比为为1:1。 计数初值为奇数,则输出为计数初值为奇数,则输出

22、为CLK的的n分频,占空比分频,占空比为为(n+1/2) :(n-1/2)。30工作方式工作方式3(续)(续)CLKWROUTGATE2n=4222图图8.8(d) 8253方方式式3波波形形图图31工作方式工作方式4 称为软件触发的选通信号。称为软件触发的选通信号。 OUT的初始状态为高电平的初始状态为高电平 写入控制字和初值后,在下一个写入控制字和初值后,在下一个CLK的的 ,置计,置计数初值到减一计数器数初值到减一计数器CE。 计数为计数为“0”后,后,OUT为一个为一个CLK宽度的负脉冲。宽度的负脉冲。 计数初值一次有效计数初值一次有效328253/8254 方式方式4时序时序 方式方

23、式4:软件触发,输出单次负脉冲(一个时钟脉冲宽度):软件触发,输出单次负脉冲(一个时钟脉冲宽度)CLKWROUTn=5543210图图8.8(e) 8253 方式方式4波形图波形图33方式方式5 称为称为硬件触发硬件触发的选通信号。的选通信号。 OUT的初始状态为高电平的初始状态为高电平 GATE 后,在下一个后,在下一个CLK的的 ,置计数初值,置计数初值到减一计数器到减一计数器CE。 GATE不影响不影响OUT信号波形。信号波形。 计数为计数为“0”后,后,OUT为一个为一个CLK宽度的负脉冲。宽度的负脉冲。348253/8254 方式方式5 时序时序 方式方式5:硬件触发,输出单次负脉冲

24、(一个时钟脉冲宽度):硬件触发,输出单次负脉冲(一个时钟脉冲宽度)CLKWROUTGATEn=5543210图图8.8(f) 8253 方式方式5波形图波形图35 二、二、8253/4的应用举例的应用举例368253/8254应用电路应用电路 用用8254产生周期为产生周期为1ms的时钟波形,输入时钟的时钟波形,输入时钟CLK1周期为周期为500ns,输出波形如下图。问:,输出波形如下图。问:1. 8254工作于哪种方式?工作于哪种方式?2. 计算计数数计算计数数CH1的初值的初值CR? 3. 写出写出8254初始化程序段(设初始化程序段(设8254的端口地址为的端口地址为240H243H)。

25、)。5 50 00 0n ns s1 1m ms s+ +5 5V V8 82 25 54 4G GA AT TE E1 1C CL LK K1 1O OU UT T1 137解:解:1.由电路图知,由电路图知,8254工作于方式工作于方式2(时钟发生器);(时钟发生器);2. 计数初值计数初值CR=1ms/500ns=2000;3.初始化程序段如下:初始化程序段如下: mov dx, 243h ;注意用;注意用dx存放存放I/O口地址口地址 mov al, 01110100b ; (或或74h) out dx, al ; 注意用注意用out,不要用,不要用mov指令指令 sub dx, 2

26、; 或用或用 mov dx, 241h mov ax, 2000 out dx, al mov al, ah out dx, al388253/4在在PC系列机中早期的应用系列机中早期的应用 8253/4的计数器的计数器0、1、2占用的端口地址分别为占用的端口地址分别为40H、41H、42H。控制口占用的端口地址为控制口占用的端口地址为43H。 计时器计时器0 产生实时时钟信号,占用产生实时时钟信号,占用8259的的IRQ0。频率为频率为18.2次次/秒。秒。 计时器计时器1 用于用于DRAM的周期刷新。的周期刷新。15us刷新一次刷新一次 计时器计时器2 扬声器发声。其频率由程序设定。扬声器

27、发声。其频率由程序设定。398254在在PC机系统中早期的应用机系统中早期的应用DACK0(来来自自8237)PCLKRESET来来自自8255 PB0 (端端口口61H)+5VIORIOWT/CCSA1A0D7D0来来自自8255PB1(端端口口0061H)SPK(去去扬扬声声器器)DREQ0(到到8237)IRQ0(到到8259A)DQQCLKGATE0CLK0GATE1CLK1CLK2GATE2RDWRCSA1A0D7-D0功功放放与与低低通通滤滤波波DSQCLR+5VOUT0OUT1OUT28254图图8 8. .9 9(a a) 8 82 25 54 4在在P PC C机机系系统统中

28、中的的应应用用40日时钟的实现日时钟的实现 方波频率为方波频率为18.2次次/秒,秒,T=54.9ms Timer_Hi:Timer_Lo=0018:00B0H;下面解释如可计算。;下面解释如可计算。FFA5HF000HRAM00:00H00:20H00:22H40:6CH40:6EHTimer-LoTimer-Hi中中断断服服务务程程序序Timer-INT向向量量指指针针向向量量时时间间值值+ +1 1并并保保存存82548259ACPUGATE0+5VCLK0IRQ0T=54.9msINTAINTINTRD7D0D7D0INTA图图8.98.9(b b) 8254 8254日时钟运行原理示

29、意图日时钟运行原理示意图41日时钟实现的计算过程日时钟实现的计算过程 输出方波的周期为:输出方波的周期为: Tout=1/18.2x1000ms=54.945ms , 作为计时单位,计一天的时作为计时单位,计一天的时间。间。 1天天=24x60 x60 x1000ms/54.945ms=1573040 (计时单位)(计时单位) =001800B0H 1小时小时=65543个计时单位个计时单位 1分钟分钟=1092个计时单位个计时单位 1s=18.2个计时单位个计时单位 每每54.945ms申请一次中断,中断服务程序中只作加申请一次中断,中断服务程序中只作加1操作。操作。 每次中断在双字变量中加

30、每次中断在双字变量中加1,先在低位字中加,先在低位字中加1,计满,计满65536次而复位,向高位字进次而复位,向高位字进1,一直到,一直到Time-Lo=00B0H, Teme-Hi=0018H时,就计到了时,就计到了24小时。然后请小时。然后请0,开始第二,开始第二天的计时。天的计时。42第二节第二节 并行传输及其接口并行传输及其接口43并行接口的特点并行接口的特点 接口设计简单,因为计算机的接口总线多数是并行接口设计简单,因为计算机的接口总线多数是并行总线总线 多条数据线同时传送信息,传送距离短多条数据线同时传送信息,传送距离短 需要握手信号进行控制需要握手信号进行控制 数据传输率高数据传

31、输率高 并行接口分为非选通接口(简单接口)与选通接口并行接口分为非选通接口(简单接口)与选通接口44一、简单并行口一、简单并行口 简单接口一般用于控制书出口和状态输入口,电路简单接口一般用于控制书出口和状态输入口,电路比较简单;而选通接口用于和外设交换数据,电路比较简单;而选通接口用于和外设交换数据,电路比较复杂。比较复杂。 简单输出口必须有数据输出寄存器,用来接收和发简单输出口必须有数据输出寄存器,用来接收和发送数据。其原因是数据总线是高速、时分复用的公送数据。其原因是数据总线是高速、时分复用的公用总线。用总线。 简单输入口必须是三态门,因为它要向总线发送数简单输入口必须是三态门,因为它要向

32、总线发送数据。它须在特定时间的特定条件下才可向总线发送据。它须在特定时间的特定条件下才可向总线发送数据,其他条件下,该口必须与总线脱离。数据,其他条件下,该口必须与总线脱离。45一、简单并行口(续)一、简单并行口(续) 通用简单并行口举例通用简单并行口举例I/O选择选择=1,外部输入;,外部输入;I/O选择选择=0,输入的是数据输出寄存器的内容。,输入的是数据输出寄存器的内容。必须有命令寄存器来配置接口逻辑必须有命令寄存器来配置接口逻辑数数据据总总线线数数据据输输出出寄寄存存器器复复用用器器0 01 1读读数数据据写写命命令令D D触触发发器器I I/ /O O选选择择口口I I/ /O O总

33、总线线写写数数据据D DC CP PQ QS S图图8 8. .1 10 0 通通用用简简单单I I/ /O O并并口口的的控控制制 46二、选通并行口及其联络二、选通并行口及其联络 选通并行选通并行I/O口口 选通选通I/O口的输入或输出是有条件的,与外设交换数口的输入或输出是有条件的,与外设交换数 据时,除了据时,除了I/O数据线外,还需有联络线(握手信号)数据线外,还需有联络线(握手信号) 简单并行口的输入或输出是无条件的,一般不需要简单并行口的输入或输出是无条件的,一般不需要 联络信号联络信号47二、选通并行口及其联络(续)二、选通并行口及其联络(续) 选通选通I/O口的联络方式口的联

34、络方式 异步互锁联络异步互锁联络 传送数据时有发、收联络信号,采用一问一答方式互锁联络传送数据时有发、收联络信号,采用一问一答方式互锁联络 脉冲联络脉冲联络 发、收联络信号为负脉冲(发、收联络信号为负脉冲(STB STB 和和 ACK)ACK)而非电平信号而非电平信号 混合联络混合联络 联络信号既不同于电平联络,又不同于脉冲联络,发、收联络信号既不同于电平联络,又不同于脉冲联络,发、收 中一个为电平,一个为脉冲信号,不属于互锁联络。中一个为电平,一个为脉冲信号,不属于互锁联络。 NRZNRZ(不归零)联络(不归零)联络 为了减少联络线的跳变次数,采用为了减少联络线的跳变次数,采用NRZ,上沿与

35、下沿各为,上沿与下沿各为 一次联络,每次不归零(一次联络,每次不归零(Non Return to Zero)。)。48三、三、 可编程并口可编程并口82558255A A 8255A是一种典型的通用选通并行接口芯片。是一种典型的通用选通并行接口芯片。 其内部有三个独立的其内部有三个独立的8位数据口,即位数据口,即A口、口、B口、口、C口。口。 有三种工作方式有三种工作方式 方式方式0-基本输入基本输入/输出方式输出方式 方式方式1-选通输入选通输入/输出方式输出方式 方式方式2-双向传送方式双向传送方式498255A外部引脚外部引脚PA3PA1PA2PA4PA5PA0PA6PA7WRRESET

36、 D2D0D1D3D4D5D6D7PB7PB6PB5PB4PB3VCCRDCSGNDA1A0PC7PC5PC6PC4PC1PC0PC3PC2PB0PB2PB1图图8.19 8255A8.19 8255A引脚图引脚图8255A508255A内部结构图内部结构图B B 组组控制控制部件部件A A 组组控制控制部件部件 A A口口(8 8位)位) B B口口(8 8位)位) C C 口口(高(高4 4位)位) C C 口口(低(低4 4位)位)数据总线数据总线D7D0RDWRRESET CSA1A08 8位内部数据总线位内部数据总线 I/OPA7PA0 I/OPB7PB0 I/OPC7PC4 I/O

37、PC3PC0图图8.20 8255A8.20 8255A内部结构框图内部结构框图数数据据总总线线缓缓冲冲器器读读写写控控制制逻逻辑辑518255A内部结构内部结构 主要由数据总线缓冲器、读写控制逻辑、主要由数据总线缓冲器、读写控制逻辑、A、B、C三个双向三个双向I/O端口及有关控制电路组成。端口及有关控制电路组成。 数据总线缓冲器数据总线缓冲器 三态双向三态双向8位缓冲,用于收发数据总线上的数据位缓冲,用于收发数据总线上的数据 读读/写控制逻辑写控制逻辑 包括包括RD、WR、CS、A0、A1。控制总线的开放、控制总线的开放、关闭和数据的传送方向。关闭和数据的传送方向。528255A内部结构(续

38、)内部结构(续) 数据端口数据端口A、B、C A口、口、B口具有输入口具有输入/输出锁存、三态缓冲功能输出锁存、三态缓冲功能 C口具有输出锁存口具有输出锁存/输入缓冲功能,可分成两个输入缓冲功能,可分成两个4位端位端口。口。 A、B组控制电路组控制电路 控制控制A、B和和C三个端口的工作方式。三个端口的工作方式。A组控制组控制A口和口和C口的高口的高4位;位; B组控制组控制B口和口和C口的低口的低4位位538255A方式选择控制字方式选择控制字D3D4D2D5D7D6D0D1B B 组组 C C口口(低低4 4位位) 1 1:输输入入 0 0:输输出出 B B 口口 1 1:输输入入 0 0

39、:输输出出 方方式式选选择择 0 0:方方式式0 0 1 1:方方式式1 1A A 组组 C C口口(高高4 4位位) 1 1:输输入入 0 0:输输出出 A A 口口 1 1:输输入入 0 0:输输出出 方方式式选选择择 0 00 0:方方式式0 0 0 01 1:方方式式1 1 1 1X X: : 方方式式2 2方方式式字字标标志志1 1:有有效效图图8 8. .2 21 1 8 82 25 55 5A A工工作作方方式式控控制制字字548255A编程命令编程命令 例:例:A口方式口方式1、输入,、输入,C口高口高4位为输出;位为输出;B口方式口方式0、输出,输出,C口低口低4位为输入。位

40、为输入。 假设假设8255A的端口地址为的端口地址为60H63H mov dx, 63h mov al, 10110001b out dx, al558255A C口置位口置位/复位控制字复位控制字 不用 不不 用用( (可可设为设为000) )D0D6D7D5D4D3D2D1按按位位置置位位/复复位位控控制制字字标标志志: :永永为为0C口口位位的的置置位位/复复位位1: :置置位位0: :复复位位位选择PC D3 D2 D10 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 0 1 2 3 4 5 6 7图图8.22 8255A8.22 8255

41、A按位置位按位置位/ /复位控制字格式复位控制字格式568255A编程命令(续)编程命令(续) 例:对端口例:对端口C的的bit3置置1 mov dx, 63h mov al, 00000111b out dx, al57 1、 方式方式0及其应用及其应用588255A工作方式工作方式0A9A2译码器CSIORIOWRESETRESETA0A1A口B口C口数据总线RDWRD7 D0A0A1外部设备PA7PA0PC7PC4PC3PC0PB7PB0A口C口B口A 组B 组图图8.23(a) 8255A8.23(a) 8255A工作方式工作方式0 0及其应用及其应用8255A8255A59方式方式0

42、 称为基本输入称为基本输入/输出方式输出方式 8bits并行的输入或输出,无专用的握手信号,可使并行的输入或输出,无专用的握手信号,可使用用C口中的一条或若干条用做握手线口中的一条或若干条用做握手线 输出具有锁存功能,输入具有缓冲功能而无锁存功输出具有锁存功能,输入具有缓冲功能而无锁存功能能 端口的输入、输出配置有端口的输入、输出配置有16种使用组合种使用组合 A口:口:8位,输入,输出位,输入,输出 B口:口:8位,输入,输出位,输入,输出 C口:低口:低4位,输入,输出位,输入,输出 C口:高口:高4位,输入,输出位,输入,输出602、 方式方式1及其应用及其应用618255A工作方式工作

43、方式1(输入)(输入)INTE A 端口APC4PC5PC3PC6,7123STBAIBFAINTRAI/OINTE B 端口BPC2PC1PC0456STBBIBFBINTRB端口A方式1端口B方式1图图8.238.23(b b) 8255A 8255A工作方式工作方式1 1(输入)(输入)62方式方式1的特点的特点 称为选通输入称为选通输入/输出方式输出方式 A口、口、B口用作数据传送口,可输入或输出口用作数据传送口,可输入或输出 使用使用C口中的若干线作专用的握手信号口中的若干线作专用的握手信号 输出具有锁存功能,输入具有缓冲功能和锁存功能输出具有锁存功能,输入具有缓冲功能和锁存功能63方式方式1输入输入 STB (外部设备发来)(外部设备发来) 低电平将数据锁存在输入缓冲器(低电平将数据锁存在输入缓冲器(IN BUFFER) IBF 输入缓冲器满输入缓冲器满 INTR (由(由8255A发给发给8259A) 中断请求信号中断请求信号 INTE A或或B (A口与口与B口内的中断允许控制位)口内的中断允许控制位) 中断请求允许位。中断请求允许位。INTEA对应对应PC4位,位,INTEB对应对应PC2位。即:对位。即:对INTEA/B的置位、复位是通过对的置位、复位是通过对PC4/2的

温馨提示

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

评论

0/150

提交评论