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

合集下载

实验三、8255A并行接口实验

实验三、8255A并行接口实验

实验结论
通过本次实验,我们验证了8255A并行接口芯片的基本功能和工作原理。
实验结果证明了8255A芯片可以实现并行数据传输,并且可以通过设置不 同的端口模式来实现不同的输入输出功能。
在实际应用中,8255A芯片可以作为并行数据传输的重要接口之一,广泛 应用于各种数字电路和微机控制系统中。
05
实验总结与展望
等。
学习如何设置8255a并行接口芯 片的控制字,掌握其工作模式和
特点。
理解8255a并行接口芯片在计算 机中的重要性和作用,以及与其
他接口芯片的区别和联系。
掌握8255a并行接口芯片的工作原理
了解8255a并行接口芯片的基本 结构和工作原理,包括输入/输 出端口、控制寄存器和数据总线
等。
学习如何设置8255a并行接口芯 片的控制字,掌握其工作模式和
缺乏实验指导
实验过程中,我们遇到了一些难 以解决的问题,如果能有更多的 实验指导资料或教师指导,将有 助于我们更好地有限,我们未能充 分探索8255a并行接口的更多功 能和应用场景,建议增加实验时 间,以便我们有更多的机会深入 了解该芯片。
实验不足与改进建议
实验难度不够
学习如何使用8255a并行接口芯片进行硬件控制
学习如何使用8255a并行接口 芯片进行输入/输出操作,包括 读取和写入数据。
掌握如何通过8255a并行接口 芯片控制外部硬件设备,如 LED灯、继电器等。
了解如何将8255a并行接口芯 片与其他芯片连接,实现硬件 的扩展和控制。
了解并行接口在计算机中的作用和重要性
实验三
将端口B和端口C设置为输入,端口A设置为输出。 当在端口B和端口C上施加不同的电平时,端口A 的输出与端口C的输入相同。

可编程并行接口实验(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依次发光。

8255试验报告(方式1查询输出)

8255试验报告(方式1查询输出)

《微型计算机接口技术》实验报告实验名称:可编程并行接口芯片8255应用(8255方式1、查询输出)姓名学号:班级:日期:广东外语外贸大学信息科学技术学院一、实验目的掌握8255方式1查询输入、输出时的使用及编程二、实验内容1、按照图示连接硬件(注意图中大多数线试验箱已经连好,只连接需要用户连接的部分,预习,参考PPT)2、编程:每按一次单脉冲按钮,ACK信号有效,8255内部输出准备好状态有效(INTR),查询输出一次数据,点亮、熄灭相应的发光二极管。

三、实验原理(8255方式1输出:结合结构图、时序图、状态字描述)8255是一片可编程并行I/O接口芯片,每片8255有两个8位的并行口(PA,PB)和两个4位并行口(PC的高、低四位),其中PA口可工作于方式0,1,2。

PB口工作于方式0,1。

PC口仅能工作于方式0。

在方式1中,将8255的三个端口分为了A、B两组,PA、PB两个口仍作为数据输入/输出口,而PC口则作为两部分,分别作为PA、PB口的联络信号。

8255A 方式1 A口输出过程由CPU响应中断开始,在中断中用OUT指令通过8255A 向外设输出数据,发出WR 信号;WR上升沿清除INTRA 中断请求信号,且使OBFA =“L”(有效),通知外设取数;当外设接受数据后,发出ACKA 应答信号,一方面使OBFA=“H”(无效),另一方面在ACKA信号的上升沿使INTRA=“H”(有效),以此向CPU发出新的中断请求,开始下一轮输出。

四、硬件设计及方案论证(完整图的信号线连接及作用:数据、地址、控制及外设线)硬件设计如图,其中:1.8255芯片中的数据总线D0—D7是和CPU的数据线直接相连的,从而CPU可以向8255发送命令、数据和8255芯片也可以向CPU发送状态、数据等等。

2.8255芯片中的A0和A1也是与CPU的地址总线直接相连,并且在控制字在以下几种情况有不同的设置,若A1A0= 00时,8255芯片中的PA口被选中,若A1A0=01时,8255芯片中的PB口被选中,若A1A0=10时,8255芯片中的PC口被选中,若A1A0=11时,则8255芯片的控制口被选中。

可编程并行接口芯片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 个位,可以独立配置为输入或输出模式。
控制信号生成

第七章 可编程并行接口芯片8255A

第七章 可编程并行接口芯片8255A

CPU和外设之间的数据传送方式有哪几种?实际选择某种传输 方式时,主要依据是什么? CPU与外设之间的数据传输有以下三种方式:程序方式、中断 方式、DMA方式。 其中程序方式又可分为无条件传送方式和查询方式两种方式。 在CPU外设传送数据不太频繁的情况下一般采用无条件传送 方式。 在CPU用于传输数据的时间较长且外设数目不多时采用查询 方式。 在实时系统以及多个外设的系统中,为了提高CPU的效率和 使系统具有实时性能,采用中断传送方式。 如I/O设备的数据传输效率较高,那么CPU和这样的外设进 行数据传输是,即使尽量压缩程序查询方式和中断方式中的 非数据传输时间,也仍然不能满足要求。这是因为在这两种 方式下,还存在另外一个影响速度的原因,即它们都是按字 节或字来进行传输的。为了解决这个问题,实现按数据块传 输,就需要改变传输方式,这就是直接存储器传输方式,即 DMA方式。
例题:若C口的PC7位要求置1,PC3位要求置0,且控制口地 址为00EEH,请写出该片8255初始化程序。 MOV AL, 00001111B MOV DX, 00EEH OUT DX, AL MOV AL, 00000110B OUT DX, AL ;对C口的PC7置位
;对C口的PC3复位
7-2 8255应用举例
第七章 可编程并行接口芯片8255A
• 7-1 8255简介
• 7-2 8255应用举例
7-1 8255简介
一、8255结构及引脚功能 二、8255工作方式 三、8255初始化
一、8255结构及引脚功能 1.结构引脚:由四部分组成。
(1)数据总线缓冲器(D0-D7):实现8255同CPU之间数 据交换,CPU通过执行IN,OUT指令实现发送接收数据, CPU向8255发出的控制字,状态字都由它传送。 (2)读写控制逻辑:接收CPU的A0,A1,RD,WR,CS, 将这些信号组合后得到对A组B组部件的控制命令。其中 A0,A1为片内寻址,决定了8255有四个端口地址,A2A19为片外寻址线,通过地址译码器连到CS端。 (3)数据端口A,B,C:为三个独立的输入/输出口(与 外设连接)。 (4)A组B组控制电路:这两组控制电路根据CPU发出的方 式选择字来控制8255的工作方式,一方面接收芯片内部 总线上的控制字,一方面接收来自读/写控制逻辑电路 的读/写命令,据此决定两组端口的工作方式和读/写操 作。

实验七 8255 并行IO扩展实验

实验七 8255 并行IO扩展实验

实验七8255 并行I/O扩展实验一、实验要求利用8255 可编程并行口芯片,实现输入、输出实验,实验中用8255PA 口作读取开关状态输入,8255PB 口作控制发光二极管输出。

二、实验目的1、了解8255 芯片结构及编程方法。

2、了解8255 输入、输出实验方法。

三、实验电路及连线1、Proteus 实验电路2、硬件验证实验硬件连接表四、实验说明1、8255A 芯片简介:8255A 可编程外围接口芯片是INTEL 公司生产的通用并行接口芯片,它具有A、B、C 三个并行接口,用+5V 单电源供电,能在以下三种方式下工作:方式0:基本输入/ 输出方式方式l:选通输入/ 输出方式方式2:双向选通工作方式2、使8255A 端口A 工作在方式0 并作为输入口,读取Kl-K8 个开关量,PB 口工作在方式0作为输出口。

五、实验程序流程图六、实验步骤1、Proteus 仿真a.在Proteus 中打开设计文档8255_STM.DSN;b.建立实验程序并编译,仿真;c.如不能正常工作,打开调试窗口进行调试。

参考程序:CODE SEGMENTASSUME CS:CODEIOCON EQU 8006HIOA EQU 8000HIOB EQU 8002HIOC EQU 8004H START:MOV AL,90HMOV DX,IOCONOUT DX,ALNOPSTART1:NOPNOPMOV AL,0MOV DX,IOAIN AL,DXNOPNOPMOV DX,IOBOUT DX,ALJMP START1 CODE ENDSEND START2、实验板验证a.通过USB 线连接实验箱b.按连接表连接电路c.运行PROTEUS 仿真,检查验证结果。

可编程并行接口芯片8255的应用实验

可编程并行接口芯片8255的应用实验

图一、产生500us方波图二、按键控制LED亮
图三、流水灯依次点亮4、实验程序流程框图和程序清单
程序一、
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP ZHP
ORG 0100H
MAIN: MOV DPTR, #03H
MOV A, #95H
MOVX @DPTR, A
MOV TMOD, #02H
SETB EA
SETB ET0
MOV TH0, #06H
图四、产生500us方波图五、按键控制LED亮
图六、流水灯依次点亮
6、实验总结
本次实验是使用8255扩展外部I/O口,在本次实验中,我认为最为重要的就是电路图的设计以及其地址的计算,在弄清楚该问题的情况下,本次实验就没有什么很大的问题了。

7、思考题
1、在8255PC口上外接8个发光二极管,利用8255PC口的置位/复位控制字控制其按某种规律变化。

程序三、
CJNE R1, #11H, ZHP。

实验六---8255并行输入输出

实验六---8255并行输入输出

实验六---8255并行输入输出一、实验目的1.了解并熟悉8255并行输入输出控制器的功能和工作原理;二、实验原理1.8255芯片介绍8255是一种常用的并行输入/输出接口芯片,可用于微处理机系统中的输入/输出控制输出,根据中文名可以看出,8255有三种工作方式即口A、口B和控制口。

8255所有的输入/输出都是双向的,它可以通过输入输出口的命令字来在不同的模式下工作。

在输出模式下,82555可以通过端口A、B控制外围设备的输出操作,在输入模式下,8255可以通过端口A、B实现对外围设备的输入操作。

控制口是用来控制8255写作模式或读作状态字,并对端口进行初始化操作。

8255在不同的模式下有不同的编程方法和操作方法,因此需要在实际应用中选择不同的工作模式。

8255有三个I/O端口A、B、C,每个端口都有8位。

这里解释一下控制端口的意义,地址为0B4H的控制端口是连续读或写8255内部状态寄存器的地址,而后面的一个读或写就表示读或写操作的类型,如果该端口被写入了“控制字”则8255按照控制字工作,否则会在该端口读出输入状态字。

在读或写操作的时候向控制端口写入的二进制数在图3-8中给出了。

表3-2:8255访问口定义地址口分类名称端口A0B0H输出Port A输入ControlCout端口Cin端口2.8255的编程方式方式0:即I/O挂接方式,这种方式下A、B、C三个端口为并行I/O口时,其与MCU的接线和编程方式与单片机内部I/O端口的连接和编程方式相同。

方式1:即输入输出口不一样。

在这种片内Ram中的地址空间0~7地址单元内写入相应的端口或方式的控制字后,该8255工作在相应的方式。

即:方式0:读出的是8位端口A的状态,写操作为将数据送到端口A;方式2:是把C口分配为两部分——高4位为输入,低4位为输出,它与方式1类似。

端口C的所有状态和很多控制功能都由C口寄存器存储。

方式2:“端口C字符型输入输出方式”,在这种方式下,端口C的8个位分成两部分,4个位作为输入的,4个位作为输出的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

可编程并行接口实验(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:DATA
DATA SEGMENT ;数据段定义
IOPORT EQU 5400H-280H
IOPORT_CENT EQU 5000H ;9054芯片的I/O起始地址
MASKZ EQU 0FBH ;8259A主片屏蔽码
MASKC EQU 0F7H ;8259A从片屏蔽码
INTNUM DW 0 ;保存ES的定义量
INTNUMSE DW 0 ;保存BX的定义量
DA TA ENDS
STACK1 SEGMENT STACK ‘STACK1’
DB 50 DUP(?)
STACK1 ENDS
CODE SEGMENT ;代码段定义
START:
MOV DX,IOPORT+28BH ;根据实验连线,此次实验控制口为540BH MOV AL,0B0H ; 设置8255A的控制关键字(设置成方式1,端口A输入) OUT DX,AL
CLI ;关中断
MOV DX,IOPORT_CENT+68H ;设置9054芯片使能寄存器
IN AX,DX
OR AX,0900H
OUT DX,AX
;得到原中断向量并保存
MOV AH,35H ;取中段向量
MOV AL,73H ;针对本台计算机查表得出中断类型号为73H
INT 21H
MOV INTNUMSE,BX ;保存BX
MOV AX, ES ;保存ES
MOV INTNUM, AX
;设置新中断向量
MOV AX,CS
MOV DS,AX
MOV DX,OFFSET INTPROC ;设置新的中断向量
MOV AL,073H
MOV AH,25H
INT 21H
;设置中断屏蔽寄存器
IN AL,21H ;8259A主片的中断屏蔽寄存器端口地址为21H
AND AL,MASKZ ;中断屏蔽寄存器中主片相应位置1,本实验中第三位置1 OUT 21H,AL
IN AL,0A1H ;8259A从片的中断屏蔽寄存器端口地址为0A1H
AND AL,MASKC
OUT 0A1H,AL ;中断屏蔽寄存器中从片相应位置1,本实验中第四位置1 STI ;开中断
MOV AL,00001001B ;设置PC4为1
MOV DX,IOPORT+28BH
OUT DX,AL
OUTER:
MOV AH,01H ;判断是否有任意键按下
INT 16H
JZ OUTER ;没有键按下程序重复
MOV AX, INTNUM ;恢复原中断向量
MOV DS,AX
MOV DX, INTNUMSE
MOV AL,073H
MOV AH,25H
INT 21H
;恢复中断屏蔽寄存器
IN AL,21H
OR AL,04H
OUT 21H,AL
IN AL,0A1H
OR AL,08H
OUT 0A1H,AL
MOV DX,IOPORT_CENT+68H ;关闭9054
IN AX,DX
OR AX,0F6FFH
OUT DX,AX
MOV AH,4CH ;有键按下,程序结束,返回DOS界面
INT 21H
;中断服务子程序
INTPROC:
PUSH AX ;寄存器入栈保护
PUSH BX
PUSH CX
PUSH DX
PUSH DS
STI ;开中断
MOV CX,0FFFFH
H: LOOP H
MOV DX,IOPORT+288H ;A口输入
IN AL,DX
MOV DL,AL ;输出开关所对应的字符
MOV AH,02H
INT 21H
MOV AL,20H ;发出EOI结束中断
OUT 20H,AL
OUT 0A0H,AL
CLI ;关中断
POP DS ;寄存器出栈
POP DX
POP CX
POP BX
POP AX
IRET ;中断返回
CODE ENDS
END START
结果描述
试验1:每按一次单脉冲,L0~L7依次发光。

试验2:每按一次单脉冲,读取开关表示的ASCII码,在屏幕上显示其对应的字符。

相关文档
最新文档