第7章 可编程接口芯片及应用.ppt
《第7章 可编程接口芯片及应用.ppt》由会员分享,可在线阅读,更多相关《第7章 可编程接口芯片及应用.ppt(92页珍藏版)》请在三一文库上搜索。
1、T,拓宽教育网,开始,学习愉快,画面宁静,使人可以安静的进入学习状态,唤醒人的学习意识. 宁静以致远,新编16/32位 微型计算机原理及应用,李继灿 主编,微机与外设交换信息, 都必须通过接口电路来实现。随着大规模集成电路技术的发展,现已生产了各种各样通用的可编程接口芯片,不同系列的微处理器都有其标准化、系列化的接口芯片可供选用。因此,学会典型通用接口芯片的工作原理和使用方法,是掌握微机接口技术的重要基础。 本章主要介绍Intel系列的8255A、8250、8253-5、8259A等几种典型通用的接口芯片,第7章 可编程接口芯片及应用,7.1 接口的分类及功能,7.2 可编程计数器/定时器82
2、53-5,7.3 可编程中断控制器8259A,7.4 可编程并行通信接口芯片8255A,7.5 可编程串行异步通信接口芯片8250,7.6 新型通用I/O接口标准,7.1 接口的分类及功能 一、 接口的分类 按接口的功能可分为通用接口和专用接口两类。通用接口适用于大部分外设,如行式打印机、电传打字机和键盘等都可经通用接口与CPU相连。通用接口又可分为并行接口和串行接口。并行接口是按字节传送的;串行接口和CPU之间按并行传送,而和外设之间是按串行传送的。专用接口仅适用于某台外设或某种微处理器,用于增强CPU的功能。 此外,在微机控制系统中专为某个被控制的对象而设计的接口,也是专用接口。,二、接口
3、的功能 接口的功能很丰富,视具体的接口芯片而定,其主要的功能有: (一)缓冲锁存数据 通常CPU与外设工作速度不可能完全匹配,在数据传送过程中难免有等待的时候。为此,需要把传输数据暂存在接口的缓冲寄存器或锁存器中,以便缓冲或等待;而且,要为CPU提供有关外设的状态信息,如外设“准备好”、“忙”,或缓冲器“满”、“空”等。 (二) 地址译码 在微机系统中,每个外设都被赋予一个相应的地址编码,外设接口电路能进行地址译码,以选择设备。,(三) 传送命令 外设与CPU之间有一些联络信号,如外设的中断请求,CPU的响应回答等信号都需要接口来传送。 (四) 码制转换 在一些通信设备中,其信号是以串行方式传
4、输的,而计算机的代码是以并行方式输入输出的,这就需要进行并行码与串行码的互相转换;在转换中,根据通信规程还要加进一些同步信号等,这些工作也是接口电路要完成的任务之一。 (五) 电平转换 一般CPU输入输出的信号都是TTL电平,而外设的信号就不一定是TTL电平。为此,在外设与CPU连接时,要进行电平转换,使CPU与外设的电压(或电流)相匹配。,7.2 可编程计数器/定时器8253-5,8253-5是可编程计数器/定时器。 一、 8253-5的引脚与功能结构 8253-5是一种24脚封装的双列直插式芯片。,8253-引脚的定义如下: D0D7: 数据线。 A0、A1: 地址线,用于选择3个计数器中
5、的一个及选择 控制字寄存器。 RD: 读控制信号,低电平有效。 WR: 写控制信号,低电平有效。 CS: 片选端,低电平有效。 CLK02: 计数器0#、1#、2#的时钟输入端。 GATE02: 计数器0#、1#、2#的门控制脉冲输入端, 由外部设备送入门控脉冲。 OUT02: 计数器0#、1#、2#的输出端,由它接至 外部设备以控制其启停。 8253-5的功能体现在两个方面,即计数与定时。两者的工作原理在实质上是一样的,都是利用计数器作减1计数,减至0发信号;两者的差别只是用途不同。,二、8253-5的内部结构和寻址方式,(一) 内部结构 8253-5的内部结构有3个独立结构完全相同的16位
6、计数器和1个8位控制字寄存器。在每个计数器内部,又可分为计数初值寄存器CR、计数执行部件CE和输出锁存器OL 3个部件,它们都是16位寄存器,也可以作8位寄存器来用。在计数器工作时,通过程序给初值寄存器CR送入初始值,该值再送入执行部件CE作减1计数;而输出锁存器OL则用来锁存CE的内容,该内容可以由CPU进行读出操作。 (二) 寻址方式 8253-5内部有3个计数器和1个控制字寄存器,可通过地址线A0、A1,读写控制线RD、WR与选片CS进行寻址,并实现相应的操作,三、8253-5的6种工作方式及时序关系 8253-5的方式控制字格式如图7.4所示,各计数器有6种可供选择的工作方式,以完成定
7、时、计数或脉冲发生器等多种功能。,(一) 方式 计数结束产生中断 8253-5在方式0工作时,有以下特点: (1) 当写入控制字后,OUT端输出低电平作为起始电平,计数初值装入计数器后,输出仍保持低电平。若GATE端的门控信号为高电平,当CLK端每来一个计数脉冲,计数器就作减1计数,当计数值减为0时,OUT端输出变为高电平,若要使用中断,则可以用此电平变化向CPU发中断请求。,(2) GATE为计数控制门。 方式0的计数过程可由门控信号GATE控制暂停,即当GATE=1时,允许计数;GATE=0时,停止计数。GATE信号的变化并不影响输出OUT端的状态。 (3) 计数过程中可重新装入计数初值。
8、 如果在计数过程中,重新写入某一计数初值,则在写完新的计数值后,计数器将从该值重新开始作减1计数。,(二)方式1 可编程单稳触发器,(1)写入控制字后,OUT端输出高电平作为起始电平。当计数初值送到计数器后,若无GATE的上升沿,不管此时GATE输入的触发电平是高电平还是低电平,都不开始减1计数,必须等到GATE端输入正跳变触发脉冲时,计数过程才会开始。 (2)工作时,由GATE输入触发脉冲的上升沿使OUT变为低电平,每来一个计数脉冲,计数器作减1计数,当计数值减为0时, OUT再变为高电平。OUT端输出的单稳负脉冲的宽度为计数器的初值乘以CLK端输入脉冲周期。 (3)如果在计数器未减到0时,
9、门控端GATE又来一触发脉冲,则由下一个时钟脉冲开始,计数器将从初始值重新作减1计数.当减至0时,输出端又变为高电平。这样,使输出脉冲宽度延长。,(三)方式2 分频器 (又叫分频脉冲产生器) 此方式是n分频计数器,n是写入计数器的初值。写入控制字后,OUT端输出高电平作为起始电平。当计数初值写入计数器后,从下一个时钟脉冲起,计数器开始作减1计数。当减到1时,OUT端输出将变为低电平。当计数端CLK输入n个计数脉冲后,在输出端OUT输出一个n分频脉冲,其正脉冲宽度为(n-1)个输入脉冲时钟周期,而负脉冲宽度只是一个输入脉冲时钟周期。 GATE用来控制计数,GATE=1,允许计数;GATE=0,停
10、止计数。因此,可以用GATE来使计数器同步。要注意的是,在方式2下,不但高电平的门控信号有效,上升跳变的门控信号也是有效的。,(四)方式3 方波频率发生器 此方式类似于方式2,但输出为方波或者为对称的矩形波。当写入控制字后,OUT端输出低电平作为起始电平,装入计数值n后,OUT端输出变为高电平。如果当前GATE为高电平,则立即开始作减1计数。当计数值n为偶数时,每当计数值减到n/2时,则OUT端由高电平变为低电平,并一直保持计数到0,故输出的n分频波为方波;当n为奇数时,输出分频波高电平宽度为(n+1)/2计数脉冲周期,低电平宽度为(n-1)/2计数脉冲周期。,(五)方式4 软件触发选通脉冲
11、按方式4工作时,写入控制字后,输出OUT变为高电平。当由软件触发写入初始值后,计数器作减1计数,当计数器减到0时,在OUT端输出一个宽度等于一个计数脉冲周期的负脉冲。若GATE=1,允许计数;GATE=0,停止计数。 (六)方式5 硬件触发选通脉冲 此方式类似于方式4,所不同的是GATE端输入信号的作用不同。按方式5工作时,由GATE输入触发脉冲,从其上升沿开始,计数器作减1计数,计数结束时,在OUT端输出一个宽度等于一个计数脉冲周期的负脉冲。在此方式中,计数器可重新触发。在任何时刻,当GATE触发脉冲上升沿到来时,将把计数初值重新送入计数器,然后开始计数过程。,中断控制器是专门用来处理中断的
12、控制芯片。它的功能是在有多个中断源的系统中,协助CPU实现对外部中断请求的管理,对它们进行优先权排队后选中当前优先权最高的中断请求向CPU发出中断请求信号;并且,当CPU响应中断请求进入中断服务子程序之后,如果有某个新的外部中断请求的优先权高于当前正在处理的最低优先权时, 中断控制器还能让此中断通过而到达CPU的可屏蔽中断请求信号INTR端,从而实现中断嵌套。8259A就是一个可编程的输入端中断控制器,其功能很强,也很灵活,但使用时比较复杂。Intel 8259A芯片有以下工作特点:,7.3 可编程中断控制器8259A,Intel 8259A芯片有以下工作特点: (1)单片8259A能管理8级
13、中断。若采用级联工作方式,可 用9片8259A构成64级主从式中断系统。 (2)8259A可以通过编程工作于多种不同的方式,从而能方 便地满足多种类型微机中断系统的需要。 (3)8259A采用NMOS工艺制造,只需要一组5V电源。,一、8259A的引脚与功能结构 一 8259A的引脚与功能结构 芯片片脚定义如下: D0D7:8根双向数据线。在小系统中,它们直接和CPU的数据总线相连;在大系统中,它们一般通过总线驱动器间接与CPU相连。 WR :写控制信号,低电平有效。它用来通知8259A准备从数据线上接收数据,这些数据实际上就是CPU发往8259A的命令字。 RD:读控制信号,低电平有效。它用
14、来通知8259A将其内部某个寄存器的内容读到CPU的数据总线上。 CS:片选信号端,低电平有效。它通过地址译码逻辑电路与地址总线相连,用于选通8259A。,A0:地址线。它用来指出当前8259A的两个端口中被访问的是奇地址(较高8位地址)还是偶地址(较低8位地址)。在8088中,由CPU的A0接入8259的A0端;而在8086中,则由CPU的A1接入8259的A0端。这样连接是为了能同时满足在8位或16位两种系统中,都能使所有的数据传输利用16位总线的低8位。 IR0IR7:8级中断请求输入端。它用于接收来自I/O设备的外部中断请求。在主从级联方式的复杂系统中,主片的IR0IR7端分别与各从片
15、的INT端相连,用来接收来自从片的中断请求。 INT:中断请求信号(输出)。它连至CPU的INTR端,用来向发中断请求信号。,INTA:中断应答线(输入)。它连至CPU的INTA端,用于接收来自CPU的中断应答信号。当接收CPU的应答信号后,8259A就把中断向量类型号送到数据总线。并且,CPU将在中断应答信号的第2个INTA负脉冲结束时,读取数据总线上的中断类型号。 SP/EN:此引脚是一个双功能的双向信号线,分别表示两种工种方式。 当8259A片采用缓冲方式时,则SP/EN端作为输出信号线EN;当8259A片采用主从工作方式(即非缓冲方式)时,则SP/EN端作为输入信号线SP。在缓冲工作方
16、式中,当EN有效时,作为输出信号允许数据总线缓冲器选通,使数据由8259A通过缓冲器读出至CPU。当EN无效时,表示CPU将使数据写入8259A。,在主从工作方式中,作为输入信号,由该输入引 脚的电平来区分“主”或“从”8259A,若输入高电平,即SP=1,则本片为“主”8259A,若输入低电平,即SP=0,则 为”从”8259A。 CAS0CAS2:3根级联控制信号。系统中最多可以把8级中 断请求扩展为64级主从式中断请求,对于“主”8259A, CAS0CAS2为输出信号,对于“从”8259A,CAS0CAS2 为输入信号。在主从级联方式系统中,将根据“主” 8259A的这3根引线上的信号
17、编码来具体指明是哪一个 8259A“从”片。,二、8259A内部结构框图和中断工作过程,8259A的8个功能部件组成一个有机的整体,共同协调处理它的整个中断工作过程,其中断过程执行步骤如下: (1) 当外部中断源使8259A的一条或几条中断请求线(IR0 IR7)变成高电平时,则先使IRR的相应位置“1”。 (2) 系统是否允许某个已锁定在IRR中的中断请求进入ISR寄 存器的对应位,可用IMR对IRR设置屏蔽或不屏蔽来控制. 如果已有几个未屏蔽的中断请求锁定在ISR的对应位,还 需要通过优先级判别器即进行裁决,才能把当前未 屏蔽的最高优先级的中断请求从INT输出,送至CPU的 INTR端。,
18、(3) 若是处于开中断状态,则它在执行完当前指 令,就用INTA作为响应信号送至8259A的INTA。8259A 在收到CPU的第1个中断应答INTA信号后,先将ISR 中的中断优先级最高的那一位置“1”,再将IRR中刚才 置“1”的相应位复位成“0”。 (4) 8259A在收到第2个INTA信号后,将把与此中断相对应 的一个字节的中断类型n从一个名为中断类型寄存器 的内部部件中送到数据线,CPU读入该中断类型号n, 并根据它从中断向量表中取得相对于该中断类型号n 的中断向量及其指定的中断入口地址,随即可转入执 行相应的中断服务子程序。,(5) 当CPU对某个中断请求做出的中断响应结束后,82
19、59A将 根据一个名为方式控制器的结束方式位的不同设置,在 不同时刻将ISR中置1“的中断请求位复“0”。具体地说, 在自动结束中断(AEOI)方式下,8259A会将ISR中原来在 第1个INTA负脉冲到来时设置的“1”(即响应此中断请求 位)在第2个INTA脉冲结束时,自行复位成“0”。若是非 自动结束中断方式(EOI),则ISR中该位的“1”状态将一 直保持到中断过程结束,由CPU发EOI命令才能复位成 “0”。,三、8259的控制字格式 8259A的强大中断处理功能和各种灵活的工作方式,都是通过编程来设置的,具体地说,是对8259A内部有关寄存器写入控制命令字来实现控制的。按照控制字功能
20、及设置的要求不同,可分为两种类型的命令字: (1)初始化命令字ICW(Initialization Command Word):ICW1ICW4,它们必须在初始化时分别写入4个相应的寄存器。并且,一旦写入,一般在系统运行过程中就不再改变。 (2)工作方式命令字或操作命令字OCW(Operation Command Word):OCWOCW3,它们必须在设置初始化命令后方能分别写入3个相应的寄存器。它们用来对中断处理过程进 行动态的操作与控制。在一个系统运行过程中,操作命令字可以被多次设置。,四、8259A应用举例 在IBM PC/XT机中,只用1片8259A中断控制器,用来提供8级中断请求,其
21、中IR0优先级最高,IR7优先级最低。它们分别用于日历时钟中断、键盘中断、保留、网络通信、异步通信中断、硬盘中断、软盘中断及打印机中断。8259A片选地址为20H、21H。 8259A使用步骤如下: 1 初始化 MOV AL, 13H ;写ICW1,单片,边沿触发,要ICW4 OUT 20H,AL MOV AL,8;写ICW2,中断类型号从8开始 OUT 21H,AL MOV AL,0DH;写ICW4,缓冲工作方式,8088/8086配置 OUT 21H,AL MOV AL,0;写OCW1,允许IR0IR7全部8级中断请求 OUT 21H,AL,2 送中断向量入口地址 例如,异步通信中断IR4
22、,其中断向量类型号为8+4=12(0CH),则中断入口地址的偏移量(IP值)与段地址(CS)在入口地址表中的存放地址为124=48(30H),49(31H),50(32H),51(33H)。其中30H、31H存放指令指针IP;32H,33H存放指令段码CS。 3 中断子程序结束 由于8259A采用中断工作方式,且ICW4中的位(即)为,这意味着采用正常结束中断,因此,在中断子程序结束前必须发EOI命令和IRET命令。 MOV AL,20H:写OCW2命令,使ISR相应位复位(即发EOI命令)。 OUT 20H,ALIRET;开放中断允许,并从中断返回 4 中断嵌套 为了使中断嵌套,即在中断响应
23、过程中,允许比本中断优先级高的中断进入,只要在进入中断处理程序后,执行开中断指令STI即可达到此目的。,.4 可编程并行通信接口芯片8255A,8255A是一种可编程并行通信接口芯片,其功能与通用性更强。 一、 8255A芯片引脚定义与功能,.数据端口、 8255A的3个8位数据端口A、B、C各有不同特点,可以由设计者用软件使它们分别作为输入端口或输出端口。 在实际使用中,A口与B口常常作为独立的输入端口或者输出端口,C口则配合A口和B口工作。具体地说,C口常常通过控制命令分成为2个4位端口,每个4位端口包含1个4位的输入缓冲器和1个4位的输出锁存器/缓冲器,它们分别用来为A口和B口输出控制信
24、号和输入状态信号。 .A组控制和B组控制部件 这两组控制部件有两个功能: 一是接收来自芯片内部数据总线上的控制字;二是接收来自读写控制逻辑电路的读/写命令,以此来决定两组端口的工作方式和读/写操作.,.读/写控制逻辑电路 读/写控制逻辑电路的功能是负责管理8255A的数据传输过程。它接收CS及来自地址总线的信号A1、A0(在8086总线中为A2、A1)和控制总线的信号RESET、WR、RD,将它们组合后,得到对A组控制部件和B组控制部件的控制命令,并将命令送给这两个部件,再由它们完成对数据、状态信息和控制信息的传输。 .数据总线缓冲器 它是一个双向三态的8位数据缓冲器,8255A正是通过它与系
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第7章 可编程接口芯片及应用 可编程 接口 芯片 应用
链接地址:https://www.31doc.com/p-5030303.html