实验五 8255并行接口应用实验

合集下载

实验五 8255A 并行口实验

实验五  8255A 并行口实验

实验五8255A 并行口实验(一)一、实验目的⒈掌握8255A 和微机接口方法。

⒉掌握8255A 的工作方式和编程原理。

二、实验内容用8255PA 口控制PB 口。

三、实验程序原程序CODE SEGMENTASSUME CS:CODEIOCONPT EQU 0FF2BHIOBPT EQU 0FF29HIOAPT EQU 0FF28HORG 11B0HSTART: MOV AL,90HMOV DX,IOCONPTOUT DX,ALNOPNOPNOPIOLED1:MOV DX,IOAPTIN AL,DXMOV DX,IOBPTOUT DX,ALMOV CX,0FFFFHDELAY: LOOP DELAYJMP IOLED1CODE ENDSEND START逻辑或CODE SEGMENTASSUME CS:CODEIOCONPT EQU 0FF2BHIOBPT EQU 0FF29HIOAPT EQU 0FF28HORG 11B0HSTART: MOV AL,90HMOV DX,IOCONPTOUT DX,ALNOPNOPNOPIOLED1:MOV DX,IOAPTIN AL,DXand AL,00000011Bjz LP1JNZ lp2LP1:MOV DX,IOBPTMOV AL,0ffhOUT DX,ALMOV CX,0FFFFHDELAY: LOOP DELAYJMP IOLED1lp2:mov DX,IOBPTMOV AL,0FEHout DX,ALMOV CX,0FFFFHLOOP DELAYJMP IOLED1CODE ENDSEND START流水灯DA TA SEGMENTX DB 10 DUP (?)Y DB 10 DUP (?)SUM DB ?DA TA ENDSSTACK SEGMENTSTA DB 20 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TA,SS:STACK,ES:DA TA IOCONPT EQU 0FF2BHIOBPT EQU 0FF29HIOAPT EQU 0FF28HORG 11B0HSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXMOV AX,TOPMOV SP,AX; MOV SI,OFFSET X; MOV CL,01H; MOV [SUM],CLMOV AL,90HMOV DX,IOCONPTOUT DX,ALNOPNOPNOPIOLED1:MOV AL,11111110BMOV DL,ALLP1:MOV DX,IOBPTOUT DX,ALMOV CL,1ROL AL,CLMOV CX,000FFHDL Y:LOOP DL YMOV CX,0FFFFHDELAY: LOOP DELAYJMP LP1CODE ENDSEND START四、实验结果原程序,k1,到k8分别控制L1到L8,当开关置低,灯亮逻辑或,K1和K2同时置高,K1置高K2置低和K1置低K2置高时灯亮,同时置低灯灭。

8255并行接口实验

8255并行接口实验

8255并行接口实验4.5.1 实验目的1. 学习并掌握8255的工作方式及其应用。

2. 掌握8255典型应用电路的接法。

3. 掌握程序固化及脱机运行程序的方法。

4.5.2 实验设备PC 机一台,TD-PITE 实验装置或TD-PITC 实验装置一套。

4.5.3 实验内容1. 基本输入输出实验。

编写程序,使8255的A 口为输入,B 口为输出,完成拨动开关到数据灯的数据传输。

要求只要开关拨动,数据灯的显示就发生相应改变。

2. 流水灯显示实验。

编写程序,使8255的A 口和B 口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0正相反,由右向左,每次仅点亮一个灯,循环显示。

4.5.4 实验原理I/O I/O I/O I/O PA7-PA0PC7-PC4PC3-PC0PB7-PB0图4.31 8255内部结构及外部引脚图并行接口是以数据的字节为单位与I/O 设备或被控制对象之间传递信息。

CPU 和接口之间的数据传送总是并行的,即可以同时传递8位、16位或32位等。

8255可编程外围接口芯片是Intel 公司生产的通用并行I/O 接口芯片,它具有A 、B 、C 三个并行接口,用+5V 单电源供电,能在以下三种方式下工作:方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。

8255的内部结构及引脚如图4.31所示,8255工作方式控制字和C 口按位置位/复位控制字格式如图4.32所示。

位(a )工作方式控制字(b )C 口按位置位/复位控制字1图4.32 8255控制字格式8255实验单元电路图如图4.33所示:图4.33 8255实验单元电路图4.5.5 实验步骤1. 基本输入输出实验本实验使8255端口A 工作在方式0并作为输入口,端口B 工作在方式0并作为输出口。

用一组开关信号接入端口A ,端口B 输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。

实验5(8255并行接口键盘及显示实验)

实验5(8255并行接口键盘及显示实验)

8255接口键盘及显示综合设计实验(曹建文2009年10月10日)一、实验目的1、掌握8255的工作方式及应用编程。

2、自行设计、制作和连接基于8255并行接口的键盘及显示实验电路。

3、实现扫描式矩阵键盘的功能和作用。

二、实验设备PC机1台,TD-PIT实验台1台,实验元器件若干。

三、实验内容1、使用8255实现键盘按键和七段LED数码显示管显示功能。

2、根据实验要求自行设计实验线路图,制作和焊接实验电路板和实验元器件。

3、按照实验要求和实验电路图编写实验程序,使得按下不同的数字按键后数码管显示相应的数字值(4位数码管)。

4、按照实验要求设计和编写实验程序,实现普通计算器的加/减法功能。

四、实验原理1、8255结构及原理并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。

CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位或32位等。

8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。

8255的内部结构及引脚如图-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图-2所示。

图-1:8255内部结构及引脚图(a)工作方式控制字(b)c口按位置位/复位控制字图-2:8255控制字格式(1)8255的内部结构如图-1所示,8255的内部结构由以下4个部分组成:(1)输入/输出端口A、B、C 。

这三个端口均可看作是I/O端口,但它们的结构和功能也稍有不同。

A口和B口是一个独立的8位I/O口。

C口可以看作是一个独立的8位I/O口;也可以看作是两个独立的4位I/O口。

(2)A组和B组控制电路。

这是两组根据CPU命令控制8255工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255的工作方式,也可以根据编程命令来对C口的指定位进行置位/复位的操作。

微机实验 可编程并行接口8255

微机实验  可编程并行接口8255

微机原理实验报告实验题目:可编程并行接口8255一、实验目的1、掌握8255的基本输入输出和PC端口位控的工作方式及应用编程。

2、掌握8255的典型应用电路接法。

二、实验知识回顾8255控制字1、控制方式2、C端口置位复位控制字三、实验内容1、 8255流水灯显示,首先用逻辑电平开关预置一个数字,从A口读入,写入01H到C端口上,左移一次在进行输出,A口读入数据作为左移次数,这样循环下去,从而实现流水灯的显示。

2、用PC端口位控制法控制LED灯,依次点亮LED灯。

四、实验器材微机原理实验箱1个电脑(带TPC-USB软件)1台插线若干五、实现过程1、8255流水灯显示(1)流程图(2)程序源代码io8255a equ 2a0h ;8255A口地址io8255b equ 2a1h ;8255B口地址io8255c equ 2a2h ;8255C口地址io8255mode equ 2a3h ;控制寄存器地址stack1 segment stackdw 256 dup(?)stack1 endsdata segmentla db ? ;定义数据变量lb db ?data endscode segmentassume cs:code,ds:datastart:mov ax,data ;程序由start处开始mov ds,axmov dx,io8255mode ;定义8255的工作方式mov al,90h ;方式0A口输入C口输出out dx,al ;mov dx,io8255a ;A口的地址存入dxin al,dx ;从dx也就是A口读入数据mov la,al ;读入的数据暂存在la变量mov dx,io8255c ;C口的地址存入dxmov al,01h ;将寄存器最低位置零out dx,al ;置位后的值输入给dx,也就是C口mov lb,al ;置位后的值暂存于变量lbloop1:call delaymov al,la ;将A口数据写入CX用以计数mov ch,00hmov cl,laloop2:call delaymov al,lbrol al,1 ;在寄存器内进行位移操作mov lb,al ;将操作后的结果重新写入变量al,为后面调用做准备mov dx,io8255c ;dx代表C口的地址out dx,al ;将al中存储的值写入dx,即C口mov ah,1 ;选择dos的模式为从键盘读取数据int 16h ;进入中断jnz quit ;ZF为0则跳到quitdec cx ;计数器减一jnz loop2 ;若cx!=0,跳到loop2quit:mov ax,4c00h ;结束程序并退出int 21hdelay proc near ;延时子程序push cxpush axmov cx,01fhd1: mov ax,0ffffhd2: dec axjnz d2loop d1pop axpop cxretdelay endpcode endsend start2、位控设置C口输出点亮LED(1)流程图(2)程序源代码io8255a equ 2a0h ;8255A口地址io8255b equ 2a1h ;8255B口地址io8255c equ 2a2h ;8255C口地址io8255mode equ 2a3h ;控制寄存器地址stack1 segment stackdw 256 dup(?)stack1 endsdata segmentla db ? ;定义数据变量lb db ?data endscode segmentassume cs:code,ds:datastart:mov ax,data ;程序由start处开始mov ds,axmov dx,io8255mode ;定义8255的工作方式mov al,00001111b ;位控设置C口最高位为1out dx,almov cx,7 ;剩余未点亮灯数为7 loop1:call delaydec aldec alout dx,aldec cxjnz loop1delay proc near ;延时子程序push cxpush axmov cx,01fhd1: mov ax,0ffffhd2: dec axjnz d2loop d1pop axpop cxretdelay endpcode endsend start(3)实验结果图六、小结通过本次试验,我进一步了解了8255的可编程性,以及如何正确的通过程序控制8255,也更加熟悉了8255 C 端口的位控输出。

实验五 8255并行接口实验

实验五  8255并行接口实验

实验五 8255并行接口实验实验目的:1、学习并掌握8255的各种工作方式及其应用。

2、学习在系统接口实验单元上构造实验电路。

相关理论知识:一、8255可编程并行接口芯片介绍8255是Intel 公司生产的通用并行IO 接口芯片,它具有ABC 三个并行接口,能在以下三种方式下工作:方式0:基本输入/输出方式 方式1:选通输入/输出方式 方式2:双向选通工作方式8255工作方式控制字及C 口置位/复位控制字如下图所示:ABC 三60H~63H 。

8765432121222319208.50 8255A 工作方式控制字格式A 组控制B 口方式选择输出01010101X输入输出输入方式0方式1方式2B 组控制C 口(低4位)B 口方式选择输出010100输入输出输入方式0方式1C 口(高4位)D 7D 6D 5D 4D 3D 2D 1D 0A 组控制B 口方式选择输出010100101X 输入输出输入方式0方式1方式2B 组控制C 口(低4位)B 口方式选择输出010100输入输出输入方式0方式1C 口(高4位)实验内容及实验步骤:一、8255接口应用实验(1)按图所示实验线路编写程序,使8255端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。

用一组开关信号接入端口B,端口A输出线接至一组发光二极管上,然后通过对8255芯片编程来实现输入/输出功能。

STACK SEGMENT STACKDW 64 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART: MOV AL, 82HOUT 63H ,ALA1:IN AL,61HOUT 60H,ALJMP A1CODE ENDSEND START实验步骤:(1)按图接线,接通电源。

(2)输入程序并检查无误,经汇编、连接后装入系统。

(3)运行程序,拨动开关组,观察发光二极管与开关组状态的对应关系。

8255并口控制器应用实验

8255并口控制器应用实验

8255并口控制器应用实验一、实验目的1. 掌握8255 的工作方式及应用编程。

2. 掌握8255 典型应用电路的接法。

二、实验内容1. 基本输入输出实验。

编写程序,使8255 的A 口为输出,B 口为输入,完成拨动开关到数据灯的数据传输。

要求只要开关拨动,数据灯的显示就改变。

2.流水灯显示实验。

编写程序,使8255 的A 口和B 口均为输出,数据灯D7~D0 由左向右,每次仅亮一个灯,循环显示,D15~D8 与D7~D0 正相反,由右向左,每次仅点亮一个灯,循环显示。

四、实验原理与步骤实验步骤(1)基本输入输出实验实验说明:本实验使8255的端口A作为输出口工作在方式0,端口 B 作为输入口工作在方式0。

用一组开关信号接入端口B,端口A 输出线接至一组数据灯上,然后通过对8255 芯片编程来实现输入输出功能。

图3-2 8255基本输入输出实验参考接线图实验步骤如下:①实验接线图如图3-2所示,按图连接实验线路图。

②运行Tdpit 集成操作软件,根据实验内容,调用程序代码(T8255-1.ASM),填写程序代码中的空缺处,编译、链接。

③运行程序,改变拨动开关,同时观察LED 显示,验证程序功能。

实验代码如下:IOY0 EQU 9860H ;片选IOY0对应的端口始地址MY8255_A EQU 9860H ;8255的A口地址MY8255_B EQU 9861H ;8255的B口地址MY8255_C EQU 9862H ;8255的C口地址MY8255_MODE EQU 9863H ;8255的控制寄存器地址STACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSCODE SEGMENTASSUME CS:CODESTART: MOV DX,MY8255_MODE ;初始化8255工作方式MOV AL, 82H ;工作方式0,A口输出,B口输入OUT DX,ALLOOP1: MOV DX,MY8255_B ;读B口IN AL,DXMOV DX,MY8255_A ;写A口OUT DX,ALMOV AH,1 ;判断是否有按键按下INT 16HJZ LOOP1 ;无按键则跳回继续循环,有则退出QUIT: MOV AX,4C00H ;结束程序退出INT 21HCODE ENDSEND START(代码结束)(2)流水灯显示实验实验说明:使8255 的A 口和B 口均为输出,数据灯D7~D0 由左向右,每次仅亮一个灯,循环显示,D15~D8 与D7~D0 正相反,由右向左,每次仅点亮一个灯,循环显示。

实验五 可编程并行接口(8255A)

实验五  可编程并行接口(8255A)

实验五可编程并行接口(8255A)一.实验目的1.掌握8255A方式0的工作原理及使用方法二.实验内容1.按下面图4-1可编程并行口接口8255A电路连接线路,如下图所示:图4-1可编程并行口接口8255A2.编写程序,实现从PC口读入开关状态,然后在PA口输出开关状态。

编程可参考如下流程图:其中288H是8255A芯片的PA口地址。

三.编程提示1.PA口地址=(DC00H-280H)+288H=0DC08H,其余端口地址可依此类推。

下面是整个接口程序的参考源程序,请补充完整8255A并行口输出实验,8255A工作于方式0。

stack segment para stackX db 100 dup(?)stack endsdata segmentY db 100 dup(?)data endscode segment 'code'assume cs:code,ds:data,ss:stackstart: mov ax,datamov ds,ax____________ ;8255A初始化next: ___________ ;从PC口输入数据;从PA口输出数据__________以下语句是用于判断是否按下ESC键,如果按下则退出。

mov dl , 0ffHmov ah , 06Hint 21hjz next ;无键按下则继续从PC口读入数据mov ah , 4chint 21hcode endsend start2. 编译及运行将上述程序对应的工程建立在E:\wjyl\bxk目录下,编译、连接、构建后生成exe文件。

运行不能直接在WINXP系统下,必须在纯DOS系统下。

四.思考题1. 8255A的工作方式0的特点是什么?2.这个程序里有查询环节吗?如果有,作用是什么?。

8255并行接口应用实验

8255并行接口应用实验

实验四并行接口实验一、实验目的1.掌握通过8255A并行口进行数据传输的方法。

2.控制16位数据灯的相对循环显示。

二、实验设备PC机一台,TD—PIT/TD—PIT—B实验装置一套。

三、实验内容1、基本输入输出实验。

编写程序,使8255的A口为输出,B口为输入,完成拨动开关到数据灯的数据传输。

要求只要开关拨动,数据灯的显示就改变。

2、流水灯显示实验。

编写程序,使8255的A口和B口均为输出,实现16位数据灯的相对循环显示。

四、8255工作原理并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。

CPU和接口之间的数据传送总是并行的,即可以同时传递8位、16位、32位等。

8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/出方式、方式1--选通输入/出方式、方式2--双向选通工作方式。

8255的内部结构及引脚如图3-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图3-2所示。

图3-1 8255的内部结构及引脚图3-2 8255控制字格式五、实验步骤I、基本输入输出实验本实验使8255端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。

参考程序流程如图3-3所示。

图3-3 8255并行接口芯片基本输入/输出实验(1)参考程序流程图实验步骤编写程序,使8255并行接口芯片端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。

用一组开关信号接入端口B,端口A输出线接至一组数据灯上,实现输入输出功能。

具体实验步骤如下。

1)确认从PC机引出的两根扁平电缆已经连接在实验平台上。

2)打开实验箱电源,首先运行PCI_BIOS.EXE程序,查看I/O空间始地址。

3)参考图3-4所示连接实验线路。

4)利用查出的地址编写程序,然后编译链接。

5)运行程序,拨动开关,看数据灯显示是否正确图3-4 8255并行接口芯片基本输入/输出实验参考接线图==================================================================================== 文件名: A82551.ASM功能描述: B为输入,A口为输出,将读入的数据输出显示====================================================== SSTACK SEGMENT STACKDW 32 DUP(?)SSTACK ENDSCODE SEGMENTASSUME CS:CODE, SS:SSTACKSTART: MOV DX, 0646HMOV AL, 82HOUT DX, ALAA1: MOV DX, 0642HIN AL, DXCALL DELAYMOV DX, 0640HOUT DX, ALJMP AA1DELAY: PUSH CXMOV CX, 0F00HAA2: PUSH AXPOP AXLOOP AA2POP CXRETCODE ENDSEND START实验现象:当拔动B接口对应的开关时候,A接口对应的二极管亮。

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

实验五8255并行接口应用实验
一实验目的
1.1学习并掌握8255的各种工作方式及其应用。

1.2学习在系统接口实验单元上构造实验电路。

二实验设备
2.1 TDN86/88+教学实验系统。

2.2微型计算机(PC机)一台。

三实验内容
3.1系统中的8255芯片
3.1.1 8255可编程并行接口芯片介绍
8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口用+5V单电源供电,能在以下三种方式下工作:
方式0—基本输入/输出方式方式1—选通输入/输出方式
方式2—双向选通工作方式
8255的内部结构及引脚如图9-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图9-2所示。

(两个控制字为同一个端口地址,8355根据写入数据的最高位未识别当前为哪个控制字,该最高位为图9—-2中的特征位)。

图9-1 8255内部引脚及结构
图9-2 8255的控制字格式
3.1.2 系统中的8255芯片
8255的数据线片选信号线、地址线、读写控制线等部分分别与系统总线相连,其A、B、C三个端口以排针形式引出,供8255实验使用,其线路如图9-3所示,端口地址如表9-1所示。

图9-3 系统中的8255线路
表9-1 8255端口地址
信号线寄存器编址
A口60H
B口61H
C口62H
控制寄存器63H
3.1.3接口实验单元中的开关和
发光二极管电路
图9-4 拨动开关和发光二极管电路
3.2 8255接口应用实验
3.2.1 8255接口应用实验(1)
3.2.1.1 实验要求:
按图9-5所示接线,编写程序,使8255端口A工作方式0并作为输出口,端
口B工作方式1并作为输入口,则端口C的PC2成为选通信号输入端STB B,PC0成为中断请求信号输出端INTR B。

;当B口数据就绪后,通过发STB B信号来请求CPU读取端口B数据并送端口A输出显示。

图9-5 8255接口应用实验(1)接线图(KK1-初态为“1”)
3.2.1.2 参考程序
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: CLI ;关中断,IF=0
MOV AL,086H ;10000110A□方式0,输出,PC4-PC7输出
OUT 63H,AL ;B□方式1,输入,PC3-PC0输出
MOV AL,05H ;使B端口处于中断允许状态(对PC2置位,
OUT 63H,AL ;使B端口内部INTE B=1,允许中断)
PUSH DS
MOV AX,0000H ;
MOV DS,AX ;数据段清零,隐含DS和SI在一起寻地址
MOV AX,OFFSET IRQ7
ADD AX,2000H ;得到IRQ7的偏移地址
MOV SI,003CH ;P124,P35
MOV [SI],AX ;中断矢量的偏移地址,0000:003C←偏移地址
MOV AX,0000H
MOV SI,003EH
MOV [SI],AX ;中断矢量的段地址,0000:003E←段地址
POP DS
IN AL,21H ;读8259的中断屏蔽字OCW1,P123,P34
AND AL,7FH ;开8259的中断7
OUT 21H,AL Array
A1: STI ;开总中断
HLT ;睡觉。

图9
JMP A1 ;
IRQ7: IN AL,61H ;中断服务子程序,读B口
OUT 60H,AL ;写A口
MOV AL,20H ;OCW2中断结束(常规EOI),p34
OUT 20H,AL ;20H--8259命令寄存器地址,p123
IRET
CODE ENDS
END START
3.2.1.3调试提示:
(1) 按图9-5连接实验线路。

(2) 输入源程序并检查无误,经汇编、链接后装入系统。

(3) 运行实验程序,然后拨动开关组K0-K7,准备好后,按动开关KK1,观察发光二极管
组,应与开关组信号对应。

(注:LED高电平“1”信号时为灭,低电平“0”信号时为亮)。

相关文档
最新文档