微机原理实验报告(8255并口实验)

合集下载

微机原理8255实验报告

微机原理8255实验报告
三、 实验分析:外设(开关 k、LED)为简单外设 随时准备好,故可采用 无 条件传送方式,通过之前学习的 8255 知识,将程序编写完成。
四、 实验过程中遇到的问题:在第一次编写完成后,我们调试失败了,通 过检查,发现程序有一个指令编写错误,纠正后,程序仍然编译失败, 连续好几次都没有成功,后来通过向同学请教,发现我们在改正之前没 有进行复位,导致错误没有纠正,按照正确的过程改正后,终于调试成 功了,我们看到随着电脑屏幕上的程序一条条执行,LED 灯准确地将开 关的状态输出,实验终于成功了。
微机原理与接口技术实验报告
姓名
学号
专业年级
实验题目
8255 并行接口实验
实验目的 实验内容
通过实验了解 8255 的工作原理,并在实验中熟悉 8255 的初始化编程,巩固学
习的理论知识,将理论转化为实践。
实验题 1 编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。即当 开关 ki 置于 L 时,对应发光二极管 LEDi 点亮;置于 H 时熄灭
实验题 2 编写程序,使得当开关 k1 置于 L 时,LED1~LED2 皆亮; k1 置于 H 时, LED1~LED2 皆灭
实验分析
一、首先按照以下的实验连线将电路连接好: CS8255 CS0 PA0~PA1 开关 K1~K2 PB0~PB1 发光二极管 LED1~LED2
二、(打开实验箱电源)PC 机运行 8086 调试软件 TECH86---串口 COM3 或 COM4—PREST 键 编辑程序,单步运行,调试程序 调试通过后,全速运行程序,观看实验结果
start
实验二:
assume cs:code
code segment public
org

微机原理-可编程并行接口实验--利用8255A芯片设计接口电路并编程实现

微机原理-可编程并行接口实验--利用8255A芯片设计接口电路并编程实现

微机原理实验实验五可编程并行接口实验一、实验目的1. 理解可编程并行接口8255A芯片的结构和功能;2. 掌握8255A芯片初始化程序的设计方法;3. 掌握8255A芯片与CPU信号的连接方法以及并行接口设计和编程方法;4. 掌握七段数码管的静态和动态显示原理;5. 掌握利用七段数码管显示计算数机内部信息。

二、实验内容1. ※●利用8255A芯片设计接口电路并编程实现:A口输出数据,驱动四个LED,使其顺序显示‘0’~‘F’的二进制状态,每个状态保持1秒钟。

(1)电路框图(2)源程序(3)运行结果2. ※●设计接口电路并编程实现:两个七段数码管分别显示“HP”,字符保持3秒钟后两个数码管同时熄灭。

(1)电路框图(2)源程序(3)运行结果HP字符显示3秒后同时熄灭3. 通过对8255A芯片的实验,对比实验五、实验六,谈谈你对8255A的认识和体会以及输入输出接口调试的过程;8255A是可编程并行I/O接口芯片,通过对它进行编程,可实现无条件、有条件和中断方式的接口电路。

它适合于外部设备和微机之间进行近距离、大量和快速的信息交换,比如微机与并行接口打印机或者磁盘驱动器等。

输入输出接口调试过程:先搞清四个端口地址,然后根据所要实现的功能对控制端口写控制字,然后对其他端口进行数据交换,验证硬件电路的正确性。

4.简单叙述数码管接口电路设计的原则和调试方法;送入数码管的数据分为段码和位码,段码决定数码管显示什么样的字符,位码决定哪一位的数码管显示该字符。

调试时,先对连接段码的端口送入数据,然后对连接位码的端口送入数据,观察数码管的显示状态,改变位码端口数据,继续观察数码管的显示状态。

不能先送位码,再送段码,即不能先点亮再显示,因为这样可能会在段码未稳定之前显示错误的字符。

5. 叙述七段数码管动态显示延时时间长短对视觉有何影响?延时程序的作用是保持当前显示数码管足够时间,同时稳定显示效果,以形成视觉暂留。

人眼的视觉暂留时间大概在二十四分之一秒左右,所以一般电视电影至少是24帧以上,才会看起来是连续的动作,延时的时间设置小于40ms即可,延时太短会加重cpu的负担,延时太长,则看起来是不断闪烁的,不能连续显示。

微机实验 可编程并行接口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实验-微机原理与接口技术

实验线路连接
(1) 8255A芯片PC0~ PC7插孔依次接K1~ K8。
(2) 8255A芯片PB0~PB7插孔依次接L1 ~ L8。
(3) 8255A的CS插孔CS-8255接译码输出Y7插
孔。
要求: ① 读懂系统程序中有关 8255A 的部分。
包括:端口地址、初始化编程、 二极管发光情况与开关状态间的对应关系
并使其根据开关 K1~ K8 的状态发光。 · 以 K8 作为总开关,
若 K8打开(0),则 L1~ L8同时熄灭; 若 K8闭和(1),则 L1~ L7由K1~ K7控 制。
IOCONPT EQU 0073H IOCPT EQU 0072H IOBPT EQU 0071H IOAPT EQU 0070H
② 执行程序,并进行观察,记录。 PC 口 8 位接 8 个开关 K1~ K8 , PB 口 8 位接 8 个 LED 发光二极管 L1~ L8 , 并使其根据开关 K1~ K8 的状态发光。
③ 改变电路接法并修改程序,要求实现:
· PA 口 8 位接 8 个开关 K1~ K8 ,
PB 口 8 位接 8 个发光二极管 L1~ L8
IOLED: CALL FORMAT CALL LEDDISP
MOV AL,90H B口输出
;10010000 写方式控制字 方式0 A口输入
MOV DX,IOCONPT
OUT P
IOLED1: MOV DX,IOAPT
IN AL,DX
MOV DX,IOBPT
OUT DX,AL
并行接口 8255 的应用
1、实验目的 掌握8255A和微机接口方法。 掌握8255A的工作方式和编程原理。
2、实验内容

最新8255实验报告

最新8255实验报告

最新8255实验报告实验目的:本次实验旨在熟悉并掌握Intel 8255A可编程并行接口的功能及其编程方法。

通过实验,学习如何利用8255A实现并行数据的输入输出操作,并了解其在微型计算机系统中的应用。

实验设备与器件:1. 微机实验箱及接口电路板2. Intel 8255A 可编程并行接口芯片3. 8位微处理器(如8086)4. 示波器、逻辑笔等测试工具实验原理:Intel 8255A是一种3态可编程并行输入/输出接口芯片,具有三个8位并行I/O端口:端口A、端口B和端口C。

端口A和端口B可用于输入输出,端口C分为两个4位端口C1和C2,可分别进行输入输出操作。

8255A通过控制字寄存器(控制字1和控制字2)来设置工作模式和端口方向。

实验步骤:1. 初始化8255A:通过编程设置控制字寄存器,定义端口A、B的工作模式(例如,端口A为输入,端口B为输出)和端口C的配置(C1和C2的输入输出模式)。

2. 编写程序代码,实现端口A的数据读取和端口B的数据输出。

3. 使用示波器检测端口C的输入输出信号,验证其功能。

4. 通过改变控制字寄存器的设置,观察并记录端口工作模式变化后的行为。

实验结果:1. 端口A成功读取了外部输入的二进制数据,并在显示器上显示出来。

2. 端口B按照程序设定输出了相应的控制信号,通过LED灯或其他指示设备得到了验证。

3. 端口C1和C2在不同的控制字设置下,能够正确地执行输入输出操作,信号波形通过示波器得到了确认。

实验结论:通过本次实验,我们成功地对Intel 8255A可编程并行接口进行了编程和操作,实现了并行数据的输入输出。

实验结果表明,8255A在并行接口通信中具有重要作用,能够提高数据传输效率,适用于需要高速并行数据传输的场合。

微机原理实验报告

微机原理实验报告

微机原理实验报告一、实验目的本次微机原理实验的主要目的是通过实际操作和观察,深入理解微机系统的工作原理和组成结构,掌握微机系统的编程和调试方法,提高我们对微机原理的实际应用能力。

二、实验设备1、计算机一台2、微机原理实验箱一套三、实验内容1、 8255 并行接口实验了解 8255 芯片的工作原理和编程方法。

通过编程实现 8255 芯片的 A 口、B 口、C 口的输入输出控制。

2、 8253 定时/计数器实验掌握 8253 芯片的工作方式和编程要点。

利用 8253 芯片实现定时和计数功能。

3、 8259 中断控制器实验学习 8259 芯片的中断管理机制。

编写中断服务程序,实现中断响应和处理。

四、实验原理1、 8255 并行接口8255 是一种可编程的并行接口芯片,具有 A、B、C 三个 8 位端口。

通过对控制字的编程,可以设置各个端口的工作方式为输入或输出。

2、 8253 定时/计数器8253 包含三个独立的 16 位计数器,每个计数器可以工作在不同的方式下,如方式 0 到方式 5。

通过对计数器的初值设置和控制字编程,可以实现定时和计数功能。

3、 8259 中断控制器8259 用于管理外部中断请求,可实现中断优先级的判断和中断嵌套。

通过对 8259 的初始化编程,可以设置中断触发方式、中断向量等。

五、实验步骤1、 8255 并行接口实验连接实验电路,将 8255 芯片与实验箱上的相关引脚连接好。

编写程序,设置 8255 的控制字,使 A 口为输出,B 口为输入。

向 A 口输出数据,从 B 口读取数据,并观察实验结果。

2、 8253 定时/计数器实验连接实验电路,将 8253 芯片与实验箱上的相关引脚连接好。

编写程序,设置 8253 计数器 0 的工作方式为方式 2,初值为 1000。

启动计数器,观察输出引脚的波形变化。

3、 8259 中断控制器实验连接实验电路,将 8259 芯片与实验箱上的相关引脚连接好。

微机原理8255并行接口完整实验报告

微机原理8255并行接口完整实验报告

实验2 8255并行接口实验实验时间2019年10月23日实验类型■验证性□设计性□综合性1.实验目的1.学习并掌握8255的工作方式及其应用2.掌握8255典型电路的接法3.掌握程序固化及脱机运行程序的方法2. 实验内容及过程(主要内容、操作步骤)1.基本输入输出实验。

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

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

2.流水灯显示实验。

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

3.方式1输入输出实验。

编写程序,使8255工作在方式1控制下的A口输入,B口输出。

1. 基本输入输出实验本实验使8255端口A工作在方式0并作为输出口,端口C工作在方式0并作为输入口用一组开关信号接入端口B,端口A输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。

具体实验步骤如下(1)实验接线图如图4.3.4所示,按图连接实验线路图。

(实际实验改为C为输入,A为输出,相应实际接线图改为下图所示)(2)编写实验程序,经编译、连接无误后装入系统。

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

3. 测试数据及实验结果4. 实验分析及总结(主要考察内容)1.控制字格式决定了哪个端口为输入,哪个为输出,将D0-D7 8个控制字视为一个16进制数,再将其送入AX的高八位,就实现了端口的输入输出控制,而AX 的低八位没有使用2.A、B、C口和控制寄存器的地址后面*2是指地址第一位没有用教师评阅评价指标:实验目的、操作步骤、设计、算法、程序结构、实验结果、实验分析、实验总结。

微机原理实验报告并口实验

微机原理实验报告并口实验

微机原理实验报告——并口实验一、实验目的本实验旨在通过并口实验,了解和掌握微机原理中并口的基本原理、工作方式以及编程操作方法,通过实际操作并口实验,巩固并深化对微机原理的理解。

二、实验原理并口是微机原理中的一种常见的输入输出接口,并具有较高的灵活性和通信能力。

并口的基本结构包括数据寄存器和状态寄存器,通过使能信号对并口进行控制。

在并口实验中,通过编写相应的程序,实现将数据并行输入并通过并口输出的功能。

实验中主要使用的是8255芯片实现并口的控制。

三、实验器材1. IBM PC机或兼容机2. 8255芯片3. 连接线缆四、实验步骤1. 将8255芯片连接到计算机的并口接口,确保连接正确稳固。

2. 打开计算机并进入操作系统。

3. 编写并口控制程序。

在程序中,首先需要设置8255芯片为输出模式,然后通过与8255芯片对应的数据寄存器将需要输出的数据写入,并通过使能信号控制数据传输。

4. 运行编写好的程序,观察程序运行的结果。

五、实验结果与分析通过实验发现,在编写并口控制程序的过程中,需要正确设置8255芯片的工作模式和相应的寄存器,否则无法实现正确的数据传输。

其中,使能信号的控制也是关键的一步,通过正确的控制使能信号,才能实现数据的传输与输出。

六、实验总结通过本次并口实验,我们深入学习和掌握了微机原理中并口的基本原理和工作方式。

实验中我们了解到,在编写并口控制程序时需要对8255芯片的寄存器进行正确的设置,以确保数据传输和输出的正确性。

并口具有很高的灵活性和通信能力,能够广泛应用于各种数据输入输出的需求中。

然而,本次实验仅是对并口实验的基础性操作,实际应用中还需要根据具体需求进行更复杂的编程和控制。

为了更好地应用并口,建议在掌握基本操作的基础上,进一步学习并口的高级应用和相关技术。

最后,本次实验不仅提高了我们对微机原理的理解,也加深了我们对硬件与软件配合的理解。

通过实际动手实验,我们更加深入地理解了微机原理并口实验的基本原理与操作方法。

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

深圳大学实验报告课程名称:微型计算机技术
实验项目名称:8255并行接口实验学院:信息工程学院
专业:电子信息工程
指导教师:
报告人:学号:班级:
实验时间:
实验报告提交时间:
教务处制
图6 8255 基本输入输出失误接线图
3.编写实验程序如下面
(1)汇编源程序
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV DX, 0646H ;控制端口地址0646H送DX,因为8255的cs端口接的是I0Y1,
而I0Y1对应的编址空间是0640H—067FH,所以这里是0646H。

MOV AL, 90H ;方式选择控制字送AL
OUT DX, AL ;方式选择控制字输给8255A的控制端口,完成端口A 工作在方
式0 并作为输入口,端口B 工作在方式0 并作为输出口。

AA1: MOV DX, 0640H ;控制端口A地址0640H送DX
IN AL, DX ;将端口A连接的开关的对应状态送给AL
CALL DELAY
MOV DX, 0642H ;控制端口A地址0642H送DX
OUT DX, AL ;将AL的数据送到8255的端口B,从而使其连接的LED的灯发光
JMP AA1
DELAY: PUSH CX
MOV CX, 0F00H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START
ii具体实验步骤如下述:
(1)编写实验程序,经编译、连接无误后装入系统
(2)运行程序,改变拨动开关,同时观察LED 显示,验证程序功能。

(3)点击“调试”下拉菜单中的“固化程序”项,将程序固化到系统存储器中。

(4)将短路跳线JDBG 的短路块短接到RUN 端,然后按复位按键,观察程序是否正常运行;关闭实验箱电源,稍等后再次打开电源,看固化的
程序是否运行,验证程序功能。

(5)实验完毕后,请将短路跳线JDBG 的短路块短接到DBG 端(为了脱离计算机的控制而端接到JDBG端,试验后要调回,以便的实验)。

程序分析:请看上面程序中的注释。

实验结果:
从实验中可以明显的看到,当key开关波动后,经过8255处理后的输出信号端相对应的led灯就会被点亮。

具体灯图像如下:
2. 流水灯显示实验:
使8255 的A 口和B 口均为输出,数据灯D7~D0 由左向右,每次仅

一个灯,循环显示,D15~D8 与D7~D0 正相反,由右向左,每次仅点
亮一个灯,循环显示。

实验接线图如下图所示。

实验程序如下:
SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV DX, 0646H ;控制端口地址0646H送DX
MOV AL, 80H ;方式选择控制字送AL
OUT DX, AL ;方式选择控制字输给8255A的控制端口,完成端口A、B都工作
在方式0 并作为输出口。

MOV BX, 8001H
AA1: MOV DX, 0640H ;控制端口A地址0640H送DX
MOV AL, BH ;将BH中的值送给AL
OUT DX, AL ;点亮D7对应的LED灯。

相关文档
最新文档