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

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芯片的控制口被选中。

3.8255芯片的读信号、写信号、复位信号,分别于CPU的IOR、IOW、RESET直接相

连,当CPU执行IN指令时,8255的读信号有效,CPU从8255芯片读取信息,当CPU 执行OUT指令时,8255的写信号有效,CPU输出信息到8255芯片,完成一定的功能。

而当CPU发出复位的信号时,8255也会进行复位操作。

4.8255芯片中的片选信号与3—8译码器的Y1相连,而Y1的寻址范围是288H—28FH,

而8255芯片中的端口A的地址是288H,端口B的地址是289H,端口C的地址是28AH,控制端口的地址是28BH,因此4的端口都在在3—8译码器的Y1的寻址范围之内。5.8255芯片的PC6与脉冲信号是连接在一起,8255芯片的A端口与二极管L7—L0直接

相连。当脉冲信号到来,PC6会被置1,允许中断,CPU会将数据通过8255芯片的A 口输出到二极管L7中,点亮相应的灯。

。。。。。。等等详细论证,如我课堂所讲

五、程序设计思想、流程图、源程序及注释

程序设计思想:在老师给出的程序基础上,原本程序是每按下一次脉冲就加一从而点亮一盏灯,而改动成为通过连续按下脉冲灯能够从左到右亮起来只需在AL寄存器进行循环左移即可达到目的!

流程图:

源程序及注释:

io8255a equ 288h ;端口A地址

io8255b equ 28bh ;控制口地址

io8255c equ 28ah ;端口C地址

code segment

assume cs:code

start:

mov dx, io8255b

mov al, 0a0h

out dx, al ;输出工作字,端口A方式1输出mov al, 0dh

out dx, al ;使PC6 =1,允许中断

mov al,0

mov dx,io8255a

out dx,al ;将A口清0

mov bl,1h

trsmt: mov dx,io8255c

in al,dx

and al,08h ;查询INTRA=1?(STATE)

jz trsmt ;等于0就一直等待

mov al,bl

Rol al,1 ;左循环移位

mov bl,al

mov dx,io8255a

out dx,al ;将al的数据输出到A口

jmp trsmt

code ends

end start

六、结果分析(截图及分析,至少三张截图,尽量在状态变化处截图,分析状态的变化)未输入脉冲时AL寄存器内的数据为1 二进制即为00000001

输入一次脉冲,向左移一位,AL寄存器中变为数据变为2 即为00000010

再一次输入脉冲,再次向左循环移位一位,AL寄存器中变为数据变为4,即00000100

当有脉冲打入ZF为0时执行移位操作,木有脉冲ZF为1时执行等待操作

七、实验及课程体会和建议

许振杰:

本次实验以TPC——USB微机接口实验系统为基础进行操作,所以实验过程比较

简单,但是对于模块不是很熟悉和对实验操作不熟练,所以时间用得比较长。

通过实验,更明白各模块的功能、熟悉了实验操作技巧和对知识的更进一步的

理解。听老师说现在是学习接口的黄金时期,是接口课登堂入室的开门砖,我一

定要把握好这段时间,争取把这个课程掌握!另外因为本人大一大二计算机原理

及汇编学得不踏实,所以涉及到这方面的知识还望老师能详细延伸下就更好了。

杨溢霖:

这门课其实于我来说就是大二的汇编课的进阶,无奈自己感觉大二学习的东西都要还给老师了。后来在接口课老师的教导下“捉住一个点去深入研究去读懂程序,培养感情慢慢学习”,我一个个地耐心地去查,去和同学讨论,终于算是开始慢慢捉摸到那个感觉了。可是还是很不多不懂得地方需要实验伙伴的帮助。希望以后继续努力,耐心地学习这门课吧!

八、试验所以设备及型号列表(计算机、试验箱、示波器、信号源等)

8255芯片试验箱计算机

8255练习题及答案

8255练习题及答案 一、填空题 1、8255A端口C按位置位复位控制字的_________位用来指定要置位或复位的端口C1的具体位置。 答案:D3、D2和D1 2、8255A端口C按位置位复位控制字中的________位决定对端口C的某一位置位或复位。答案:D0 3、8255A端口A工作在方式2时,使用端口C的________作为与CPU和外部设备的联络信号。 答案:PC7~PC3 4、8255A的每个端口的数据寄存器的长度为____位。 答案:8 5、Intel 8255A是一个________________________接口芯片。 答案:可编程的通用并行输入输出 6、了般I/O接口的编址方式可分为________________两种方式。 答案:I/O接口单独编,与存储器统一编址 7、8255A的端口C按位置位复位控制字的_________位用来指定置位或复位的端口C的具体位置. 答案:D3,D2和D1 8、8255A的端口C按位置位复位控制字中的________位决定对端口C的某一位置位或复位。答案:D0 9、8255A的端口A工作在方式2时,使用端口C的_________作为与CPU和外部设备的联络信号。 答案:PC7~PC3 10、8255A与CPU连接时,地址线一般与CPU的地址总线的_________连接。 答案:A0和Al 11、8255A控制字的最高位D7=_________时,表示该控制字为方式控制字。 答案:1 12、8255A的端口A的工作方式是由方式控制字的____位决定。 答案:D6和D5 13、8255A的端口B的工作方式由方式控制字的________位决定。 答案:D2 14、8255A的端口C的按位置位复位功能是由控制字中的D7=______来决定的。 答案:0 15、8255A内部具有_____个输入输出接口。 答案:3 16、8255A内部具有_______个输入输出端口。 答案:3 17、8255A的三个端口中只有端口____没有输入锁存功能。 答案:C 18、Intel8255A是一个_________________接口芯片。 答案:可编程的通用并行输入输出 19、8255A与CPU连接时,地址线一般与CPU的地址总线的__________连接。

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

可编程并行接口芯片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 ;POR为端口地址 MOV AL,10010000B OUT DX,AL 9.3某8255A的端口地址范围为03F8H?03FBH A组和B组均工作在方式0, A 口作为数据输出端口, C 口低4位作为状态信号输入口,其它端口未用。试画出该片8255A与系统的连接图,并编写初始化程序。 【解答】 连接图如下: 图9-1 8255A 与系统的连接图 程序如下: MOV AL,81H MOV DX,03FBH OUT DX,AL 9.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,10011010B MOV DX PORT ;PORT为端口地址 OUT DX,AL MOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0禁止中断 OUT DX,AL 若端口A、B为数据输出口;C口的高4位为控制信号输出口,低4位为状态信号输入口,程序段如下: MOV AL,10000000B MOV DX PORT ;PORT为端口地址 OUT DX,AL MOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0禁止中断 OUT DX,AL

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芯片的控制口被选中。 3.8255芯片的读信号、写信号、复位信号,分别于CPU的IOR、IOW、RESET直接相 连,当CPU执行IN指令时,8255的读信号有效,CPU从8255芯片读取信息,当CPU 执行OUT指令时,8255的写信号有效,CPU输出信息到8255芯片,完成一定的功能。 而当CPU发出复位的信号时,8255也会进行复位操作。 4.8255芯片中的片选信号与3—8译码器的Y1相连,而Y1的寻址范围是288H—28FH, 而8255芯片中的端口A的地址是288H,端口B的地址是289H,端口C的地址是28AH,控制端口的地址是28BH,因此4的端口都在在3—8译码器的Y1的寻址范围之内。5.8255芯片的PC6与脉冲信号是连接在一起,8255芯片的A端口与二极管L7—L0直接 相连。当脉冲信号到来,PC6会被置1,允许中断,CPU会将数据通过8255芯片的A 口输出到二极管L7中,点亮相应的灯。 。。。。。。等等详细论证,如我课堂所讲

8255并口实验详解

xxxx大学计算机学院实验报告

一、实验内容与要求 1.1 实验内容 (1)8255方式0实验 从8255端口C输入数据,再从端口A输出 (2)8255方式1输出实验 编程实现每按一次单脉冲按钮产生一个正脉冲,使8255产生一次中断服务:依次输出01H,02H,04H,08H,10H,20H,40H,80H使L0~L7依次发光,中断8次结束。 (3)8255方式1输入实验 编程实现:每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一次中断服务:读取逻辑电平开关预置的ASCII码,在屏幕上显示其对应的字符,中断8次结束。 1.2 实验要求 (1)8255方式0实验 实验预期效果:拨动逻辑开关,启动程序,开关打开的对应灯可以亮起。改变开关的状态,灯的亮暗也随之改变。 (2)8255方式1输出实验 实验预期效果:按一次单脉冲按钮,L0亮起;以后每按一次,后面的灯依次会亮起。中断8次结束。 (3)8255方式1输入实验 实验预期效果:每按一次单脉冲按钮读取逻辑电平开关预置的ASCII码,在屏幕上显示其对应的字符,中断8次结束。 二、实验原理与硬件连线 2.1 实验原理 CPU通过指令将控制字写入8255A的控制端口设置它的工作方式。8255A有两个控制字:方式选择控制字和端口C置位/复位控制字,这两个控制字均写入同一个控制端口地址(端口选择

先A1A0=11) 8255A有3种工作方式:方式0——基本输入/输出方式;方式1——选通输入/输出方式;方式2——双向传输方式。方向选择控制字用于设置各端口的工作方式。 方式0称为基本输入/输出方式。该方式下,端口A、端口B、端口C的高4位和端口C的低4位均可独立地设为输入或输出数据端口。在方式0时,8255A与CPU时间没有应答联络信号,可用于无条件传送或查询方式数据传送场合。采用查询方式传送时,可以将端口A、端口B 作为数据端口,用端口C存放外部设备状态信息,用于CPU查询。 方式1称为选通输入/输出方式。该方式下,端口A、端口B可作为数据传输口,而端口C 的一些引脚规定作为端口A、端口B的联络控制信号,有固定的搭配规定。在方式1时,CPU和8255A之间有应答联络信号,所以采用中断方式或程序查询方式传送数据。 当端口A作为方式1输入时,端口C的PC3、PC4、PC5作为端口A的联络控制信号。 当端口A作为方式1输出时,端口C的PC7、PC6、PC3作为端口A的联络控制信号。 状态字通过读端口C获得。需要强调,从端口C读出的状态字与端口C的外部引脚的状态无关。 2.2 硬件连线 (1)8255方式0实验1 连接实验电路,8255端口C接逻辑电平开关K0~K7,端口A接LED显示电路 L0~L7 U18 8255 K0 K1 K5 L0 L1 L2 L3 L4 L5 L6 L7图2-2-1 实验一接线

微机原理与接口技术实验五报告8255 并行接口实验

电子信息专业实验报告 课程微机原理与接口技术实验 实验题目8255并行接口实验 学生姓名lz评分 学号20171414xxxxxxx班级 同实验者 实验时间2019.11.9上午地点望江实验室基B520电子信息学院专业实验中心

一、实验目的 1、掌握8255A的工作原理 2、掌握8255A的编程方法 二、实验内容(含技术指标) 1、8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管相连。编辑程序,单步运行,调试程序; 2、K1~K8控制LED1~LED8 3、K1控制LED1、LED2;K2控制LED3、LED4 K3控制LED5、LED6;K4控制LED7、LED8 4、K置H,对应LED亮;K置L,对应LED灭 5、全速运行程序,观看实验结果。 三、实验仪器(仪器名称、型号,元器件名称、清单,软件名称、版本等) 清华同方微机;8086单片机原理实验系统;EL型微机试验箱 四、实验原理(基本原理,主要公式,参数计算,实现方法及框图,相关电路等) 1、开关量输入输出电路 开关量输入电路由8只开关组成,每只开关有两个位置H和L,一个位置代表高电平,一个位置代表低电平。对应的插孔是:K1~K8。开关量输出电路由8只LED组成,对应的插孔分别为LED1~LED8,当对应的插孔接低电平时LED点亮,其原理见图一。 2、8255并行接口电路 该电路由1片8255组成,8255的数据口、地址、读写线、复位控制线均已接好,片选输入端插孔为8255CS,A,B,C三端口的插孔分别为:PA0~PA7,PB0~PB7,PC0~PC7,电路原理见图二。 3、8255A工作基本输入输出方式

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输出下一个数据。

大连理工大学计算机原理第四次实验

大连理工大学本科实验报告 课程名称:计算机原理实验 学院(系):信息与通信工程学院专业:通信工程 班级:电通1402 学号:201483051 学生姓名:糜智华 2016年12月19日

实验(四)名称:3.1.28255实验(一)、3.3.3中断实验(一) 一、实验目的: (1)掌握8255方式0的工作原理及初始化编程方法,利用8255A实现输入、输出操作。 (2)学习、掌握386EX集成调试软件的调试过程中的“单步”、“断点”和“全速运行”的方法。 (3)了解386EX系统的CPU芯片的中断结构和编程原理。 (4)学习编写中断的初始化编程和对应的中断服务程序编程。 二、实验要求: (1)利用8255的PA口做输入,将8个开关(K7~K0)的电平信号读入CPU,CPU再通过PB口将其电平信号在8个LED(L7~L0)上显示。 (2)使用单脉冲,与386EX模块CPU内部IRQ5的端口(实验台总线开放区的MIR5)连接。设计一个计数器,每按三次单脉冲对计数器进行一次加一操作,并利用8255A的PA口,经L7~LED0显示器以二进制的形式输出。 三、编程算法与说明: 利用8255A与LED7~LED0连接做显示,单脉冲与试验台总线区的MIR5连接,选择8255A的片选地址为200H。 首先关中断,设定8255A工作于模式0,且PA为输出。 然后设置386EX主8259中断屏蔽字,开放IR5中断。 再设置中断向量表,AX指向中断程序入口地址,并计算中断向量表地址,向ISR地址装入向量单元,然后开中断,等待中断。 最后定义中断服务子程序,初始定义计数器计数变量count为0,每按两次单脉冲count加一。除count外,还需定义中间计数变量count1,每发出单脉冲一次,count1加一,当发出单脉冲的次数达到两次时,count1清零,同时count加1,结果通过8255A与LED以二进制形式显示。

可编程并行接口芯片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,10010000B OUT DX,AL 9.3 某8255A的端口地址范围为03F8H~03FBH,A组和B组均工作在方式0,A口作为数据输出端口,C 口低4位作为状态信号输入口,其它端口未用。试画出该片8255A与系统的连接图,并编写初始化程序。【解答】 连接图如下: 图9-1 8255A与系统的连接图 程序如下: MOV AL,81H MOV DX,03FBH OUT DX,AL 9.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,10011010B MOV DX,PORT ;PORT为端口地址 OUT DX,AL MOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断 OUT DX,AL 若端口A、B为数据输出口;C口的高4位为控制信号输出口,低4位为状态信号输入口,程序段如下:MOV AL,10000000B MOV DX,PORT ;PORT为端口地址 OUT DX,AL MOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断 OUT DX,AL (2)端口A为选通输出方式,方式1;端口B为基本输入方式,程序段如下: MOV AL,10100010B MOV DX,PORT ;PORT为端口地址

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

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

东南大学 《微机实验及课程设计》 实验报告 实验六 8255并行输入输出

姓名:学号: 专业:测控技术与仪器实验室: 516 同组人员:评定成绩: 一、实验目的 1)掌握8255方式0的工作原理及使用方法,利用直接输入输出进行控制显示; 2)掌握8段数码管的动态刷新显示控制; 二、(1)实验内容(必做) 6-1、8段数码管静态显示:编程从键盘输入一位十进制数字(0~9),在数码管上显示出来。 6-2、8段数码管动态显示:在两个数码管上同时显示不同的两位数字或字母,保持不变直至退出。(如56或7f) (2)实验内容(必做一题,选做一题) 6-3 静态显示:用逻辑电平开关预置某个数字(0~9)的ASCII码,将该数据用8255的C口读入,并用A口输出,并在数码管显示出来;如果预置的ASCII 码不是数字(0~9),数码管显示E字母。 6-4 动态显示:在两个数码管上滚动循环显示不同的0~f字符。(即开始时两个数码管显示01,12,23,34 ··f0,一直循环直至退出) 三、实验原理 (1)实验预备知识

图 八段式LED 数码管的符号和引脚 (2) 6-1流程图:

N Y 将对应段码输 结 6-1源代码: data segment ioport equ 0ec00h-0280h io8255a equ ioport+288h ;8255A口地址 io8255b equ ioport+28bh ;8255控制寄存器端口地址 led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh ;段码mesg1 db 0dh,0ah,'Input a num (0--9h):',0dh,0ah,'$';提示data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax mov dx,io8255b ;使8255的A口为输出方式 mov ax,80h

微机原理实验讲义2015

微机原理实验讲义 实验一8255A并行口实验(一) 一、实验目的 ⒈掌握8255A和微机接口方法。 ⒉掌握8255A的工作方式和编程原理。 二、实验内容 用8255PA口控制PB口。 三、实验接线图 图6-3 四、编程指南 ⒈8255A芯片简介: 8255A可编程外围接口芯片是INTEL公司生产的通用并行接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作: 方式0:基本输入/ 输出方式 方式l:选通输入/ 输出方式 方式2:双向选通工作方式 ⒉使8255A端口A工作在方式0并作为输入口,读取Kl-K8个开关量,PB 口工作在方式0作为输出口。

五、实验程序框图 六、实验步骤 ⒈在系统显示监控提示符“P.”时,按SCAL键,传送EPROM中的实验程序到内存中。(注:必须先传送EPROM后,再往下操作) ⒉ 8255A芯片A口的PA0-PA7依次和开关量输入Kl-K8相连。 ⒊ 8255A芯片B口的PB0-PB7依次接Ll-L8。 ⒋运行实验程序。 在系统显示监控提示符“P.”时,输入11B0,按EXEC键,系统显示执行提示符“┌”拨动K1-K8, LI-L8会跟着亮灭。 七、实验程序清单 CODE SEGMENT ;H8255-1.ASM ASSUME CS:CODE IOCONPT EQU 0FF2BH ;定义8255控制口 IOBPT EQU 0FF29H ;定义8255 PB口 IOAPT EQU 0FF28H ;定义8255 PA口 ORG 11B0H START: MOV AL,90H ;定义PA输入,PB输出 MOV DX,IOCONPT ;控制口 OUT DX,AL ;写命令字 NOP ;延时 NOP NOP IOLED1: MOV DX,IOAPT ;PA口 IN AL,DX ;读PA口 MOV DX,IOBPT ;PB口 OUT DX,AL ;写PB口 MOV CX,0FFFFH ;延时 DELAY: LOOP DELAY JMP IOLED1 ;循环

8086软硬件实验报告(微机原理与接口技术上机实验)

实验一实验环境熟悉与简单程序设计 实验目的 (1)掌握DEBUG调试程序的使用方法。 (2)掌握简单程序的设计方法。 实验内容 编程将BH中的数分成高半字节和低半字节两部分,把其中的高半字节放到DH中的低4位(高4位补零),把其中的低半字节放到DL中的低4位(高4位补零)。如: BH=10110010B 则运行程序后 DH=00001011B DL=00000010B 实验准备 (1)熟练掌握所学过的指令。 (2)根据实验内容,要求预先编好程序。 实验步骤 (1)利用DEBUG程序输入、调试程序。 (2)按下表要求不断地修改BH的内容,然后记录下DX的内容。 实验报告 (1)给出程序清单。 (2)详细说明程序调试过程。

程序: CODE SEGMENT START : MOV BH,00111111B MOV AL,BH MOV CL,4 SHR AL,CL MOV DH,AL MOV AL,BH AND AL,00001111B MOV DL,AL MOV CL,0 CODE ENDS END START

实验二简单程序设计 实验目的 (3)掌握DEBUG调试程序的使用方法。 (4)掌握简单程序的设计方法。 实验内容 试编写一个汇编语言程序,要求实现功能:在屏幕上显示:Hello world My name is Li Jianguo 参考程序如下:(有错) data segment out1 db 'Hello world' ax db 'My name is Li Jianguo' data ens code segment assume cs:code;ds:data lea dx,out1 mov ah,2 int 21h mov dl,0ah mov ah,2

8255方式1

8255A作中断方式工作的字符打印机的接口,如下图所示: 原理图 打印机接口需要一个数据选通信号STB,故由CPU控制PC0来产生选通脉冲STB。OBF在此没有用,将它悬空就行了,ACK端连接打印机端。 PC3连到中断控制器8255A的中断请求信号输入端IR3。对应于中断类型号0BH,此中断对应的中断,向量放在00段2CH、2DH、2EH、2FH这4个单元中,8255A在系统程序中已完成初始化。 设8255A的端口地址为: A端口:0C0H B端口:0C2H C端口: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,0A0H OUT 0C6H,AL ;设置8255A的控制字 MOV AL,01H ;使选通无效 OUT 0C6H,AL XOR AX,AX MOV DS,AX MOV AX,OFFSET ROUTINTR MOV WORD PTR [002CH],AX MOV AX,SEG ROUTINTR MOV WORD PTR [002EH],AX ;送中断向量 MOV AL,0DH OUT 0C6H,AL ;使8255A A口输出允许中断

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

可编程并行接口芯片8255A有哪几种工作方式?每种工作方式有何特点? 【解答】 方式0:没有固定得用于应答式传送得联络信号线,CPU可以采用无条件传送方式与8255A交换数据。方式1:有专用得中断请求与联络信号线,因此,方式1通常用于查询传送或中断传送方式。 方式2:PA口为双向选通输入/输出或叫双向应答式输入/输出。 9、28255A得方式选择控制字与C口按位控制字得端口地址就是否一样?8255A怎样区分这两种控制字?写出端口A作为基本输入,端口B作为基本输出得初始化程序。 【解答】8255A得方式选择控制字与C口按位控制字得端口地址就是一样得,通过控制字得最高位D7进行区分:D7=1时,为方式选择控制字;D7=0时,为C口按位控制字。 初始化程序段如下: MOV DX,PORT ;PORT为端口地址 MOV AL,10010000B OUT DX,AL 9、3某8255A得端口地址范围为03F8H~03FBH,A组与B组均工作在方式0,A口作为数据输出端口,C 口低4位作为状态信号输入口,其它端口未用.试画出该片8255A与系统得连接图,并编写初始化程序。【解答】 连接图如下: 图9-1 8255A与系统得连接图 程序如下: MOV AL,81H MOV DX,03FBH OUT DX,AL 9、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,10011010B MOVDX,PORT ;PORT为端口地址 OUT DX,AL MOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断 OUT DX,AL 若端口A、B为数据输出口;C口得高4位为控制信号输出口,低4位为状态信号输入口,程序段如下: MOVAL,10000000B MOV DX,PORT ;PORT为端口地址 OUT DX,AL MOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断 OUT DX,AL (2)端口A为选通输出方式,方式1;端口B为基本输入方式,程序段如下: MOVAL,10100010B MOV DX,PORT ;PORT为端口地址

实验二 8255A并行接口实验

实验二 8255A并行接口实验(一) 一实验目的 1、掌握通过8255A并行口传输数据控制LED发光二极管的亮灭;进一 步熟悉软件编程环境。 二实验设备 1、微机系统一套; 2、TPC-3型微机接口实验系统一台; 3、导线若干。 三实验内容 1、基础部分:用8255A的A端口控制8个LED发光二极管的亮和灭(端口 输出为1则亮,输出为0则灭)。其中L0―L2为东西方向,L5―L7为南北 方向、L3-L4不用,PA口与相应的发光二极管驱动信号输入端相连,输入端 为1时发光二极管亮。接线如图4-5所示。 图4-5 编制程序,通过8255A控制发光二极管,以模拟交通灯的管理。 2.提高部分:利用开关K0,K1的控制,以模拟几种交通灯的管理,具体要求 为: K0K1灯控制 00正常运行 01南北路口绿灯亮、东西路口红灯亮 10东西路口绿灯亮、南北路口红灯亮 3.如果模拟车流量大小来来决定红绿灯交通时间,请问你有什么解决办法。如果 能解决请加以解释并编程调试。

四、编程提示: 1.要完成本实验,首先必须了解交通灯的亮灭规律。设有一个十字路口,南北、东西方向初始态为四个路口的红灯全亮。之后,南北路口的绿灯亮,东西 路口的红灯亮,南北路口方向通车。延迟一段时间后,南北路口的绿灯熄灭, 而南北路口的黄灯开始闪烁。闪烁8次后,南北路口的红灯亮,同时东西路口 的绿灯亮,东西路口方向开始通车。延迟一段时间后,东西路口的绿灯熄灭, 而黄灯开始闪烁。闪烁苦干次后,再切换到南北路口方向。之后,重复上述过 程。 2.程序中应设定好8255A的工作模式,使三个端口均工作于方式0,并处于输出态 3.8255A的A端口地址为:288H B端口地址为:289H C端口地址为:28AH 控制口地址为:28BH 五、实验要求: 1.做好实验预习和准备工作,并写出预习报告(要求写出实验的流程图及程序),熟练掌握8255A编程原理及编程方法。 2.实验操作的最低要求是要做出实验内容的基础部分,然后根据实际操作能力争取做出实验内容的提高部分及回答实验内容的第三部分问题。 3.写出实验报告,内容为: 1)实验目的; 2)实验设备; 3)实验中遇到的问题及解决问题的分析思路与办法,问题定位及问题的性质; 4)对本实验的建议及有何创新。 ;这是自动生成的代码模板 STACKS SEGMENT STACK ;堆栈段 DW 128 DUP(?) ;注意这里只有128个字节 STACKS ENDS DATAS SEGMENT ;数据段 ;请在这里定义您的数据 DATAS ENDS CODES SEGMENT ;代码段 ASSUME CS:CODES,DS:DATAS START: MOV AX,DATAS ;初始化 MOV DS,AX

微机原理实验8255并行口实验PA输入、PB输出

8255A并行口实验PA输入、PB输出利用LED等显示 程序 LCD EQU 07FE0H LCDWI EQU LCD+0 ;写命令 LCDWD EQU LCD+1 ;写数据 LCDRS EQU LCD+2 ;读状态 LCDRD EQU LCD+3 ;读数据 PA EQU 0FFD8H PB EQU 0FFD9H PC EQU 0FFDAH PCTL EQU 0FFDBH code segment assume cs:code lin db 0 col db 0 num db 0 dis_num db 0 temp0 db 0 temp1 db 0 count db 0 org 1000h start: MOV DX,PCTL MOV AL,90H OUT DX,AL call init_lcd mov al,3 call delay2 mov count,0 mov bx,offset tab0 mov lin,0 mov col,0 mov num,16 call dis_english GOON: MOV DX,PA IN AL,DX TEST AL,01H JE GOON1 TEST AL,02H JE GOON2

TEST AL,04H JZ GOON3 TEST AL,08H JE GOON4 TEST AL,10H JE GOON5 TEST AL,20H JE GOON6 TEST AL,40H JE GOON7 TEST AL,80H JZ GOON8 JMP GOON9 GOON1: JMP KEY1 GOON2: JMP KEY2 GOON3: JMP KEY3 GOON4: JMP KEY4 GOON5: JMP KEY5 GOON6: JMP KEY6 GOON7: JMP KEY7 GOON8: JMP KEY8 GOON9: mov bx,offset tab9 mov lin,1 mov col,0 mov num,16 call dis_english MOV DX,PB MOV AL,0FFH OUT DX,AL JMP GOON KEY1: MOV DX,PB MOV AL,0FEH OUT DX,AL mov bx,offset tab1 mov lin,1 mov col,0 mov num,16 call dis_english JMP GOON KEY2: MOV DX,PB MOV AL,0FDH OUT DX,AL

(完整版)接口考试试题第4章(8255)

一、选择题 2.8255A在方式1工作时,端口A和端口B作为数据输入输出使用,而端口C的各位分别作为端口A和端口B的控制信息和状态信息。其中作为端口A和端口B的中断请求信号的分别 是端口C的() A. PC4和PC2 B.PC5和PC1 C.PC6和PC7 D.PC3和PC0 D 3.8255A的端口A或端口B工作在方式1输入时,端口与外设的联络信号有()。 A. 选通输入STB# B. 中断请求信号INTR C. 中断允许信号INTE D. 输入缓冲器满信号IBF A 4.当8255A的端口A和端口B都工作在方式1输入时,端口C的PC7和PC6 ()。 A. 被禁止使用 B. 只能作为输入使用 C.只能作为输出使用 D. 可以设定为输入或输出使用 D 7.8255A的A 口工作在方式2时,B 口()。 A. 可工作在方式0 或方式1 B. 可工作在方式1 或方式2 C. 只能工作在方式1 D. 只能空着 A 8.8255A 用户可以用命令字设置() A. A 口和B 口均可工作在方式0或方式1或方式2 B. A 口工作在方式0, B 口工作在方式1 C. A 口工作在方式1, B 口工作在方式1或方式2 D. A 口工作在方式2, B 口只能工作在方式1 B 10. 当8255A工作在方式1时,端口C被分为两个部分,分别作为端口A和端口B的控制信息 和状态信息。这两个部分的划分是() A.端口C的高4位和低4位 B. 端口C的高5位和低3位 C.端口C的高3位和低5位 D. 端口C的高6位和低2两位 B 11. 8255A工作方式设置为方式1时,CPU与外设通信() A. 可以采用查询方式传送,或者采用中断方式传送 B. 只能采用中断方式传送 C. 可以进行双向方式传送 D. 只能采用无条件传送方式或查询方式传送 A 14.假定对8255A进行初始化时所访问的端口地址是0CBH并将其A端口设定为工作方式1输出,则A端口的地址是()。 A. 0C8H B. 0CAH C. 0CCH D. 0CEH 本题答案为A。 16. 当8255A工作于方式2时,要占用几条联络信号线()。 A . 2 B . 3

实验十并行接口芯片8255与输出控制

实验十并行接口芯片8255与输出控制 【实验目的】 1.掌握8255的基本功能和工作原理; 2.掌握8255工作于方式0及其初始化编程的方法以及输出的软件设计方法; 3.初步了解并行接口电路及其工作原理。 4.学会基本LED显示及扫描控制的方法。 【实验预习】 (建议用时:40min) 复习教材中的相关内容,联系阅读讲义后附实验资料,回答以下问题: 1.数据从8255的PortC往数据总线上读出时,8255的控制信号CS= ;RD= ;WR= ;A1= ;A0= 。 2.据实验箱中8255各端口地址,编写PA和PB工作于方式0,且A口输入,B口输出情况下的初始化程序: MOV AL, B MOV DX,H OUT DX,AL 3.根据下图说明,PC口输出“0”,发光二极管是亮/灭?PC口输出“1”,发光二极管是亮/灭? 图10-1 实验电原理示意图 【实验原理】 在32位机系统下,数据总线32位,占4个字节,其寻址以4个字节地址为单位,所以在输入输出寻址时,其地址间隔为4的倍数。本实验系统所提供的I/O地址范围为9800H~98FFH,分别由IOY0~IOY3决定。

实验内容2的电原理图如下所示: 图10-2 实验2参考原理图 【实验内容】 (实验1和2建议用时:25min ) 1.用导线连接一个发光二极管(LED )和电源+5V,则观察到LED______(亮/暗);若接地,则LED______(亮/暗);说明LED 为共_____(阴/阳)。 2.根据实验电原理图10-2 及以下程序片断,观察描述LED 灯的输出结果 。并对程序片断加以注释。 MOV AL ,10000000B MOV DX ,980CH OUT DX ,AL MOV AL ,0FFH MOV DX ,9808H OUT DX ,AL MOV AL ,00000000B MOV BL ,8 MOV DX ,980CH JP1: OUT DX ,AL ADD AL ,10B MOV CX ,0 PUSH BX JP2: MOV BX,10000 JP3: DEC BX JNZ JP3 LOOP JP2 POP BX DEC BL CMP BL ,0 JNZ JP1

8255并行口实验实验报告

8255并行口实验实验报告 作者: 一、实验目的 掌握8255A的编程原理。 二、实验设备 CPU挂箱、8086CPU模块。 三、实验内容 8255A的A口作为输入口,与逻辑电平开关相连。8255A的B口作为输出口,与发光二极管相连。编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。 四、实验原理介绍 本实验用到两部分电路:开关量输入输出电路和8255可编程并口电路。 五、实验步骤 1、实验接线 CS0?CS8255; PA0~PA7?平推开关的输出K1~K8; PB0~PB7?发光二极管的输入LED1~LED8。 2、编程并全速或单步运行。 3、全速运行时拨动开关,观察发光二极管的变化。当开关某位置于L 时,对应的发光二极管点亮,置于H时熄灭。 六、实验提示 实验也是如此。实验中,8255A工作于基本8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本输入输出方式(方式0)。 七、实验结果 程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。例如:K2置于L位置,则对应的LED2应该点亮。 八、程序框图(实验程序名:t8255.asm)

开始 设置8255工作方式 读A口 输出至B口 结束 九、程序源代码清单: assume cs:code code segment public org 100h start: mov dx,04a6h ;控制寄存器地址 mov ax,90h ;设 置为A口输入,B口输出 out dx,ax mov al,0feh start1:mov dx,04a2h 芯片的 入口地址 out dx,al mov bl,al mov dx ,04a0h in al,dx test ax,01h jz strat2 mov al ,bl rol al,1 流水灯循环左移 mov bl,al mov cx,3000h 设置cx为灯闪烁时间对应的循环次数 add: loop add jmp start1 无条件跳转至start1 strat2:mov al,bl mov dx,04a2h out dx,al ror al,1 流水灯循环左移 mov bl, al mov cx,3000h add1: loop add jmp start 无条件跳转至start code ends end start 十、实验总结 通过该实验,掌握了8255A的编程原理,学会了用汇编语言来编写程序控制8255A进行流水灯的操作实验。

相关文档
最新文档