第07章 可编程接口芯片_第1页
第07章 可编程接口芯片_第2页
第07章 可编程接口芯片_第3页
第07章 可编程接口芯片_第4页
第07章 可编程接口芯片_第5页
已阅读5页,还剩149页未读 继续免费阅读

下载本文档

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

文档简介

1、第七章可编程接口芯片,可编程接口概述可编程并行I/o接口芯片8255A可编程定时计数器接口芯片8253两个芯片的编程和应用,南通大学计算机科学技术学院,本章内容是本课程的重点,希望学生掌握两个芯片的工作方式、编程方法和灵活应用,具有可编程接口概述输入功能和输出功能的简单可编程接口电路包括以下输入接口,主要有8个3个主要由8位闩锁组成的输出接口;还有8位多路复用开关和控制此开关的寄存器FF。控制信息、数据端口、控制端口、用户写入寄存器FF的内容称为命令词或方法控制词,寄存器FF称为命令寄存器,该端口称为命令端口或控制端口,可编程芯片初始化过程实际上是对芯片上的控制端口写入各种命令词的操作过程。目

2、前常用的可编程芯片包括:8255A并行I/O接口8253计数器/计时器8251串行I/O8259A中断控制器、7.1可编程并行输入/输出接口芯片8255A、第一,功能8255a包括8086、MCS51、Z80CPU系统等8255A具有三个数据端口,具有用于与外围设备并行交换数据的锁定或缓冲区。用户可以使用允许选择不同工作方式的程序,具有很好的通用性。使用灵活性在CPU和外围设备之间提供并行输入和输出通道。2,8255A的内部结构,1 .逻辑框架,2.8255A的内部结构,3,8255A的针脚分布,1408255A2021,8255A芯片形状,引线的功能(1),连接到系统侧的主引线:选择D0D7

3、:数据端口CS:图纸RD:读取控制WR:其中,c端口可以用作单独的输入/输出端口,也可以用作a、b端口控制信号输出或状态信号输入,还可以进行位操作。具体而言,对于PC7PC0,根据端口的工作方式,可以将多个根多路复用用于“接触”信号或状态信号。2、8255A和系统的连接图,d077、wr、rd、a1、A0、cs、db、iow、ior、a1、A0、a9a 8a 7a 6a 5a4a 3a2a 1a0m/io 110000000、8255和系统的连接实例、8255地址0300H、5和8255A的工作方式以及编程、1和8255A的工作方式8255A有三种工作方式。即0基本I/o方法、3个端口、方法1

4、门控输入和输出、a、b端口;方法2双向传输方法,a端口。2,8255A编程所谓8255A编程是在用户使用8255之前,选择软件定义(设置)端口工作方式、数据传输方向等所需的功能。对于c端口,还可以通过编程执行位操作。8255A重置时a、b和c 3端口在模式0的输入状态下工作。1)方法控制词这是表示非常丰富信息的8位控制词。上面8255A内部的三个端口分为a,b,因此控制词相应地分为两部分,分别控制:格式的组a和组b。工作方式控制字格式(如果A1A0=11),工作方式控制字确定三个端口的工作方式。例如,如果ABC 3个端口输出0、a、b、c的高4位,输入c的低4位,则控制词为81H,假设8255

5、的端口默认地址为200H。右图:MOVAL,81HMOVDX,203HOUTDX,AL,2)C端口设置“1”清除“0”控制词设置“1”称为定位操作,明确的“0”称为重置操作。,位控件用于确定其中一个c端口的值或设置INTE位(方法1,2),(A1A0=11)。例如,要将PC4设置为“1”,控制词为09H,8255A的端口默认地址为200H。右:MOVAL、09HMOVDX、203HOUTDX、AL、3状态单词读取(可在操作模式下说明)设置8255A设置为在程序1或方法2中工作时,c端口会根据情况生成或接收“联系”信号。如果此时阅读c-kou,朗读的内容是作为I/O行的内容由两部分组成,另一部分

6、与接触状态有关。6、8255A三种工作方式,1、8255A工作方式0也称为基本输入输出方式。在这种情况下,端口a和端口b可以选择控制词作为输入端口或输出端口。端口c分为高4位(PC7PC4)和低4位(PC3PC0)两个4位端口,两个4位端口也可以分别选择控制字符作为输入或输出端口。端口不能同时实现输入和输出。这四个并行端口共可以配置16个不同的使用配置。使用8255A模式0传输数据没有规定特殊的响应信号,因此经常用于与简单外围设备(例如,从LED显示器输出,从二进制交换机设备输入)传输数据。设定为输出连接埠时具有锁住功能,设定为输入视埠时具有高阻抗,没有锁住功能。方法0输入计时:地址提前,数据

7、稳定性,读取脉冲300ns,数据提前期,数据保留时间,地址保留,读取的数据,方法0输出计时:地址提前,地址提前套用至:1。无条件输入输出方法。2.查询输入输出方法。a,b端口是8位数据的输入或输出端口,c端口的高/低4位分别定义为a,b端口的控制位和状态位。8255操作过程1)8255编程(初始化)2)端口访问(例如,设置了8255A的a端口和b端口作为输入端口工作,有4个交换机,每个交换机具有电阻。b端口是输出端子,通过8向逆相驱动器连接由发光二极管(LED)组成的7段数码管,电路如图所示。测试代码以显示与通过交换机拨号的二进制文件相对应的十六进制数字(字符)。5v、a15m/ioa6a 5

8、a4a 3、a001csrdwrreset、pa 0pa 1p a2p a3 Pb 1pb 2pb 3pb 4p b5pb 6p B7、rdrwreseta端口输入,b端口输出,端口设置输出控制字10011001b=99h,a _ port equ 8020 HB _ port equ 8026 hm oval,99h;设置8255文字movdx、ctrl _ portoutdx、almo VDX、a _ portinal和dx。读取交换机(键盘)信息andal,0fh;屏蔽高度4位movbx,offsettab11;段代码表第一个地址xlat导入。开关值段代码转换movdx,b _ port

9、输出显示outdx、al、工作原理1,使用一组门控控制信号控制a端口和b端口的数据输入输出。输入a、输入b可以作为输入/输出,输入c可以作为输入a、端口b的选通控制信号固定的部分,剩下的c可以作为常规I/O。输入和输出时,输入a、输入b具有不同的选择通信号。2、8255A工作方式1输入、a端口方式1输入针、数据选择通信号指示外围设备正在准备数据,外围设备将数据放入a端口输入缓冲区,在输入缓冲区全信号工作的情况下,a端口输入缓冲区正在准备有效数据。,如果中断请求信号有效,则从8255A的CPU申请中断,要求CPU从端口读取数据,10111/0 xxxB,对于1:PC6/PC7,输入03360 p

10、c6/PC7,输出,控制器,在b端口方法1中输入的针脚,PC 5 IBF a;PC3INTRA2、PC67对应于默认I/O3,PC02对应于b组INTRB、IBFB、STBBSTB选择通信号,是外围设备提供的低级别有效输入信号,有效时是输入设备提供的8255A的输入锁IBF输入缓冲池信号,高级别有效8255A输出的接触处于活动状态时,对CPU的中断请求、对CPU的外围数据读取请求、模式1的输入状态单词(c端口)、通过STBASTBB、pc4的位设置的INTEA中断请求信号、高级有效8255A输出信号、INTR中断通过PC4的位设置有效。您可以通过PC2的位设置部署INTEB。INTRB在方法1

11、(输入)端口上使用的方式有两种:常规I/O端口、方法1输入定时、INTR高级有效RD清除INTR和IBF、如果外围设备数据在方法1(输入)端口上被接受,则在CPU上使用INTRB。一个是通过查询条件查询缓冲区是否为“已满”(即IBF是否为较高级别)计算的。第二个是中断。在查询传输中,通常需要有所谓的“握手”信号来调整数据传输。“握手”信号必须至少有两条信号线,其中一条由接口电路发送到外围设备,其功能是向外围设备提供有关接口电路的信息。另一种是外围设备发送到界面,功能是向界面提供有关外围设备的信息。显然,在8255A的门控输入中,STB和IBF是一对“握手”信号。例如,8255A上的a和b端口分

12、别在方法1和方法0上工作,a端口是输入端口,有8个交换机。b端口是连接8个发光二极管的输出端子,如图所示。现在,必须以1的方式将更改的密钥信息输入CPU,并通过b端口显示。电路图的范例,此系统的工作方式如下:1、用户更改K0K7以生成新的密钥信息;2、按交换机k,生成可选通信号,数据进入a端口缓冲区。此步骤实际上通知CPU 8255上的a端口有新数据。电路图的示例,3,IBFA有效地打开指示灯。这里有两种信息:一种是8255A通知CPU的a嘴有新数据,另一种是通知用户CPU尚未抢走数据,用户无法发送其他数据。4、CPU移除此数据,指示灯熄灭;继续步骤5,1。此系统的工作方式如下:1、用户更改K

13、0K7以生成新的密钥信息。2、按交换机k,生成可选通信号,数据进入a端口缓冲区。此步骤实际上通知CPU 8255上的a端口有新数据。3、IBFA有效地照亮LED。这里有两种信息:一种是8255A通知CPU的a嘴有新数据,另一种是通知用户CPU尚未抢走数据,用户无法发送其他数据。4、CPU移除此数据,指示灯熄灭;继续步骤5,1。设置8255的I/O地址以88H8EH分布;程序段:moval,10111001bout8EH,AL;al;将a输入设置为模式1的输入,loop 1: inal,8chc端口状态行testal,00100000b选取。IBFA信息JZ循环1测试;等待用户设置新密钥值mov

14、cx、0f fffh loop 23360 loop 2inal、88h。数。LED指示灯关闭(与步骤4相反)out 8ah,al;b端口显示jmp loop 1更新;重复,方法1输入中断控制,允许8255A中断触发器INTE控制INTE控制inter允许中断,重置(0)禁止中断incube位置/重置操作端口c的相应位对端口A的INTEA实现PC4端口b的INTEB相应PC2,A端口方法1输出针脚,请求中断请求信号请求CPU重新输出数据,I/O,PC4-5,10101/0 xxxB,8255A操作方法1输出,13360 PC4/PC5用于输出的03360 PC4/PC5ACK响应信号,低有效,

15、8255A的端口数据被外围设备接受,外围设备的响应信号(“原型完成”!)INTR中断请求信号、高有效、输出设备接受数据后,8255A要求该信号向CPU提交中断请求,以便继续向CPU提供数据。端口a上的INTEA对应于PC6,端口b上的INTEB对应于PC2。PC3、PC6和PC7是a端口的联络线,PC0PC2对应于b组pc3 (pc0) intr。pc6(pc2)ack;pc7(pc1)obf;PC4,PC5可以单独用于I/o。通过、方法1的输出状态单词(c端口)、ACKAACKB、PC6的位设置指定INTEA位置,指定位置后,可以使用中断INTRA。通过PC2位设置进行INTEB定位,定位后,可以使用中断INTRB,常规I/O端口,方法1输出计时,通过ACK启用INTR有效(高级),清除高级(OBF)。8255A工作原理1(输出)端口上的外围设备移动数据时,将通过两种方式通知CPU:一个是条件查询,一个是响应信号是否为“活动”,即ACK是否处于较低级别,第二个是中断。在查询模式下,OBF和ACK是一对“握手”信号。OBF在8255A上生成,有效时会通知外围设备端口有新数据。ACK发生在外围设备上,如果有效,将通知端口外围设备数据已

温馨提示

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

评论

0/150

提交评论