8255a中断方式控制打印机
8255方式1
8255A作中断方式工作的字符打印机的接口,如下图所示:原理图打印机接口需要一个数据选通信号STB,故由CPU控制PC0来产生选通脉冲STB。
OBF在此没有用,将它悬空就行了,ACK端连接打印机端。
PC3连到中断控制器8255A的中断请求信号输入端IR3。
对应于中断类型号0BH,此中断对应的中断,向量放在00段2CH、2DH、2EH、2FH这4个单元中,8255A在系统程序中已完成初始化。
设8255A的端口地址为:A端口:0C0HB端口:0C2HC端口:0C4H控制口:0C6H方式控制字为0A0H,因为B口未用,故取D3~D1位为0,其他各位的值使A 组工作于方式1,A端口为输出,作为输出。
在这个设计中,由中断处理子程序完成字符输出;而初始化程序完成对8255A设置方式控制字、设置中断向量、开放中断。
主程序执行其它操作,并等待中断。
中断服务主程序入口标号为INTPR。
所谓设置中断向量,就是把中断服务程序的入口地址(4字节的逻辑地址)写到中断向量表中由中断类型号指定的单元中。
在中断处理子程序中,设字符已放在主机的字符输出缓冲区,往A端口输出字符后,CPU用对C端口的置1/置0命令使输出负脉冲,从而将数据送入打印机。
当打印机接收并打印字符后,发出回答信号ACK,由此清除了8255A 的“输出缓冲器满”信号,并使8255A产生新的中断请求。
软件设计1、CPU启动打印机设备工作。
2、当打印机准备好一个字符输出时,把外设置为就绪状态。
3、I/O口在设备就绪时向CPU发出中断请求,需求服务。
4、CPU接到中断请求信号,暂停当前工作,响应中断,输入中断服务程序,服务程序实现发送下一个字符到I/O口并选通打印机。
5、CPU从中断服务。
6、重复2-5,直到所有的字符打印完关闭打印机7、程序及流程图如下:主程序:MAIN: MOV AL,0A0HOUT 0C6H,AL ;设置8255A的控制字MOV AL,01H ;使选通无效OUT 0C6H,ALXOR AX,AXMOV DS,AXMOV AX,OFFSET ROUTINTRMOV WORD PTR [002CH],AXMOV AX,SEG ROUTINTRMOV WORD PTR [002EH],AX ;送中断向量MOV AL,0DHOUT 0C6H,AL ;使8255A A口输出允许中断MOV DI,OFFSET BUFF ;设置地址指针MOV CX,99 ;设置计数器初值MOV AL,[DI]OUT 0C0H,AL ;输出一个字符INC DIMOV AL,00HOUT 0C6H,AL ;产生选通INC ALOUT 0C6H,AL ;撤消选通STI ;开中断NEXT: HLT ;等待中断LOOP NEXT ;修改计数器的值,指向下一个要输出的字符HLT中断服务子程序如下:ROUTINTR:MOV AL,[DI]OUT 0C0H,AL ;从A口输出一个字符MOV AL,00HOUT 0C6H,AL ;产生选通INC ALMOV 0C6H,AL ;撤消选通INC DI ;修改地址指针IRET ;中断返回。
8255控制打印机
郑州航空工业管理学院微机原理课程设计2011 级电气工程及其自动化专业 971 班级题目8255控制打印机设计姓名刘卫学号110697116指导教师王义琴职称讲师二О一一年12 月22 日摘要单片微型计算机(简称单片机)作为微型计算机的一个很重要的分支,自它诞生以来,以其极高的性价比以及一系列的优点,受到越来越多的工程技术人员的重视。
现在,单片机已广泛地应用在智能仪器仪表、机电设备过程控制、自动检测、家用电器和数据处理等各个方面。
随着单片机的发展以及它在各种复杂的控制系统、智能化系统中的广泛应用,它将渗透到生产和生活的各个领域。
单片机控制品质卓越,基于单片机的微型打印机运行可靠,操作方便。
微型打印机是一种及其常用的人机交换工具,他在人们的日常生活中起着非常重要的作用。
比如银行ATM自动取款机打印取款凭证、超市打印消费小票、出租车打印路费、再比如某些不利于人工控制的高压环境,在设备控制里面我们可以设计一故障打印模块,及时打印故障,控制微型打印机和启动打印机尤为重要。
传统上启动打印机都是靠人工手动操作完成,但是在上面所举例子中,对于人工操作带有一定的风险性,并且从经济领域考虑,我们提出并设计了由89S51、8255、红外接收芯片M5046控制微型打印机这一系统。
关键词:单片机;8255;微型打印机;M5046一、设计基本原理说明及系统资源分配1、原理说明本次设计采用8255A工作方式0,其A口充当打印机数据线,C口的PC0接打印机选通信号线,C口的PC4接打印机“忙”线BUSY,B口不用,8255A的初始化可以通过74LS138译码器来实现。
为了用键盘来设定打印内容,可以先定义一个数据段,然后调用DOS的1号功能完成数据存储。
在满足一定的条件下,CPU现将打印内容依次送到8255A,然后再送到打印机打印,数据全部传送并打印完毕后退出程序。
2、资源分配◆A端口作为传输字符的通道,工作于方式0,输出方式。
微机原理及应用试卷应用题
一.应用题应用题 ( ( (共共36题,360分)1.1 [库中题号:070036] 10分设8253三个计数器的端口地址为201H 、202H 、203H ,控制寄存器端口地址200H 。
输入时钟为2MHz ,让1号通道周期性的发出脉冲,其脉冲周期为1ms ,试编写初化程序段。
1.2 [库中题号:070035] 10分将两片6264连接到8088系统总线上,要求其内存地址范围为7000H-73FFH ,试画出连接图。
,试画出连接图。
1.3 [库中题号:070034] 10分如图所示8086与DAC0832的接口的接口(1)在图中画出单极性输出的电路图。
)在图中画出单极性输出的电路图。
(2)写出输出锯齿波的程序片断,包括延时程序。
)写出输出锯齿波的程序片断,包括延时程序。
1.4 [库中题号:070033] 10分8253的计数通道0连接如下图,试回答连接如下图,试回答(1)计数通道0工作于何种方式,并说明理由。
工作于何种方式,并说明理由。
(2)写出计数通道0的计数初值,CLK0输入的频率是多少?并说明理由。
1.5 [库中题号:070032] 10分打印机驱动接口是一个并行接口,它需要数据口输出数据,控制口用于控制打印机工作,状态口用于测试打印机的现行工作状态。
要求用8255芯片设计一个打印机控制接口。
芯片设计一个打印机控制接口。
(1)画出硬件连接原理图。
)画出硬件连接原理图。
(2)以查询方式编制输出一个字符(设该字符已在BL 寄存器中)的程序,包括8255初始化程序。
设8255控制口为83H,P A口为80H,PC口为82H。
口作为输出字符的数据要求:PC6去检测打印机的BUSY信号,PC2产生STB信号,P A口作为输出字符的数据口,工作于方式0,程序中写出必要的注解。
,程序中写出必要的注解。
1.6 [库中题号:070031] 10分利用8255A及ADC0809设计的数据采集系统如下图,要求用查询方式编写连续转换8个通道模拟量的程序。
8255A的原理介绍
D7~D0
8086 系 统 总 线
RD WR A1 A2 A0 A3 A4 M/IO A5 A6 A7
&
A B C G2A G2B
Y0 O Y1 Y2 O O
RD WR A0 A1 CS
PA7
PA0
PC3 PC2
驱 动 器
K3
K2 K1 +5V
PC1
PC0
~
K0
G1 LS138
8255A
+5V
;查表,取出相应的字形码送AL
;指向端口A ;输出字形码显示
LED显示器的结构
a
f g b c d dp
a b c d e
a b c d e
e
f
g ep
f
g ep
LED显示器的外形
共阳极LED显示器的结构
共阴极LED显示器的结构
LED显示器的工作原理
软件译码法
PA0 PA1
a b c d e
8 2 5
8255A各端口地址确定: 由图可知: A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 0 1 0 各端口地址为:E8H~EEH
8255A方式选择控制字: 按题意设置端口A方式0输出,下C口输入.
1 0 0 0 × 0 × 1 81H
A0 A3 A4 M/IO A5 A6 A7
o o 读/写 控制 逻辑 o
至控制 寄存器 至数据端口
(五) 端口寻址
8255A端口选择表
A1 A0 RD 0 0 1 0 0 1 1 0 1 0 0 1 0 1 0 0 0 1 1 1 1 WR 1 1 1 0 0 0 0 CS 0 0 0 0 0 0 0 端口 A 端口 B 端口 C 数据总线 数据总线 数据总线 数据总线 功能 数据总线 数据总线 数据总线 端口 A 端口 B 端口 C 控制字寄存器
8255A的应用举例
(2)EOC
转换结束,为状态信号。本例假定A/D转换期间该信号为低电平,一旦转换结束,就变为高电平。
(3)OE(上划线)
输出允许,低电平有效。在A/D转换结束后,置该信号有效,可使转换数据通过内部的三态门出现在输出线上。
根据这两个转换器的控制和状态信号的需要,可将作为接口的8255A设置成方式0,连接如图6.13所示。A口作输出口,用来输出要进行D/A转换的数据;B口作输入口,用来输入A/D转换结果;c高4位口作输入口(仅用PC4),用来读:EOC状态;C低4位口作输出口,用置位/复位操作产生D/A、A/D转换所需的各种控制信号。
8255A的应用举例
作者:佚名文章来源:本站原创点击数:3337更新时间:2007-2-24 0:35:43
8255A的应用举例
1.8255A在PC系列机中的应用简况
在PC/XT机中用一片8255A来做三项工作:一是管理键盘,二是控制扬声器,第三是输入系统配置开关的状态。占用的I/0端口地址空间为60H~7FH,但实际使用60H~63H。
图6.14所示是进行D/A输出及采样模拟量的流程图。采样模拟量部分的“使PC3(OE)为低电平”一项可移到准备阶段去做,即让ADC的输出三态门一直为开放状态。
下面的程序段是做一些准备工作(具体工作在注释中说明):
例6.2使用8255A以方式1工作作打印机与CPU之间的接口。
微机原理与接口技术习题及参考答案精选全文完整版
可编辑修改精选全文完整版《微机原理与接口技术》复习题一、填空题1、微型计算机由、、和构成。
2、在8086CPU中,寄存器指向下一条要执行的指令。
3、微型计算机的总线根据功能可分为、和。
4、主存储器和CPU之间增加高速缓冲存储器的目的是。
5、在计算机系统中定时信号一般可以用和两种方法来获得。
6、中断类型码为31H的中断向量存放在从开始的4个存储单元。
7、系统工作于实模式,设BX=4000H,DI=0100H,DS=3100H,在指令MOV AX,[BX+DI]中,源操作数的寻址方式为;物理地址为。
8、在异步传输中,设每个字符对应1个起始位、7个数据位、1个奇偶校验位、1个停止位,如果波特率为1200bps,则每秒钟传输的最大字符数是个。
9、CPU和输入/输出设备之间的信号分为、和三类。
10、CPU的可屏蔽中断受标志的影响,如果允许CPU接受可屏蔽中断请求,则该标志取值为。
11、是微型计算机的核心。
12、在8086CPU中,一个最基本的总线周期有个时钟周期组成。
M/为高电平,表示。
13、在最小模式下,如果8086CPU的引脚IO14、8086CPU有16根数据线和20根地址线,所以可寻址的地址空间最大为字节。
15、存储器扩展有两种方法,分别是扩展和扩展。
16、8086复位时,代码寄存器CS和指令指针寄存器IP分别初始化为和。
17、系统工作于实模式,设BX=4000H,SI=0100H,DS=3100H,在指令MOV DX,[BX+SI]中,源操作数的寻址方式为;物理地址为。
18、9片8259中断控制器组成两级级联,则最多能提供个中断。
19、8086CPU的编程结构包括和。
20、CPU和外设之间的数据传送方式包括、和。
21、当CS=,WR=,RD=,A0=时,CPU设置8259的ICW1。
二、选择题1、8086CPU的指令队列为 ( ) 个字节。
A 2B 4C 6D 82、标志寄存器的标志位ZF=1表示运算结果()。
(完整版)05-8255-An习题与答案
选择题 _____________________________________________________________1. 8255A既可作数据输入、出端口,又可提供控制信息、状态信息的端口是()A. A 口B. B 口C. C 口D. A B、C三端口均可以2.8255A的方式选择控制字为80H,其含义是()A. A B为方式0B. A B、C 口全为输入C. A 口为输出,其他为输入D. A B、C 口均为方式0,输出3.8255A弓I脚信号W=0,CS=0,A1=1,A0=1 时,表示()A.无效操作B. CPUS 8255A控制口C. CPUO数据口写数据D-CPUO控制口送控制字4.8255的B 口中断输出时,应将B 口工作方式初始化为是()A.方式0B.方式1C.方式2D.不初始化5.8255A接口芯片的端口A的工作方式有()A. 5种B. 4种C. 3种D. 2种6.某系统采用8255A作并行I/O接口,初始化时CPUT访问的端口地址为0CBH并设定为方式1输出,则A口的口地址应为()A. 0C8HB. 0CAHC. 0CHD. 0EH7.8255不需联络信号线的工作方式是()A. 方式0B.方式1C.方式2D.所有方式8.8255A工作在方式2 (双向选通I/O )时,()A.只能作输入接口B.只能作输出接口C.作输入口或作输出口D.同时可作输入口.输出口9.当并行接口芯片8255A被设定为方式2时,其工作的I/O 口是()A.仅能作输入口使用B.仅能作输出口使用C.既能作输入口、也能作输出口使用D.仅能作不带控制信号的输入口或输出口使用10.在8255的初始化程序中,使INTEA=1的目的是()A. A 口在中断方式下完成输入/输出操作B. B 口在中断方式下完成输入/输出操作C. A 口在查询方式下完成输入/输出操作D. B 口在查询方式下完成输入/输出操作11. 8255A 弓I脚信号WR=0、CS=0、A1=1、A0=1 时,表示()A. CPU向数据口写数据B. CPU读8255A控制口C. CPU向控制口送控制字D.无效操作填空题 _____________________________________________________________1.计算机与普通打印机之间的总线接口标准有多种. 通常使用最多的是Centronics总线【中国矿大考研试题】2.8255A的三个端口中只有端口C没有输入输出锁存功能3.8255A的端口A工作于方式2时,使用端口C的PC7-PC3乍为与CPU 和外部设备的联络信号4.8255A控制字的最高位D7=L时,表示该控制字为方式控制享5.8255A中,可使用的控制享有工作方式控制字和置位复位控制字、其中置位复位控制字只对端口C有效。
8255a的控制字
8255a的控制字8255A是一种常用的并行接口芯片,其控制字用于设置和配置芯片的工作模式和功能。
控制字是一个8位的二进制数,通过对各位的设置可以实现不同的控制功能。
控制字的第一位是A0,用于选择A端口的工作模式。
当A0为0时,A端口工作在输出模式,可以将数据从计算机发送到外部设备;当A0为1时,A端口工作在输入模式,可以将外部设备的数据发送到计算机。
第二位是A1,用于选择B端口的工作模式。
当A1为0时,B端口工作在输出模式,可以将数据从计算机发送到外部设备;当A1为1时,B端口工作在输入模式,可以将外部设备的数据发送到计算机。
第三位是A2,用于选择C端口的工作模式。
当A2为0时,C端口工作在输出模式,可以将数据从计算机发送到外部设备;当A2为1时,C端口工作在输入模式,可以将外部设备的数据发送到计算机。
第四位是A3,用于选择C端口的工作方式。
当A3为0时,C端口工作在模式0,即C端口的8位数据线为输入线;当A3为1时,C 端口工作在模式1,即C端口的8位数据线为输出线。
第五位是A4,用于选择B端口的工作方式。
当A4为0时,B端口工作在模式0,即B端口的8位数据线为输入线;当A4为1时,B端口工作在模式1,即B端口的8位数据线为输出线。
第六位是A5,用于选择A端口的工作方式。
当A5为0时,A端口工作在模式0,即A端口的8位数据线为输入线;当A5为1时,A端口工作在模式1,即A端口的8位数据线为输出线。
第七位是A6,用于设置8255A的中断使能位。
当A6为0时,中断功能被禁用;当A6为1时,中断功能被启用。
最后一位是A7,用于选择8255A的工作模式。
当A7为0时,8255A工作在模式0,即三个端口均为并行输入/输出模式;当A7为1时,8255A工作在模式1,即A端口为并行输入/输出模式,B 端口为并行输入模式,C端口为并行输出模式。
通过对控制字的设置,可以实现不同的工作模式和功能。
例如,当控制字为00000000时,表示A、B、C三个端口均为并行输出模式,并且中断功能被禁用;当控制字为10011001时,表示A端口为并行输出模式,B端口为并行输入模式,C端口为并行输出模式,并且中断功能被启用。
在8255a中的工作方式控制字
在8255a中的工作方式控制字
8255A是一种通用的可编程I/O设备,它通过工作方式控制字来完成对其I/O端口的控制。
工作方式控制字是8255A中的一个重要概念,其设置决定了8255A的工作模式和控制方式。
下面将深入介绍8255A
中的工作方式控制字。
首先,工作方式控制字由三个8位的二进制数字组成,即控制字
寄存器A、B、C。
控制字寄存器A和B各占8个位,分别控制8255A的PortA和PortB。
而控制字寄存器C控制了8255A的工作状态和PortC
的设置。
其次,控制字的每一个位都有其对应的含义。
如控制字寄存器A
的第5位(即A5)代表了PortA的控制方式。
通过设置A5位可以选择PortA是输入状态还是输出状态。
如果设置为1,则PortA为输出状态;如果为0,则PortA为输入状态。
此外,控制字还可以根据其它位的设置来控制8255A的工作模式
和特殊功能,如数据传送方式、端口方向、中断控制、手动模式等。
对于工程应用,需要根据需要进行设置工作方式控制字。
比如,
如果需要控制8255A的输出,可以选择设置A5和B7位为1,表示
PortA和PortB都为输出状态。
最后,在使用8255A时,需要注意根据其功能特点正确设置其工
作方式控制字。
同时,针对不同的应用场景可以采用不同的控制方式,来实现更好的效果。
总之,工作方式控制字是8255A中的一个重要概念,合理的配置
和设置将有助于实现其最佳工作状态。
我们应该深入了解其各个位的
含义,灵活应用,为工程应用提供有力支持。
微机接口 8255中断实验报告
浙江工业大学计算机学院实验报告实验名称 8259中断实验姓名学号班级教师日期一、实验内容与要求1.1 实验内容通过实验了解8259A中断控制器的工作原理,了解PC中断的原理和过程,学会中断处理程序的编写。
1.2 实验要求了解8259A终端控制器的工作原理,了解PC中断的原理和过程,设计并编写程序,设置8259A的命令字,定义中断服务程序,使在实验平台上每按一次单脉冲开关产生一次中断,在屏幕上依次显示“This is the 1st TPCA Interrupt!”、“This is the 2nd TPCA Interrupt!”、····、“This is the 10th TPCA Interrupt!”、···,中断n次后程序退出,并在屏幕上显示“The TPCA Interrupt end!”二、实验原理与硬件连线2.1 实验原理1.8259A的内部结构:2.8259A 的工作方式:8259A 是一种可编程中断控制器,可协助CPU 进行中断管理。
单片8259A 工作时,每次中断处理过程如下:① 当 IR 7 ~ IR 0 上有中断请求,则 IRR 相应的位置1。
② 对于已进入IRR 且未被IMR 屏蔽的中断请求,PR 电路进行优先级判定,得到最高级的中断请求。
③ 控制逻辑接收中断请求,向CPU 发 INT 信号。
④ 若CPU 允许中断,则在当前指令结束后连续发出2个中断应答信号INTA ,进行中断响应。
每个信号持续2个时钟周期。
T 1T 2T 3T 4T 1T 2T 3T 4中断号CLK (时钟)ALE (地址允许)LOCK (总线锁存)INTA (中断应答)D 7~D 0(数据)⑤ CPU 发第一个 INTA 时,输出总线锁定信号 LOCK ,防止其它处理器或DMA 控制器占用总线。
8259A 收到第一个负脉冲后,将优先级最高的中断ISR 相应位置1,同时使IRR 相应位清0。
8255a中断方式控制打印机
允许8255A的A口输出中断,8255A的A端口作为数据通道,可工作在上述3中方式,端口B只可工作于两种方式,端口C 只可工作于方式0。端口C常常分为高四位和低四位两部分,分别用来传送数据或控制信息。用户可以通过编辑来分别定义每一个端口的工作方式,使用的控制字有工作方式控制字和置位控制字。
关键词:8255A、接口、中断、并行
1
本次课设采用8255A工作方式1,其A口充当打印机数据线,C 口的 PC0 接打印机选通信号线 STB ,C口的PC6接打印机的ACK,处理器以中断方式控制输出数据到打印机。为了用键盘来设定打印内容,可以 先定义一个数据段,然后调用 DOS 的 1 号功能完成数据存储.在满足一定的条 件下,CPU 现将打印内容依次送到8255A,然后再送到打印机打印,数据全部 传送并打印完毕后退出程。
2.5并行接口的作用及基本功能
(1)具有一个或多个数据I/O寄存器和缓冲器 (也称为端口寄存器);
(2)具有与CPU和外设进行联络控制的功能;
(3)能够以中断的方式与CPU进行联络;
(4)可以有多种工作方式,且可编程进行选择。
3
8255A作中断方式工作的字符打印机的接口,如下图所示:
原理图
打印机接口需要一个数据选通信号STB,故由CPU控制PC0来产生选通脉冲STB。OBF在此没有用,将它悬空就行了,ACK端连接打印机端。
在这个设计中,由中断处理子程序完成字符输出;而初始化程序完成对8255A设置方式控制字、设置中断向量、开放中断。主程序执行其它操作,并等待中断。
中断服务主程序入口标号为INTPR。所谓设置中断向量,就是把中断服务程序的入口地址(4字节的逻辑地址)写到中断向量表中由中断类型号指定的单元中。
微机接口自测题(最新版)
微机接口技术自测题1一、单选题1.数据的输入输出指的是()进行数据交换。
A.CPU与存储器B.CPU与外设C.存储器与外设D.内存与外存2.在给接口编址的过程中,如果有5根地址线没有参加译码,则可能产生()个重叠地址。
A.52B.5C.25D.103.8086在执行IN AL,DX指令时,DX寄存器的内容输出到()上。
A.数据总线B.地址总线C.存储器D.寄存器4.ISA总线的数据宽度为()位。
A.64 B.32C.16 D.85.8086中断向量表的大小为()字节。
A.256 B.1024C.2k D.64k6.软中断INT n(n=10H~FFH)的优先级排列原则是()。
A.n值愈小级别越高B.无优先级别C.n值愈大级别越高D.随应用而定7.8255A工作在方式2(双向选通I/O)时,()。
A.只能作输入接口B.只能作输出接口C.作输入口或作输出口D.同时可作输入口、输出口8.DMAC8237A接口芯片的端口个数为()。
A.16 B.8C.4 D.29.PC机中两片级联的中断控制器8259A实际可管理的外部中断源至多有()个。
A.13 B.14C.15 D.1610.当外设的输出信号为模拟电压时,需在输入通道中设计一个()。
A.A/D转换器B.D/A转换器C.定时器/计数器D.传感器11.使多路模拟信号共用一个A/D转换器时,需使用()。
A.采样保持器B.多路模拟开关C.传感器D.滤波电路12.用8255的PA口和PC口的低4位接一个键盘阵列,最多可识别()个按键。
A.6 B.8C.16 D.3213.A/D转换器对信号的转换过程所包括的一般步骤依次是()。
A.量化,采样,保持和编码B.采样,保持,量化和编码C.采样,保持,编码和量化D.采样,量化,保持和编码14.串行通信适用于()微机间的数据传送。
A.不同类型B.同类型C.近距离D.远距离15.两台微机间进行串行通信时,波特率应设置为()。
8255A的应用
;读B口 ;取低4位 ;比较 ;按键未释放,则继续等待 ;后续处理
对于图6.10的电路,还可以采用反转法读取按键的扫描码,即在已辨别出有 键按下,要读取行和列的扫描码时,可重新设置8255A的工作方式字,使A 口为输入,B口为输出。然后将刚才B口读入的列值从B口输出,再从A口读 入行值。这样,从A口读入的值为行扫描码,
微型计算机接口技术
8255A的应用
1.1 8255A的应用举例 1.2 8255A在PC机中的应用
2
§1.1 8255A的应用举例
【例6-5】8255A作为矩阵键盘接口,工作于方式0,如图6.10所示。试编程读
取矩阵键盘的按键扫描码。 矩阵式键盘是非编码键盘的一种,指按键开关按行列排列,形成二维矩阵
8
§1.1 8255A的应用举例
从B口读入的值为列扫描码。根据上述方法,读者可以自行编写出程序,这 里略过。
【例6-6】 8255A作为打印机接口,工作于方式0,如图6.11所示。试编写程
序实现:CPU用查询方式向打印机输出26个英文字母。8255A的端口地址为 80H~86H。 打印的工作过程如下:当主机要向打印机输出字符时,先查询打印机忙信
PC6自动成为A口的控制信号,但由于PC7(OBFA)产生的信号不能满足打 印机STB选通端的要求,故不用PC7端,而用软件在PC0端产生一个负脉冲, 提供给打印机的STB端。另外,C口的PC3作为中断请求信号送到中断控制 器8259A的IR3端,对应的中断类型号为0BH。
8255方式一输入输出(中断)new
out dx,al
mov bl,8 ll: int_proc: jmp ll
;BL为中断次数计数器
;中断服务程序 mov dx,288h ;自8255A口输入一数据 in al,dx mov dl,al ;将所输入的数据保存到DL mov ah,02h ;显示ASCII码为DL的字符 int 21h mov dl,0dh ;回车 mov ah,02h int 21h mov dl,0ah ;换行 mov ah,02h int 21h mov dx,20h ;发出EOI结束命令 mov al,20h out dx,al dec bl ;计数器减1
DB
D0~D7
PA7 ~ PA0
8255 nRD nWR A1 PC A0 RESET (ACKIOW
AB
INTR nINTA
PC3
(INTA)
nRD nWR 20H 21H A0 D0 ~ D7 接CPU总线 槽里的数据 线D0~D7
288H
nCS A0
8259
IR3 INT
8255输出
nINTA
程序清单
start:
code segment assume cs:code mov ax,cs mov ds,ax mov dx,offset int_proc mov ax,250bh ;设外部中断int_proc类型号为0BH int 21h mov dx,21h in al,dx and al,0f7h ;开放IRQ3中断 out dx,al mov dx,28bh ;置8255为A口方式1输出 mov al,0a0h out dx,al mov al,0dh ;将PC6置位 out dx,al
nINTA
8255方式一输入
8255A的工作方式概述
8255A的工作方式概述8255A有三种工作方式:方式0、方式1和方式2。
1.方式0方式0为基本的输入/输出方式,传送数据时不需要联络信号。
A口、B口和C口(或C高4位口及C低4位口)均可独立设置成方式0输入口或方式0输出口。
2.方式1方式l为选通输入/输出方式,即需要进行联络的输入/输出。
A组、B组的8位口(A口或B口)可被设置为方式1输入口或方式1输出口,而这时要用相应C口的3根线作联络线。
3.方式2方式2为双向传送。
该方式要使用C口的5根线作联络线。
由于C口只有8根线,因此只能有一组使用方式2确定为A组。
当A组被设置成方式2时,A口被设置成双向端口,即既可以输入数据,也可以输出数据,C口的5根线被指定为联络线。
4.方式1、2用到的联络信号当将8255A设置为方式1或方式2时,要使用C口中的一些线传输联络信号。
这些信号可归结为五种(方式1仅使用其中的三种):(1)STB#选通,输入信号,由外设提供,低电平有效。
该信号将外设提供的数据送入端口的输入缓冲器。
(2)IBF输入缓冲器满,输出信号,高电平有效。
该信号有效表示来自外设的数据已经进入输入缓冲器,但CPU尚未取走,外设暂时不要送新的数据。
(3)OBF#输出缓冲器满,输出信号,低电平有效。
为低时表示CPU已把数据送到指定端口,该端口外围引线上的数据有效,外设可以利用了。
(4)ACK#来自外设的回答,输入信号。
为低时表示输出的数据已被外设接收,CPU可以输出下一个数据。
(5)INTR中断请求,送往CPU。
输入和输出都可以引起中断。
对于输入,外设的数据进入输入缓冲器后8255A产生INTR,请求CPU取走数据;对于输出,当外设利用完输出缓冲器中的数据之后会发出一个回答信号ACK#,8255A产生INTR,请求CPU输出下一个数据。
汇编(8255A的工作方式1)
汇编(8255A的⼯作⽅式1)1、程序解析:(1)MOV AL,0A0H ;初始化⼯作⽅式字1,有效;01选择⽅式1,即把PA⼝设置为⽅式1,输出;PB⼝选择⽅式0,输出;(2)MOV AL,0DH ;允许中断请求,需要置INTEA=1,即置PC6=1将PC6置为⾼,置位信号为1(3)AND AL,08H ;查发送中断PC32、汇编程序:甲机发送数据:⽅式1,PA⼝输出。
PC6:联络线OBF,缓冲器满信号,低电平有效,代表CPU已经将数据写到了8259A的输出端⼝PC7:联络线ACK,低电平有效,代表外设已经从8259A的端⼝接收到了数据,是对OBF的应答MOV DX,303H ;8255A的控制⼝地址,这⾥设8255A的控制⼝地址为303HMOV AL,0A0H ;初始化⼯作⽅式字OUT DX,ALMOV AL,0DH ;允许中断请求,需要置INTEA=1,即置PC6=1OUT DX,AlMOV SI,OFFSET BUFS ;发送数据区的指针MOV CX,3FFH ;发送字节数MOV DX,300H ;向PA⼝写数据MOV AL,[SI] ;发送给⼄⽅OUT DX,ALINC SI ;内存地址加1DEC CX ;传送字节数减1L:MOV DX,302H ;8255A的控制⼝地址,这⾥设8255A的控制⼝地址为302HIN AL,DX ;查询发送中断AND AL,08H ;查发送中断PC3JZ L ;⽆中断请求则等待MOV DX 300H ;若有中断请求,则向PA⼝写⼊数据(PA⼝地址)MOV AL,[SI] ;从内存取数字OUT DX,AL ;送数到 PA⼝ ,向⼄机发送数据INC SIDEC CXJNZ LMOV AL,4CHINT 21HBUF DB。
微机原理课程8255A和8259A的工作原理设计.doc
题目名称:微机原理课程设计摘要通过上课老师讲和自己动手实验的方法去验证课本上的理论知识。
在了解微型计算机的基本组成的前提上,动手感受8255A和8259A的工作原理、工作方式、相关引脚、内部结构等内容。
在交通控制灯的实验设计中了解8255A的相关芯片的连接和在实验中增强自己的动手能力。
利用8259A的中断特性进行单级中断实验,从而更好的理解8259A的相关性质。
关键词:8255A 8259A目录1 概述 (1)1.1前言 (1)1.2微型计算机的发展史 (1)1.3典型的输入输出芯片 (1)1.4微型机算机的基本组成 (2)2 可编程并行接口8255A的应用设计 (3)2.18255A的基本特性 (3)2.1.1并行接口概述 (3)2.1.2 8255A的基本内容 (3)2.28255A的内部结构及引脚设计 (4)2.2.1 8255A的内部结构 (4)2.2.2 8255A的工作方式 (5)2.2.3 8255A的控制字 (6)2.2.4 8255A的引脚图 (7)2.3交通灯的设计 (8)2.3.1 设计构思 (8)2.3.2 任务分析 (9)2.3.3 流程框图 (9)2.3.4 实验小结 (10)3 8259A的应用设计 (11)3.1中断概述 (11)3.28259A的内部结构及引脚 (11)3.2.1 8259A内部结构图 (11)3.2 .2 8259A的工作方式 (12)3.38259A引脚图 (12)3.3.1 8259A与CPU相连的接口引脚。
(13)3.3.2与外设相接的接口引脚 (13)3.3.3构成级联时使用的引脚 (13)3.48259A应用实例 (14)3.58259A单级中断控制器的设计 (14)3.5.1 任务分析 (14)3.5.2实验要求 (15)3.5.3 流程框图 (15)3.5.4 实验小结 (15)4 总结 (16)5 参考文献 (17)1 概述1.1 前言自1981年IBM公司的通用微型计算机IBM PC/XT问世以来,在短短的20多年间,微型计算机一直以令人惊讶的速度发展。
8259A与8255A应用实验_2011
实验一8259中断控制器应用实验一、实验目的1. 学习可编程中断控制器8259的工作原理。
2. 掌握可编程中断控制器8259的应用编程方法。
二、实验内容1.单中断实验。
利用系统总线上中断请求信号INTR,设计一个单中断应用。
使用单次脉冲模拟中断产生。
编写中断处理程序,在显示器屏幕上显示一个字符。
2.扩展中断源查询方式应用实验。
利用实验平台上8259控制器对系统总线上的中断线INTR进行扩展。
编写程序对8259控制器的IR0和IRI中断请求进行处理。
三、实验所用仪表及设备1. PC机一台。
2. TD-PIT++实验系统一套。
四、实验原理与步骤1. 实验原理(1)PC微机系统中的8259介绍中断控制器8259 是Intel 公司专为控制优先级中断而设计开发的芯片。
它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中,因此无需附加任何电路,只需对8259 进行编程,就可以管理8 级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。
同时,在不需增加其他电路的情况下,通过多片8259 的级连,能构成多达64 级的矢量中断系统。
它的管理功能包括:1)记录各级中断源请求,2)判别优先级,确定是否响应和响应哪一级中断,3)响应中断时,向CPU 传送中断类型号。
8259A的命令字共有7个,可分为两类。
一类是初始化命令字,另一类是操作命令字。
8259 的编程就是根据应用需要将初始化命令字ICW1-ICW4 和操作命令字OCW1- OCW3 分别写入初始化命令寄存器组和操作命令寄存器组。
ICW1-ICW4各命令字格式如表2-1所示,OCW1-OCW3各命令字格式如表2-2所示,其中OCW1用于设置中断屏蔽操作字,OCW2用于设置优先级循环方式和结束方式的操作命令字,OCW3用于设置和撤消特殊屏蔽方式,设置中断查询方式以及设置对8259A内部寄存器的读出命令。
表2-1初始化命令字表2-2操作命令字(2)PC微机系统中的8259A在80x86系列PC微机系统中,系统中包含了两片8259中断控制器,通过级连可以管理15级硬件中断,但其中部分中断号已经被系统硬件占用,具体使用情况如表2-3所示。
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
方式2下的时序图
6.2.3 8255的寻址及连接使用
8255占外设编址的4个地址,即A口、B口、C口和控制 寄存器各占一个外设接口地址。对同一个地址分别可 以进行读写操作; 根据这种寻址结构,可以方便地将8255连接到系统总线 上; 8255寻址
8255的寻址
8255与系统
之下,A口既 ①因为在方式2之下 口既 因为在方式 之下 作为输出又作为输入,因 作为输出又作为输入 因 有效时,才 此,只有当 ACK有效时 才 只有当 能打开A口输出数据三态 能打开 口输出数据三态 使数据由PA0~PA7 门,使数据由 使数据由 输出。 输出。 此时A口输入 口输入、 ② 此时 口输入、输出均具 备锁存数据的能力。 备锁存数据的能力。 ③在这种方式下,A口的数据 在这种方式下 口的数据 输入或数据输出均可引起 中断。 中断。
8255A的功能与结构
8255A的功能与结构8255A可编程外围设备接⼝(programmable perphheral interface,PPI)是⼀种通⽤的可编程并⾏I/O接⼝器件。
它可以作为Intel系列微处理器或其它系列微处理器的接⼝器件,可以将任何与TTL兼容的I/O设备与微处理器连接。
在与主频不⾼于8MHz的微处理器⼀起⼯作时,不需要插⼊等待周期。
它有24个可编程I/O引脚,分为两组,每组12个,可以以3种不同的操作⽅式⼯作。
它的每个I/O引脚可以提供2.5mA的吸⼊电流,最⼤4mA。
8255A常常⽤作键盘和打印机端⼝。
它的价格低廉,使⽤⽅便,得到了⼴泛的应⽤。
8255A的功能结构由图可得:(1)数据总线缓冲器D7~D0与系统数据总线相连,负责与CPU进⾏数据交换。
包括输⼊输出数据、控制字和状态字。
(2)读/写控制逻辑接收来⾃CPU的地址信息和控制信息。
(3)A组控制和B组控制这两组控制逻辑电路接收来⾃CPU的控制字,控制两组端⼝的⼯作⽅式及读/写操作。
A组控制端⼝A和端⼝C的⾼4位,B组控制端⼝B和端⼝C的低4位。
(4)端⼝A、B、C8255A有3个8位数据输⼊/输出端⼝:端⼝A、端⼝B和端⼝C,分别简称为A⼝、B⼝和C⼝。
它们对外的引线分别是PA7~PA0、PB7~PB0和PC7~PC0。
C⼝可分成两个4位的端⼝:C⼝⾼4位(PC7~PC4)和C⼝低4位(PC3~PC0)。
三个端⼝按组编程端⼝A和端⼝B都有⼀个8位数据输⼊锁存器和⼀个8位数据输出锁存/缓冲器。
端⼝C有⼀个8位数据输⼊缓冲器和⼀个8位数据输出锁存/缓冲器。
端⼝C可以按位操作。
8255A的引脚功能双列直插,40根引脚D7~D0:数据信号线CS:⽚选信号输⼊引脚,低电平有效RD:读信号输⼊引脚,低电平有效WR:写信号输⼊引脚,低电平有效RESET:复位信号输⼊引脚,⾼电平有效。
⽤于将8255A控制字寄存器清“0”,并将A、B、C⼝置成输⼊状态A1、A0:端⼝选择信号输⼊引脚8255A的⼯作⽅式8255A可以⽆条件⽅式、查询⽅式和中断⽅式完成CPU与外设的数据交换。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通过学习先期课程微机原理与接口技术,我对这次的课程设计有了一定的了解,学习到了程序设计的一般方法和步骤。模拟电子技术和数字电子技术的学习使我对硬件有了更深的认识。综合到微机原理与接口技术,我发现自己还有很多知识还很不全面。在本次设计并行打印机控制接口过程中,我重温了相关知识,有了进一步的提高。特别地对于8255A这一微机系统中应用最广泛的并行I/O接口芯片,我更了解了其内部结构、各管脚功能、工作方式、初始化以及如何进行并行接口的设计。在设计的过程中,我曾遇到一些难题,查阅资料特别是在同学的帮助下基本解决,同时更感觉到自己所学的知识非常有限,不能很好的应用到实际问题中来,以后要加强相关知识的学习,提高自己的理论水平和动手能力。
可编程并行接口芯片8255A的外形如下:
8255A的引脚排列如下:
内部结构图如下:
8255A内部结构图
2.2
方式 0——基本输入/输出方式
方式 1——选通输入/输出方式
方式 2——双向传输方式
8255A的控制字为:1010XXX0
PC0置位:00000001即 01H
PC0复位: 00000000即 00H
2.3
用PA口作为输出数据锁存器,令其工作方式1。PA口的2根联络线 (PC7)和 (PC6)分别与打印机的 和 相连,通过它们的应答握手来实现接口与打印机之间数据传输的同步。PC3(INTRA)向微型计算机发出中断要求,以此引发微型计算机输出打印字符。
2.4
BIOS的打印机功能调用是以中断INT 17H的形式提供给用户的。INT 17H中断调用的功能有:0号——打印AL的内容,并读出状态字节;1号——初始化打印机;2号——读状态字节。
MOVWORD PTR [002EH],AX;送中断向量
MOVAL,0DH
OUT03H,AL;使8255AA口输出允许中断
MOVDI,OFFSETBUFF;设置地址指针
MOVCX,99;设置计数器初值
MOVAL,[DI]
OUT00H,AL;输出一个字符
INCDI
MOVAL,00H
OUT03H,AL;产生选通
2.5并行接口的作用及基本功能
(1)具有一个或多个数据I/O寄存器和缓冲器 (也称为端口寄存器);
(2)具有与CPU和外设进行联络控制的功能;
(3)能够以中断的方式与CPU进行联络;
(4)可以有多种工作方式,且可编程进行选择。
3
8255A作中断方式工作的字符打印的接口,如下图所示:
原理图
打印机接口需要一个数据选通信号STB,故由CPU控制PC0来产生选通脉冲STB。OBF在此没有用,将它悬空就行了,ACK端连接打印机端。
在此,还要衷心的感谢我们的老师,老师循循善诱的教导和不拘一格的思路给予我很多启迪,这次课程设计的每个实验细节和每个数据,都离不开老师您的细心指导。而您开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。同时感谢对我帮助过的同学们,谢谢你们对我的帮助和支持,让我感受到同学的友谊
指导教师评语:
在这个设计中,由中断处理子程序完成字符输出;而初始化程序完成对8255A设置方式控制字、设置中断向量、开放中断。主程序执行其它操作,并等待中断。
中断服务主程序入口标号为INTPR。所谓设置中断向量,就是把中断服务程序的入口地址(4字节的逻辑地址)写到中断向量表中由中断类型号指定的单元中。
在中断处理子程序中,设字符已放在主机的字符输出缓冲区,往A端口输出字符后,CPU用对C端口的置1/置0命令使输出负脉冲,从而将数据送入打印机。当打印机接收并打印字符后,发出回答信号ACK,由此清除了8255A的“输出缓冲器满”信号,并使8255A产生新的中断请求。
PC3连到中断控制器8255A的中断请求信号输入端IR3。对应于中断类型号0BH,此中断对应的中断,向量放在00段2CH、2DH、2EH、2FH这4个单元中,8255A在系统程序中已完成初始化。
设8255A的端口地址为:
A端口:00H
B端口:01H
C端口:02H
控制口:03H
方式控制字为03H,因为B口未用,故取D3~D1位为0,其他各位的值使A组工作于方式1,A端口为输出,作为输出。
7、程序及流程图如下:
主程序:
MAIN:MOVAL,0A0H
OUT03H,AL;设置8255A的控制字
MOVAL,01H;使选通无效
OUT03H,AL
XORAX,AX
MOVDS,AX
MOVAX,OFFSETROUTINTR
MOVWORD PTR [002CH],AX
MOVAX,SEGROUTINTR
2
一般来说,外设接口可以分为两类:一是串行接口,一组数据按位顺序在一根线上一次传。二是并行接口,一组数据在多根线上同时传输。并行接口连接 CPU 与并行外设,实现两者间的并行通信,在信息传送过程中起到输出锁存或输入缓冲的作用。并行接口的典型硬件结构包括:一个或一个以上具有锁存或缓冲的数据端口;与CPU 进行数据交换所必须的控制和状态信号;与外设进行数据交换所必须的控制和状态信号。
INCAL
OUT03H,AL;撤消选通
STI;开中断
NEXT: HLT;等待中断
LOOPNEXT;修改计数器的值,指向下一个要输出的字符
HLT
中断服务子程序如下:
ROUTINTR:MOV AL,[DI]
OUT00H,AL;从A口输出一个字符
MOVAL,00H
OUT03H,AL;产生选通
INCAL
MOV03H,AL;撤消选通
本次课程设计中采用的是并行接口,能够实现微处理器与打印机之间数据传输。CPU启动打印机设备工作。当打印机准备好一个字符输出时,把外设置为就绪状态。I/O口在设备就绪时向CPU发出中断请求,需求服务。CPU接到中当打印机准备好一个字符输出时,把外设置为就绪状态。I/O口在设备就绪时向CPU发出中断请求,需求服务。CPU接到中断请求信号,暂停当前工作,响应中断,输入中断服务程序,服务程序实现发送下一个字符到I/O口并选通打印机。CPU从中断服务断请求信号,暂停当前工作,响应中断,输入中断服务程序,服务程序实现发送下一个字符到I/O口并选通打印机。CPU从中断服务程序返回。当所有的字符打印完关闭打印。
郑州航空工业管理学院
微机原理课程设计
2013届电气工程及其自动化s专业972班级
题目用8255控制打印机的设计(采用中
断方式传输数据)
姓名戚长森学号110697216
指导教师王义琴职称讲师
2011年10月22日
摘
打印机是微机系统中主要的硬拷贝输出设备, 可以打印文字, 数字和图形等, 常用的打印机有针式打印机,喷墨打印机和激光打印机,常用的打印机接口类型有标准并行接口,串行USB接口等,除此外还发展了增强型并行接口,扩展型并行接口等。本次课设采用的是并行接口,能够满足数据传输速度快,传输距离短等条件限制的要求。本次课设采用8255A工作方式1,其 A 口充当打印机数据线,C 口的PC0 接打印机选通信号线STB ,C口的PC6接打印机的ACK,处理器以中断方式控制输出数据到打印机。为了用键盘来设定打印内容,可以 先定义一个数据段,然后调用 DOS 的 1 号功能完成数据存储。在满足一定的条件下,CPU 现将打印内容依次送到8255A,然后再送到打印机打印,数据全部传送并打印完毕后退出程。
课程设计成绩: 指导教师签名:
年 月 日
INCDI;修改地址指针
IRET;中断返回
结
8255A是8086系列微处理机的配套并行接口芯片,他可以为CPU与外设之间提供并行I/O的通道。打印机是微机系统中主要的硬拷贝输出设备,当微机通过I/O接口与这些外部设备相连接时,往往需要一些专业功能的接口芯片,以增强系统的综合处理能力。而接口一般分为并行接口和串行接口两种,在实际应用中,并行通信常采用8255A作为接口芯片。
关键词:8255A、接口、中断、并行
1
本次课设采用8255A工作方式1,其A口充当打印机数据线,C 口的 PC0 接打印机选通信号线 STB ,C口的PC6接打印机的ACK,处理器以中断方式控制输出数据到打印机。为了用键盘来设定打印内容,可以 先定义一个数据段,然后调用 DOS 的 1 号功能完成数据存储.在满足一定的条 件下,CPU 现将打印内容依次送到8255A,然后再送到打印机打印,数据全部 传送并打印完毕后退出程。
2.1
8255A 是常用的可编程接口芯片, 可编程接口芯片即指电路的工作状态可由计算机指令编程控制的芯片。目前所用的接口芯片大部分是多通道,多功能的。多通道即指一个接口芯片一面与 CPU 连接,另一面可接几个外设。多功能即指一个接口芯片能实现多种接口功能。接口芯片中的各硬件单元不是固定接死而是可以通过编程来控制。编程控制是指通过计算机指令选择通用接口中的不同通道和不同功能。8255A是一个通用的可编程的并行接口芯片,它有三个并行 I/O 口,又可通过编程设置多种工作方式,价格低廉,使用方便,在中小系统中有着广泛的应用。
4
1、CPU启动打印机设备工作。
2、当打印机准备好一个字符输出时,把外设置为就绪状态。
3、I/O口在设备就绪时向CPU发出中断请求,需求服务。
4、CPU接到中断请求信号,暂停当前工作,响应中断,输入中断服务程序,服务程序实现发送下一个字符到I/O口并选通打印机。
5、CPU从中断服务 。
6、重复2-5,直到所有的字符打印完关闭打印机
PC6置位:00001101即 0DH
允许8255A的A口输出中断,8255A的A端口作为数据通道,可工作在上述3中方式,端口B只可工作于两种方式,端口C 只可工作于方式0。端口C常常分为高四位和低四位两部分,分别用来传送数据或控制信息。用户可以通过编辑来分别定义每一个端口的工作方式,使用的控制字有工作方式控制字和置位控制字。