




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、可编程接口芯1可编程接口芯2主要内容主要内容v并行接口芯片8255A结构工作方式应用vLEDv打印机*可编程接口芯3CPU与外设的接口v接口的组成和功能数据锁存/缓冲:速度匹配、信号隔离命令和状态寄存器地址译码:内部端口选择读写控制中断/DMA请求逻辑v可编程接口芯片多通道多功能可编程:通过编程设置各个通道的工作模式v可编程微处理器、可编程芯片。可编程接口芯4接口信号vCPU侧CS*:M/IO*:RD*、WR*:DMA、INT地址总线数据总线v外设侧:STB*、RDY输入接口:vSTB*:外设-接口,vRDY:接口-外设,IBF输出接口:vSTB*:外设-接口,ACKvRDY:接口-外设,OB
2、F数据总线可编程接口芯5并行接口v8255A的工作方式和编程v8255A的应用简易键盘的扫描程序LED数码管的多位显示可编程接口芯6并行数据传输方式v以计算机的字长(通常是8位、16位或32位)为传输单位,一次传送一个字长的数据v适合于外部设备与微机之间进行近距离近距离、大量和快速的信息交换例如:微机与并行接口打印机、磁盘驱动器v微机系统中最基本的信息交换方法例如:系统板上各部件之间,接口电路板上各部件之间可编程接口芯7并行接口芯片8255Av具有多种功能的可编程并行接口可编程并行接口电路芯片最基本的接口电路:三态缓冲器和锁存器与CPU间、与外设间的接口电路:状态寄存器和控制寄存器还有端口的译
3、码和控制电路、中断控制电路v分3个端口,共24个外设引脚v共三种输入输出工作方式可编程接口芯88255A的内部结构和引脚数据数据总线总线缓冲器缓冲器内部控制内部控制线线内部数据内部数据线线D0D7A组组控制控制A组组端口端口AA组组端口端口C上部上部B组组控制控制B组组端口端口BB组组端口端口C下部下部读写读写控制控制逻辑逻辑PC0PC3PB0PB7PC4PC7PA0PA7RDWRA0A1CSRESET可编程接口芯91. 外设数据端口v端口端口A:PA0PA7A组,支持工作方式0、1、2常作数据端口,功能最强大常作数据端口,功能最强大v端口端口B:PB0PB7B组,支持工作方式0、1常作数据端
4、口常作数据端口v端口端口C:PC0PC7仅支持工作方式0可作数据、状态和控制端口可作数据、状态和控制端口分两个分两个4位,每位可独立操作位,每位可独立操作vA组控制高4位PC4PC7vB组控制低4位PC0PC3可编程接口芯102. 与处理器接口CS A1 A0读操作RD写操作WR0 0 00 0 10 1 00 1 1读端口A读端口B读端口C非法写端口A写端口B写端口C写控制字可编程接口芯118255A的工作方式v方式0:基本输入输出方式适用于无条件传送的接口电路v方式1:选通输入输出方式适用于查询和中断方式的接口电路v方式2:双向选通传送方式适用于双向传送数据的外设适用于查询和中断方式的接口
5、电路可编程接口芯12方式0输入时序datadata输入端口输入端口D0D7RD CS,A1,A0可编程接口芯13方式0输出时序WRdatadata输出端口输出端口D0D7 CS,A1,A0可编程接口芯14方式1输入引脚:A端口表示外设已经准备好数据通知外设停止发送数据请求CPU接收数据PC4PC5PC3PA7PA0INTEAIBFAINTRASTBA中断允许触发器PC6-7I/O12134可编程接口芯15方式1输入引脚:B端口PC2PC1PC0PB7PB0INTEBIBFBINTRBSTBB数据选通信号表示外设已经准备好数据输入缓冲器满信号表示B口已经接收数据中断请求信号请求CPU接收数据中断
6、允许触发器12134可编程接口芯16方式1输入联络信号vSTB选通信号,低电平有效由外设提供的输入信号,当其有效时,将输入设备送来的数据锁存至8255A的输入锁存器vIBF输入缓冲器满信号,高电平有效8255A输出的联络信号。当其有效时,表示数据已锁存在输入锁存器vINTR中断请求信号,高电平有效8255A输出的信号,可用于向CPU提出中断请求,要求CPU读取外设数据v注意:PC7、PC6可以单独用于I/O可编程接口芯17方式1输入时序dataINTRIBF dataPA/PBD0D7STBRDvINTR高电平有效vRD*清INTR和IBF可编程接口芯18方式1中断控制v8255A的中断由中断
7、允许触发器INTE控制置位允许中断,复位禁止中断v对INTE的置位/复位操作由端口C的对应位实现端口A的INTEA对应PC4端口B的INTEB对应PC2PC4PC5PC3PA7PA0INTEAIBFAINTRASTBAPC2PC1PC0PB7PB0INTEBIBFBINTRBSTBB可编程接口芯19方式1输出引脚: A端口外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据PC6PC7PC3PA7PA0INTEAOBFAINTRAACKA中断允许触发器21134PC4-5I/O可编程接口芯20方式1输出引脚:B端口PC2PC1PC0PB7
8、PB0INTEBOBFBINTRBACKB外设响应信号表示外设已经接收到数据输出缓冲器满信号表示CPU已经输出了数据中断请求信号请求CPU再次输出数据中断允许触发器21134可编程接口芯21方式1输出联络信号vOBF输出缓冲器满信号,低有效8255A输出给外设的一个控制信号,当其有效时,表示CPU已把数据输出给指定的端口,外设可以取走vACK响应信号,低有效外设的响应信号,指示8255A的端口数据已由外设接受(“完成时态”!)vINTR中断请求信号,高有效当输出设备已接受数据后,8255A输出此信号向CPU提出中断请求,要求CPU继续提供数据v端口端口A的的INTEA对应对应PC6v端口端口B
9、的的INTEB对应对应PC2vPC4、PC5可以单独用于I/O可编程接口芯22方式1输出时序 INTR datadataPA/PBD0D7WROBFACK v当ACK、OBF都为高时,INTR有效可编程接口芯23方式2双向方式v方式2将方式1的选通输入输入以及输出输出功能组合成一个双向数据端口,可以发送数据和接收数据v只有端口A可以工作于方式2,需要利用端口C的5个信号线,其作用与方式1相同v方式2的数据输入过程与方式1的输入方式一样v方式2的数据输出过程与方式1的输出方式有一点不同:数据输出时8255A不是在OBF有效时向外设输出数据,而是在外设提供响应信号ACK时才送出数据可编程接口芯24
10、方式2双向引脚PC6PC7PC3PA7PA0INTE1OBFAINTRAACKAPC4PC5IBFASTBAINTE2用PC6设置INTE1(输出用)用PC4设置INTE2(输入用)输入和输出中断通过或门输出INTRA信号可编程接口芯25方式2双向时序data-out INTR data-outdata-indata-inPA0PA7D0D7IBF WROBFACKSTBRD可编程接口芯268255A的编程v初始化编程:一个方式控制字采用控制I/O地址:A1A011v工作过程中:通过数据端口对外设数据进行读写数据读写利用端口A、B和C的I/O地址,A1A0依次等于00、01、10vIBM PC
11、/XT机上,端口A、B、C和控制端口的I/O地址为60H、61H、62H和63H可编程接口芯271. 写入方式控制字:控制字格式可编程接口芯281. 写入方式控制字:示例v要求:A端口:方式1输入C端口上半部:输出,C口下半部:输入B端口:方式0输出v方式控制字:10110001,即B1Hv初始化的程序段:mov dx,0fffeh ;假设控制端口为FFFEHmov al,0b1h;方式控制字out dx,al ;送到控制端口可编程接口芯292. 读写数据端口v初始化编程后:当数据端口作为输入接口时,执行输入IN指令将从输入设备得到外设数据当数据端口作为输出接口时,执行输出OUT指令将把CPU
12、的数据送给输出设备v8255A具有锁存输出数据的能力可以读入输出方式的端口锁存器中的值,进行按位处理后再次输出v注意:不是读取外设数据,而是读取上一次CPU发给外设的数据可编程接口芯302. 读写数据端口:示例v利用8255A的输出锁存能力,可实现按位输出控制 v对输出端口B的PB7位置位的程序段:mov dx,0fffah;B端口假设为FFFAHin al,dx ;读出B端口原输出内容or al,80h;使PB71out dx,al;输出新的内容可编程接口芯313. 端口C的说明vC端口被分成两个4位端口,两个端口只能以方式0工作,可分别选择输入或输出在控制上,在控制上,C端口上半部和端口上
13、半部和A端口编为端口编为A组,组,C端口下半部和端口下半部和B端口编为端口编为B组组v当A和B端口工作在方式1或方式2时,C端口的部分或全部引脚将被征用,即被征用引脚的功能不由方式字定义不由方式字定义,而是由A、B口的工作方式确定其余引脚仍可设定工作在方式其余引脚仍可设定工作在方式0可编程接口芯323. 写端口Cv对端口C的数据输出有两种办法通过端口C的I/O地址:向C端口直接写入字节数据。这一数据被写进C端口的输出锁存器,并从输出引脚输出,但对设置为输入的引脚无效通过:向C端口写入位控字,使C端口的某个引脚输出1或0,或置位复位内部的中断允许触发器可编程接口芯33端口C的位控制字可编程接口芯
14、343. 读端口Cv读取的C端口数据有两种情况未被A和B端口征用的引脚:将从定义为输入的端口读到外设输入的数据;将从定义为输出的端口读到输出锁存器中的信息被A和B端口征用作为联络线的引脚:将读到反映8255A状态的状态字可编程接口芯35D7D6D5D4D3D2D1D0方式1输入I/OI/OIBFAINTEAINTRAINTEBIBFBINTRB方式1输出OBFAINTEAI/OI/OINTRAINTEBOBFBINTRB方式2双向OBFAINTE1IBFAINTE2INTRA端口C的状态字A组组B组组可编程接口芯368255A的应用作为通用的并行接口电路芯片,8255A具有广泛的应用v驱动LE
15、D数码管v打印机接口电路v可编程接口芯37LED数码管及其接口v发光二极管LED是最简单的显示设备v由7段LED就可以组成的LED数码管vLED数码管广泛用于单板微型机、微型机控制系统及数字化仪器中LED数码管可以显示内存地址和数据等可编程接口芯381. LED数码管的工作原理v主要部分是7段发光管顺时针分别称为a、b、c、d、e、f、g有的产品还附带有一个小数点hv通过7个发光段的不同组合显示09显示AF(实现16进制数的显示)显示个别特殊字符,如、P 等hgfedcba可编程接口芯39LED数码管的结构共阳极阳极阳极+5Vabcdefgh阴极阴极abcdefgh共阴极共阴极可编程接口芯40
16、2. 单个LED数码管的显示8255APA0PA1PA2PA3PA4PA5PA6PA7驱驱动动电电路路abcdefgh8086CPU可编程接口芯41单个数码管的显示LEDtb db 3fh,06h,5bh,;显示代码表显示代码表mov al, 1 ;AL要显示的数字要显示的数字mov bx, offset LEDtbxlat ;换码:换码:ALDS:BXALmov dx, portout dx, al;输出显示输出显示可编程接口芯423. 多个LED数码管的显示v8个数码管:用2个8位输出端口控制v硬件上用公用的驱动电路来驱动各数码管v软件上用扫描方法实现数码显示每个显示2ms可编程接口芯43
17、8个LED数码管的接口电路段选择码(字符)位选择码可编程接口芯44并行打印机接口v一般采用Centronics标准接口或其简化接口Centronics接口是的一个并行接口协议该协议规定了36脚簧式插头座和信号含义v其中前11条线是关键信号,它们是8条数据线、3条联络线(选通、响应和打印机忙)v还有一些特殊控制线、状态线vPC系列机的并行打印机接口是一个25针D型插口可编程接口芯45打印机接口信号v数据数据v控制控制握手vSTB*:负脉冲的宽度在接收端应大于0.5s,数据才可靠地存入打印机数据缓冲区vACK*:打印机接收一个数据字节后就回送一个响应的负脉冲信号(脉宽约为5s),表示打印机已准备好
18、接收新数据INIT*:初始化AUTOFEEDXT:自动换行SLCTIN*:选择打印机v打印机状态打印机状态BUSY:打印机忙SLCT:打印机联机PE:缺纸ERR*:当打印机处于无纸、脱机或错误状态之一时可编程接口芯46打印机工作过程v通信过程主机把数据送给引脚DATA0DATA7同时送出数据选通信号STROBE*打印机在BUSY信号线上发出忙信号打印机处理好输入的数据时v撤消忙信号v同时又送出一个响应信号ACK*v注意:此时选通(STROBE*)与应答(ACK*)信号的方向与前述一般接口的信号定义相反可编程接口芯47打印机信号与时序BUSYDATA07ACKSTROBE可编程接口芯48用825
19、5A方式0与打印机接口BUSY DATA078255APC7PC2PA0PA7打印机打印机STROBE注意:不考虑ACK*可编程接口芯498255A的初始化mov dx,0fffeh ;控制端口地址:控制端口地址:FFFEHmov al,10000001B;方式控制字:方式控制字:91Hout dx,al ; A端口方式端口方式0输出,输出,C端口上输出、下输入端口上输出、下输入mov al,00001111B;端口端口C的复位置位控制字,使的复位置位控制字,使PC71out dx,al可编程接口芯50打印子程序:查询printcprocpush axpush dxprn: mov dx,0f
20、ffch ;读取端口读取端口Cin al,dx;查询打印机状态查询打印机状态and al,04h;PC2BUSY0?jnz prn;PC21,打印机忙,打印机忙,则循环等待则循环等待可编程接口芯51打印子程序:输出;PC20,打印机不忙,则输出数据到,打印机不忙,则输出数据到8255mov dx,0fff8hmov al,ah;ah字符字符out dx,al;将打印数据从端口将打印数据从端口A输出输出可编程接口芯52打印子程序:控制打印机打印mov dx,0fffeh;从从PC7送出控制低脉冲送出控制低脉冲mov al,00001110B ;置置STROBE*0out dx,alnop;产生一
21、定宽度的低电平产生一定宽度的低电平nopmov al,00001111B ;置置=1out dx,al;最终,最终,STROBE*产生高脉冲信号产生高脉冲信号可编程接口芯53打印子程序:返回pop dxpop axretprintcendp可编程接口芯54用8255A方式1与打印机接口1000pf2K15321441LS123单稳单稳电路电路+5VDATA078255APC6INTRPC3PC7PA0PA7打印机打印机ACKACKOBFSTROBEPC4BUSY可编程接口芯558255A方式1与打印机接口时序配合PA0PA7(DATA07)ACKOBFSTROBE可编程接口芯568255A82
22、55A的初始化的初始化mov dx,0fffeh ;控制端口;控制端口mov al,0a8h ;A口方式口方式1输出输出 10101000Bout dx,almov al,0ch ;使使INTEA(PC6)为)为0,禁止中断,禁止中断(查询模式查询模式)out dx,almov cx,counter;打印字节数送打印字节数送CXmov bx,offset buffer;取字符串首地址取字符串首地址call prints;调用打印子程序调用打印子程序可编程接口芯57打印子程序:输出printsprocpush ax;保护寄存器保护寄存器push dxprint1:mov al,bx;取一个数据取
23、一个数据mov dx,0fff8hout dx,al;从端口从端口A输出输出 可编程接口芯58打印子程序:查询mov dx,0fffch ;C端口地址端口地址print2:in al,dxtest al,80h;检测(检测(PC7)为)为1否否?;1,说明,说明OBF*已经无效,一次打印完成已经无效,一次打印完成jz print2;为为0,说明打印尚未完成,继续检测,说明打印尚未完成,继续检测 Print3: test al,10h ;检测(检测(PC4)为)为0否否?;0,说明,说明BUSY已经无效,一次打印完成已经无效,一次打印完成 jnz print3 ;为为1,说明打印尚未完成,继续,
24、说明打印尚未完成,继续检测检测 可编程接口芯59打印子程序:返回; 以上两条件满足,说明打印机已接受数据以上两条件满足,说明打印机已接受数据并打印完毕。并打印完毕。inc bx;准备取下一个数据输出准备取下一个数据输出loop print1pop dx;打印结束,恢复寄存器打印结束,恢复寄存器pop axret;返回返回printsendp可编程接口芯60示例中的两种工作方式的差别v都为查询方式v方式0中的选通信号“手动”生成v方式1中的选通信号自动生成v思考题:用方式2如何接口?可编程接口芯61双机并行通信接口PA0PA7PC4PC08255A甲方(发送)甲方(发送)PA0PA7PC7PC6 PC38255A乙方(接收)乙方(接收)甲方:方式1,查询方式乙方:方式0AB可编程接口芯62甲机的初始化甲机的初始化mov dx,0fffehmov al,0a0hout dx,al;工作方式字:端口工作方式字:端口A方式方式1输出输出mov al,0dh;使使PC6(INTEA)1,允许中断,允许中断out dx,al可编程接口芯63甲机发送程序trsmt: mov dx,0fffchin al,dx;查询查询PC3(INTRA)1?and al,08hjz trsmtmov dx,0fff8h ;发送数据发送数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 精装卧室出租合同范本
- OEM加工食品合同范例
- 公路路灯安装合同范例
- 兼职导游劳务合同范本
- 医院广告合同范本
- 合肥装潢公司合同范本
- 单位长期租车合同范本
- 单位出让房屋合同范例
- 制作安装供货合同范本
- 后增补协议合同范本
- 2025年高考作文备考训练之二元思辨作文题目解析及范文:我与“别人”
- 《中央集成式商用车电驱动桥总成技术要求及台架试验方法》
- 2024年江西应用工程职业学院单招职业技能测试题库标准卷
- 第1课 中国古代政治制度的形成与发展 课件-历史统编版(2019)选择性必修1国家制度与社会治理
- 2025年中国中煤校园招聘笔试参考题库含答案解析
- 开曼群岛公司法2024版中文译本(含2024年修订主要内容)
- 东北师大附属中学2025届高考数学四模试卷含解析
- 漏采血标本不良事件根因分析
- 安全管理工作的成果与亮点
- 粮食储备库内圆筒钢板仓及附房工程施工组织设计
- 学校科技节活动方案
评论
0/150
提交评论