可编程并行接口芯片8255A有哪几种工作方式

合集下载

8255A工作方式

8255A工作方式

方式1下,A、B口均为输出的信号定义
工作方式1下的数据输出时序
工作方式1下A口、B口均为输入
与方式1下两口均为输出类似,为实现选通输入, 则同样要利用C口的信号线。 在口为输入时所用到的控制信号的定义如下: : ① STB 为低电平有效的输入选通信号。
② IBF为高电平有效的输入缓冲器满信号。 ③ INTR为中断请求信号,高电平有效。 ④ INTE为中断允许状态。
方式1下A、B口均为输入时的信号定义
工作方式1下数据输入时序 工作方式 下数据输入时序
工作方式2,又称双向输入输出方式
A口工作于方式2之下时,各信号的定义 如图下所示。 OBF 当A口工作在方式2时,其控制信号 ACK 、 STB 、 、IBF及INTR与前面的叙述是一 样的; 不同点是:
方式2下的信号定义
FBC0H~FBC3H
FBC4H~FBC7H
之下,A口既 ①因为在方式2之下 口既 因为在方式 之下 作为输出又作为输入,因 作为输出又作为输入 因 有效时,才 此,只有当 ACK有效时 才 只有当 能打开A口输出数据三态 能打开 口输出数据三态 使数据由PA0~PA7 门,使数据由 使数据由 输出。 输出。 此时A口输入 口输入、 ② 此时 口输入、输出均具 备锁存数据的能力。 备锁存数据的能力。 ③在这种方式下,A口的数据 在这种方式下 口的数据 输入或数据输出均可引起 中断。 中断。
6.2.2 8255A工作方式
8255有3种工作方式。这些工作方式可用软件编程来指 定。 1. 工作方式0,又称为基本输入输出方式 在此方式下,可分别将A口的8条线、B口的8条线、 C口高4位对应的4条线和C口低4位对应的4条线定义为 输入或输出。
工作方式0下的输入输出组合

8255a的应用原理图

8255a的应用原理图

8255a的应用原理图1. 简介8255a是一种常用的并行接口芯片,具有广泛的应用领域。

本文将介绍8255a 的应用原理图及其基本工作原理。

2. 原理图下面是8255a的应用原理图:_______| |Port A ---| || 8255a |Port B ---| || |Port C ---|_______|3. 工作原理8255a是一个可编程的并行接口,它具有3个I/O端口(Port A、Port B、Port C)和多种工作模式。

下面是8255a的工作原理的详细描述:3.1 Port APort A是一个8位的双向端口,可以用于输入和输出。

当将Port A设置为输入模式时,可以通过读取Port A来获取外部输入信号;当Port A设置为输出模式时,可以通过向Port A写入数据来向外部设备发送信号。

3.2 Port BPort B也是一个8位的双向端口,并且可以作为一组控制信号进行使用。

在输出模式下,可以通过向Port B写入数据来控制外部设备的各种功能;在输入模式下,可以通过读取Port B来获取外部设备的状态。

3.3 Port CPort C是一个8位的端口,既可以作为一组数字输入/输出端口,也可以作为一组控制信号端口。

Port C的具体功能取决于模式控制寄存器(Mode Control Register)的设置。

4. 工作模式8255a提供了多种工作模式,可以根据具体的应用需求进行配置。

下面是常用的工作模式介绍:4.1 单工模式在单工模式下,Port A、Port B和Port C分别用作输入或输出。

这种模式适用于只需进行一方向数据传输的场合。

4.2 双工模式在双工模式下,Port A和Port B既可以作为输入,也可以作为输出。

这种模式适用于需要双向数据传输的场合。

4.3 脉冲输出模式在脉冲输出模式下,Port A和Port B可以作为脉冲输出端口。

这种模式适用于需要生成特定频率或脉冲序列的场合。

可编程并行接口实验(8255A方式1)

可编程并行接口实验(8255A方式1)

可编程并行接口实验(8255A方式1)实验目的掌握8255A工作方式1的使用方法;进一步掌握编写中断服务程序的方法。

实验内容1.8255A选通行输出实验,具体要求:(1)设置8255A的A 口工作在方式1输出;(2)每按一次单脉冲按钮产生一个正脉冲使8255A产生一次中断;(3)设计中断服务程序:依次输出01H,02H,04H,08H,10H,20H,40H,80H。

使L0—L7依次发光。

2.8255A选通行输入实验,具体要求:(1)设置8255A的A 口工作在方式1输入;(2)每按一次单脉冲按钮产生一个正脉冲使8255A产生一次中断;(3)设计中断服务程序:读取开关表示的ASCII码,在屏幕上显示其对应的字符。

实验连线1实验内容1连线(1)8255A芯片的A口PA7~PA0连发光二极管L7~L0;(2)PC3连接IRQ;(3)PC6连接单脉冲发生器。

2实验内容2连线(1)8255A芯片的A口PA7~PA0连逻辑开关K7~K0;(2)PC3连接IRQ;(3)PC4连接单脉冲发生。

流程图这是试验2的流程图,实验1相似实验代码试验2的代码是在试验1的代码基础上稍作改动,这里只列出试验2的代码:ASSUME CS:CODE,DS:DATADATA SEGMENT ;数据段定义IOPORT EQU 5400H-280HIOPORT_CENT EQU 5000H ;9054芯片的I/O起始地址MASKZ EQU 0FBH ;8259A主片屏蔽码MASKC EQU 0F7H ;8259A从片屏蔽码INTNUM DW 0 ;保存ES的定义量INTNUMSE DW 0 ;保存BX的定义量DA TA ENDSSTACK1 SEGMENT STACK ‘STACK1’DB 50 DUP(?)STACK1 ENDSCODE SEGMENT ;代码段定义START:MOV DX,IOPORT+28BH ;根据实验连线,此次实验控制口为540BH MOV AL,0B0H ; 设置8255A的控制关键字(设置成方式1,端口A输入) OUT DX,ALCLI ;关中断MOV DX,IOPORT_CENT+68H ;设置9054芯片使能寄存器IN AX,DXOR AX,0900HOUT DX,AX;得到原中断向量并保存MOV AH,35H ;取中段向量MOV AL,73H ;针对本台计算机查表得出中断类型号为73HINT 21HMOV INTNUMSE,BX ;保存BXMOV AX, ES ;保存ESMOV INTNUM, AX;设置新中断向量MOV AX,CSMOV DS,AXMOV DX,OFFSET INTPROC ;设置新的中断向量MOV AL,073HMOV AH,25HINT 21H;设置中断屏蔽寄存器IN AL,21H ;8259A主片的中断屏蔽寄存器端口地址为21HAND AL,MASKZ ;中断屏蔽寄存器中主片相应位置1,本实验中第三位置1 OUT 21H,ALIN AL,0A1H ;8259A从片的中断屏蔽寄存器端口地址为0A1HAND AL,MASKCOUT 0A1H,AL ;中断屏蔽寄存器中从片相应位置1,本实验中第四位置1 STI ;开中断MOV AL,00001001B ;设置PC4为1MOV DX,IOPORT+28BHOUT DX,ALOUTER:MOV AH,01H ;判断是否有任意键按下INT 16HJZ OUTER ;没有键按下程序重复MOV AX, INTNUM ;恢复原中断向量MOV DS,AXMOV DX, INTNUMSEMOV AL,073HMOV AH,25HINT 21H;恢复中断屏蔽寄存器IN AL,21HOR AL,04HOUT 21H,ALIN AL,0A1HOR AL,08HOUT 0A1H,ALMOV DX,IOPORT_CENT+68H ;关闭9054IN AX,DXOR AX,0F6FFHOUT DX,AXMOV AH,4CH ;有键按下,程序结束,返回DOS界面INT 21H;中断服务子程序INTPROC:PUSH AX ;寄存器入栈保护PUSH BXPUSH CXPUSH DXPUSH DSSTI ;开中断MOV CX,0FFFFHH: LOOP HMOV DX,IOPORT+288H ;A口输入IN AL,DXMOV DL,AL ;输出开关所对应的字符MOV AH,02HINT 21HMOV AL,20H ;发出EOI结束中断OUT 20H,ALOUT 0A0H,ALCLI ;关中断POP DS ;寄存器出栈POP DXPOP CXPOP BXPOP AXIRET ;中断返回CODE ENDSEND START结果描述试验1:每按一次单脉冲,L0~L7依次发光。

可编程并行接口芯片8255A有哪几种工作方式

可编程并行接口芯片8255A有哪几种工作方式

可编程并行接口芯片8255A有哪几种工作方式?每种工作方式有何特点?【解答】方式0:没有固定的用于应答式传送的联络信号线,CPU可以采用无条件传送方式与8255A交换数据。

方式1:有专用的中断请求和联络信号线,因此,方式1通常用于查询传送或中断传送方式。

方式2:PA口为双向选通输入/输出或叫双向应答式输入/输出。

9.2 8255A的方式选择控制字和C口按位控制字的端口地址是否一样?8255A怎样区分这两种控制字?写出端口A作为基本输入,端口B作为基本输出的初始化程序。

【解答】8255A的方式选择控制字和C口按位控制字的端口地址是一样的,通过控制字的最高位D7进行区分:D7=1时,为方式选择控制字;D7=0时,为C口按位控制字。

初始化程序段如下:MOV DX,PORT ;PORT为端口地址MOV AL,10010000BOUT DX,AL9.3 某8255A的端口地址范围为03F8H~03FBH,A组和B组均工作在方式0,A口作为数据输出端口,C口低4位作为状态信号输入口,其它端口未用。

试画出该片8255A与系统的连接图,并编写初始化程序。

【解答】连接图如下:图9-1 8255A与系统的连接图程序如下:MOV AL,81HMOV DX,03FBHOUT DX,AL9.4 试按以下要求对8255A进行初始化编程:(1)设端口A、端口B和端口C均为基本输入/输出方式,且不允许中断。

请分别考虑输入/输出。

(2)设端口A为选通输出方式,端口B为基本输入方式,端口C剩余位为输出方式,允许端口A中断。

(3)设端口A为双向方式,端口B为选通输出方式,且不允许中断。

【解答】(1)端口A、端口B和端口C均为基本输入/输出方式,则为方式0,任何一个口都可用于输入或输出,可出现16种组合,这里只举出2种组合。

若端口A、B为数据输入口;C口的低4位为控制信号输出口,高4位为状态信号输入口,程序段如下:MOV AL,10011010BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL若端口A、B为数据输出口;C口的高4位为控制信号输出口,低4位为状态信号输入口,程序段如下:MOV AL,10000000BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL(2)端口A为选通输出方式,方式1;端口B为基本输入方式,程序段如下:MOV AL,10100010BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001101B ;设PC6为中断信号控制引脚,PC6=1,允许中断OUT DX,AL(3)端口A为双向方式,方式2;端口B为选通输出方式,程序段如下:MOV AL,11000100BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL9.5 采用8255A作为两台计算机并行通信的接口电路,请画出查询式输入/输出方式工作的接口电路,并写出查询式输入/输出方式的程序。

可编程并行接口芯片8255A

可编程并行接口芯片8255A

大规模控制系统的需求。
8255A与可编程逻辑器件的结合,可以实现高速、实时的数据
03
采集和控制。
在数据采集与控制系统中的应用
8255A在数据采集与控制系统中,可以作为数据传输的桥梁,实现快速、稳定的数 据传输。
通过8255A,可以实现多路数据的并行采集和处理,提高了数据处理的效率。
8255A在数据采集与控制系统中,可以作为主控制器,协调各个模块的工作,保证 系统的稳定运行。
微处理器可以通过8255A实现对 外部设备的控制,扩展了微处理
器的控制能力。
8255A可以作为微处理器的输入 /输出接口,实现人机交互和数据
采集。
与可编程逻辑器件连接的应用
01
8255A可以与可编程逻辑器件连接,实现复杂的逻辑控制和数 据处理。
02
通过8255A,可编程逻辑器件可以扩展其输入/输出端口,满足
根据实际需求,设定8255A的数据格式,包括数据位、停止位、 奇偶校验位等。
数据读写操作
通过数据传输编程实现对8255A的数据读写操作,包括读数据、 写数据、读写同时操作等。
PART 05
8255A的应用实例
与微处理器连接的应用
8255A与微处理器连接,可以实 现并行数据传输,提高数据传输
效率。
在现代嵌入式系统中,8255A芯片仍有一 定的应用,尤其在一些需要并行I/O接口的 场合,如人机界面、传感器等。
PART 02
8255A芯片的基本结构 与功能
芯片的基本组成
输入/输出端口
数据总线
8255A包含三个输入/输出端口,分别为 端口A、端口B和端口C。每个端口都有8 个位,可以独立配置为输入或输出模式。
控制信号生成

微机接口与技术提纲第九章8255作业答案

微机接口与技术提纲第九章8255作业答案

一、知识点:基本概念1.一片8255A端口A有( 3 )种工作方式,端口B有( 2 )种工作方式。

2. 在8255可编程并行接口芯片中,可用于双向选通I/O方式(即方式2)的端口为( A )A. PA口B. PB口C. PC口D. PA和PB3、8255A控制字的最高位D7 = 0 时,表示该控制字为C口按位控制字。

4. 在8255可编程并行接口芯片中,可用于双向选通I/O方式(即方式2)的端口为( A )。

A. PA口B. PB口C. PC口D. PA和PB5.8255A控制字的最高位D7 =(1)时,表示该控制字为方式控制字。

6. 8255A的每个端口的数据寄存器长度为(8)位。

7、8255A的工作方式的三种工作方式分别为:方式0:基本输入输出方式;方式1:选通输入输出方式;方式2:双向选通传送方式。

8.如果CPU通过8255A端口C的某一条线向外部输出连续的方波信号,请:说出两种实现方法;并具体说明怎样实现。

(不必编程)(8分)答:可用2种方法实现:①8255A工作于方式O时,端口C可以指定为输出。

每隔1/2方波周期改变其中一位的状态,其它位不变。

就可以通过端口C的某一条线输出连续的方波。

②用对端口C某一位置位/复位的方法实现。

即每隔1/2方波周期时间,对端口C 的某一位交替进行置位、复位,即可从端口C的某一条线输出连续的方波。

二、知识点应用题1、接口电路如图所示:已知8255A控制字寄存器的端口地址为10EH,编写8255A初始化程序和循环彩灯控制程序。

初始时D0亮,其余不亮,D0亮一秒后移位一次,D1亮,其余不亮,以此类推每隔一秒移位一次,每移位8次为一个循环,共循环8次。

要求用汇编语言写出满足上述要求的程序段(已知一个延时1秒的子程序入口地址为DELAY1S)。

分析8255的控制字:80H(D7=1,D2、D0=0)程序如下:CODE SEGMENTASSUME CS:CODEST:MOV AL,80HMOV DX,10EHOUT DX,ALMOV CX,64MOV AL,1MOV DX,10AHNEXT1:OUT DX,ALCALL DELAY1SDEC CX,JZ NEXT2ROL AL,1JMP NEXT1DELAY1S:。

常用可编程并行接口芯片8255A82C55功能

常用可编程并行接口芯片8255A82C55功能

常用可编程并行接口芯片8255A (82C55)功能(该内容可参考学习指导书或别的微机原理教材)一.芯片功能及引脚1.具有三个八位端口:PA 、PB 和PC 口,分为二组: A 组:PA7---PA0,PC7---PC4 B 组:PB7---PB0,PC3---PC0 具有三钟工作模式:方式0:基本输入输出方式。

方式1:选通输入/输出方式。

方式2:双向工作方式(A 组具有)。

2. 面向系统总线引脚D7---D0:数据线(双向) RESET :复位输入线,高有效。

/RD :读信号,低有效。

/WR :写信号,低有效。

/CS :片选信号,低有效。

A1、A0:地址输入,具有四个可以访问的端口: A 1 A 0 = 00 为PA 数据口。

A 1 A 0 = 01 为PB 数据口。

A 1 A 0 = 10 为PC 数据口。

A 1 A 0 = 11 为控制口。

3. 端口线(面向外设)具有三个八位端口PA7---PA0;PB7---PB0;PC7---PC0。

分为二组:A 组和B 组,在选通或双向工作方式下PC 口用作应答信号。

4.8255A 与系统总线的连接(将上图画完整) 设采用线性译码(A9,A8没参与),基本地址为: 40H PA 口(数据口) 注意:设总线为双体结构 42H PB 口(数据口) A 0 : 参与片选偶地址有效 44H PC 口(数据口) AEN :为PC 机的控制信号(执行IN/OUT 指令时为低) 46H 控制口A 组B 组A 7A 6A 5A 4A 3M/IO A 0AEN二. 8255A 的工作方式选择1.工作方式控制字(写入控制口,将选择8255A 的工作方式)2.位 复位/置位控制字(写入控制口,对选中的PC i 进行位操作)三.8255A 工作方式1.方式0:基本的输入/输出(可作为一般的输入/输出线使用)此方式下可获得多至24条端口线,分二大组四小组,每小组可通 过编程独立设置为输入或输出。

8255工作方式

8255工作方式

将OBF置为有效。对于A组,系统规定端口C的第 7位(PC7)用作从端口A输出的OBF信号,对于B组, 规定端口C的第1位(PC1)用作从端口B输出的OBF信
号。
② ACK ——外部应答信号。由外部输入,低电平有 效。 ACK有效,表示外部设备已收到由8255A输出的八 位数据,它实际上是对OBF信号的回答信号。对于A 组,指定端口C的第6位(PC6)用来接收向端口A输入 的ACK信号;对于B组,指定端口C的第2位(PC2)用 来接收向端口B输入的ACK信号。 ③ INTR——中断请求信号。向CPU输出,高电平有 效。
ACKA OBFA
&
O WR PC3 INTRA I/O
PC4, PC5
图7.4 端口A方式 1 输出
ACK:外设应答 OBF:输出缓冲器满 INTE:中断允许 INTR:中断请求
① CPU输出数据 ② CPU发出WR: (1) 数据写到 8255A的端口 (2) WR的低电平清除中断请求 信号INTR (3) WR的上升沿使OBF有效, 表示输出端口满,通知外设取数 据。 ③ 外设接受到数据后,发出 ACK信号: (1) ACK的下降沿使OBF变高, (2) ACK的上升沿使INTE=1, 则INTR变高,发出中断请求,请 求CPU输出新的数据。
3. STB 选通信号:由外设输入,低电平有效、
4. IBF 输入缓冲存储器满信号:向外部输出,高电平 有效。
5. INTR 中断请求信号:向CPU发出,高电平有效。
端口A工作于方式2所需控制信号如下: ① OBFA——输出缓冲存储器满信号。向外部 输出,低电平有效。OBFA有效,表示要求输 出的数据已锁存到端口A的输出锁存器中,正 等待向外部输出。CPU用OUT指令输出数据 时,由WR信号后沿将OBFA置成有效。系统 规定端口C的第7位(PC7)用作由端口A输出的 OBFA信号。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

可编程并行接口芯片8255A有哪几种工作方式?每种工作方式有何特点?【解答】方式0:没有固定的用于应答式传送的联络信号线,CPU可以采用无条件传送方式与8255A交换数据。

方式1:有专用的中断请求和联络信号线,因此,方式1通常用于查询传送或中断传送方式。

方式2:PA口为双向选通输入/输出或叫双向应答式输入/输出。

9.2 8255A的方式选择控制字和C口按位控制字的端口地址是否一样?8255A怎样区分这两种控制字?写出端口A作为基本输入,端口B作为基本输出的初始化程序。

【解答】8255A的方式选择控制字和C口按位控制字的端口地址是一样的,通过控制字的最高位D7进行区分:D7=1时,为方式选择控制字;D7=0时,为C口按位控制字。

初始化程序段如下:MOV DX,PORT ;PORT为端口地址MOV AL,10010000BOUT DX,AL9.3 某8255A的端口地址范围为03F8H~03FBH,A组和B组均工作在方式0,A口作为数据输出端口,C口低4位作为状态信号输入口,其它端口未用。

试画出该片8255A与系统的连接图,并编写初始化程序。

【解答】连接图如下:图9-1 8255A与系统的连接图程序如下:MOV AL,81HMOV DX,03FBHOUT DX,AL9.4 试按以下要求对8255A进行初始化编程:(1)设端口A、端口B和端口C均为基本输入/输出方式,且不允许中断。

请分别考虑输入/输出。

(2)设端口A为选通输出方式,端口B为基本输入方式,端口C剩余位为输出方式,允许端口A中断。

(3)设端口A为双向方式,端口B为选通输出方式,且不允许中断。

【解答】(1)端口A、端口B和端口C均为基本输入/输出方式,则为方式0,任何一个口都可用于输入或输出,可出现16种组合,这里只举出2种组合。

若端口A、B为数据输入口;C口的低4位为控制信号输出口,高4位为状态信号输入口,程序段如下:MOV AL,10011010BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL若端口A、B为数据输出口;C口的高4位为控制信号输出口,低4位为状态信号输入口,程序段如下:MOV AL,10000000BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL(2)端口A为选通输出方式,方式1;端口B为基本输入方式,程序段如下:MOV AL,10100010BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001101B ;设PC6为中断信号控制引脚,PC6=1,允许中断OUT DX,AL(3)端口A为双向方式,方式2;端口B为选通输出方式,程序段如下:MOV AL,11000100BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL9.5 采用8255A作为两台计算机并行通信的接口电路,请画出查询式输入/输出方式工作的接口电路,并写出查询式输入/输出方式的程序。

【解答】甲机的8255A是方式1发送,端口PA为输出,发送数据,而PC7和PC6引脚分别固定作联络线和。

乙机的8255A是方式0接收数据,故把端口PA定义为输入,另外,选用引脚PC7和PC3作为联络线。

接口电路如图9-2:图9-2 查询方式的双机通信查询式输入/输出方式的程序如下:;甲机发送的程序段MOV DX,303H ; 8255A命令端口MOV AL,l010000B ; 初始化工作方式字OUT DX,ALMOV AL,0DH ;置发送允许INTEA=1OUT DX,ALMOV SI,OFFSET BUFS ; 设置发送数据区的指针OUT CX,3FFH ; 发送字节数MOV DX,300H ; 向端口A写第1个数,产生第1个信号MOV AL,[SI] ; 送给乙机,以便获取乙机的信号OUT DX,ALINC SI ; 内存地址加1DEC CX ; 传送字节数减1LOP:MOV DX,302H ; 8255A状态端口(端口C)IN AL,DX ; 查发送中断请求INTRSA=1AND AL,08H ; 是否PC3=lJZ LOP ; 若无中断请求则等待;若有向端口A写数MOV DX,300H ; 8255A端口PA地址MOV AL,[SI] ; 从内存取数OUT DX,AL ; 通过端口A向乙机发送第2个数据INC SI ; 内存地址加1DEC CX ; 字节数减1JNZ LOP ; 字节未完,继续MOV AH,4CH ; 己完,退出INT 21H ;返回DOSBUFS DB … ; 定义1024个数据;乙机接收的程序段MOV DX,303H ; 8255A命令端口MOV AL,l0011000B ; 初始化工作方式字OUT DX,ALMOV AL,00000111B ; 置=1(PC3=1)OUT DX,ALMOV DI,OFFSET BUFR ; 设置接收数据区的指针MOV CX,3FFH ; 接收字节数L1: MOV DX,302H ; 8255A端口PCIN AL,DX ; 查甲机的 =0?(乙机的PC7=0)AND AL,80H ; 查甲机是否有数据发来JNZ L1 ; 若无数据发来,则等待;若有数据,则从端口A读数MOV DX,300H ; 8255A端口PA地址IN AL,DX ; 从端口A读入数据MOV [DI],AL ; 存入内存MOV DX,303H ; 产生信号,并发回给甲机MOV DX,00000110B ; PC3置“0”OUT DX,ALINC DI ; 内存地址加1DEC CX ; 字节数减1JNZ L1 ; 字节未完,则继续MOV AX,4C00H ; 己完,退出INT 21H ; 返回DOSBUFR DB l024 DUP(?) ; 接收数据缓冲区10.7 以图10-10所示的连接形式为例,设系统工作过程中以查询方式发送数据,而以中断方式接收数据,数据位8位,偶校验,2位停止位,波特率为4800HZ,请编写程序段对8250的初始化,并编写相应的中断服务子程序。

【解答】时钟频率为1.8432MHz,波特率为4800bps,故除数波特率因子为0018H,8250的初始化如下:;设置波特率MOV AL,10000000B ;DLAB=1MOV DX,3FBH ;通信控制寄存器地址OUT DX,AL ;写入通信控制寄存器MOV AL,18H ;置4800波特率除数低位MOV DX,3F8HOUT DX,AL ;写入除数锁存器低位MOV AL,00 ;置4800波特率除数高位MOV DX,3F9HOUT DX,AL ;写入除数锁存器的高位;设置字符数据格式MOV AL,00011111B ;设置数据格式MOV DX,3F8HOUT DX,AL ;写入通信控制寄存器MOV DX, 3FCHMOV AL,0BHOUT DX,AL ;初始化MODEM寄存器MOV DX,3F9H ;初始化中断允许寄存器MOV AL,01H ;允许接收数据寄存器满产生中断OUT DX,ALSTI中断服务子程序如下:RECEIVE:PUSH AXPUSH BXPUSH DXPUSH DSMOV DX,3FDHIN AL,DXTEST AL,DXTEST AL,IEHJNZ ERRORMOV DX,3F8HIN AL,DXAND AL,7FHMOV BX,OFFSET REVBUFMOV [BX],ALMOV DX,INTRRMOV AL,20H ;发中断结束命令EOI给8259OUT 0A0H,ALOUT 20H,ALJMP QUITERROR:……QUIT: POP DSPOP DXPOP BXPOP AXSTIIRET【解答】目前计算机中使用的键盘分为编码键盘和非编码键盘。

PC系列键盘具有两个基本特点:第一是按键均为无触点的电容开关第二是PC系列键盘属于非编码键盘。

11.3 说明键盘接口电路的种类和基本工作原理,试设计一个键盘中断调用程序,从键盘输入10个连续的字符。

【解答】目前PC机上常用的键盘接口有3种,一种是老式的直径13mm的PC键盘接口;第二种是最常用的直径8mm的PS/2键盘接口;第三种是USB接口的键盘。

PC系列键盘不是由硬件电路向CPU输出按键所对应的ASCII码值,而是由单片机扫描程序识别按键的当前位置,然后向键盘接口输出该键的扫描码。

按键的识别、键值的确定以及键代码存入缓冲区等工作全部由软件完成。

设输入的字符存入620H内存单元,键盘中断调用程序如下:MOV CX,10MOV SI,620HNEXT:MOV AH,0INT 16HMOV [SI],ALINC SILOOP NEXT11.4 与PC键盘发生关联的是哪两类键盘中断程序?它们各自的特点是什么?【解答】计算机系统与键盘发生联系通过硬件中断09H或软件中断16H。

特点:硬件中断09H是由按键动作引发的中断。

在此中断中对所有键盘进行了扫描码定义。

软件中断16H 是BIOS中断调用的一个功能。

相关文档
最新文档