实验二 8255并行接口的应用实验

合集下载

实验二 8255A并行接口实验

实验二  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端口地址为:288HB端口地址为:289HC端口地址为:28AH控制口地址为:28BH五、实验要求:1.做好实验预习和准备工作,并写出预习报告(要求写出实验的流程图及程序),熟练掌握8255A编程原理及编程方法。

2.实验操作的最低要求是要做出实验内容的基础部分,然后根据实际操作能力争取做出实验内容的提高部分及回答实验内容的第三部分问题。

微原硬件实验二:8255A并行接口应用

微原硬件实验二:8255A并行接口应用

北京邮电大学微机原理硬件实验报告实验二:8255A并行接口应用专业:信息工程学生姓名:×××学号:×××指导教师:×××完成时间:2013年11月29日一、实验目的 (3)二、实验原理及内容 (3)1、实验原理 (3)①8255的工作方式 (3)②工作方式选择字 (3)③命令字与初始化编程 (4)④注意事项 (4)2、实验内容 (4)①6位数码管静态显示 (4)②6位数码管动态显示 (5)③拓展功能 (5)三、硬件连接图与软件程序流程图 (7)1、硬件连接图 (7)①8255A并行接口 (7)②数码管 (8)2、程序流程图 (9)①基本要求一流程图 (9)②基本要求二流程图 (10)四、源程序 (11)1、基本要求一源代码 (11)2、基本要求二源代码 (12)五、实验结果 (14)六、实验总结 (15)1、段内VS段外 (15)2、瞬间之误 (15)3、接力跳远 (15)七、实验收获与心得体会 (15)一、实验目的1、掌握8255A的功能及方式0、1的实现。

2、熟悉8255A与CPU的接口,以及传输数据的工作原理及编程方法。

3、了解七段数码管显示数字的原理。

4、掌握同时显示多位数字的技术。

二、实验原理及内容1、实验原理①8255的工作方式一片8255内部有3个端口,A口可以工作在方式0、方式1或方式2,B口可以工作在方式0、方式1,C口可以工作在方式0。

方式0是基本型输入/输出。

这种方式和外设交换数据时,8255端口与外设之间不使用联络线。

方式1为选通型输入/输出。

用这种方式和外界交换数据时,端口和外设之间要有联络信号。

方式2是双向数据传送,仅A口有这项功能。

当A口工作在方式2时,B口仍可以工作在方式0或方式1,但此时B口方式1只能用查询方式与CPU交换信息。

②工作方式选择字8255工作方式选择字共8位(如图),存放在8255控制寄存器中。

实验二_8255并行接口应用实验

实验二_8255并行接口应用实验

实验二_8255并行接口应用实验一、实验目的1. 熟悉8255并行接口的功能和应用。

2. 掌握8255并行接口的控制字的含义和编写方法。

3. 熟悉并行接口的IO读写操作。

二、实验仪器1. PC机2. AT8051开发板4. 其他配件线路三、实验原理8255芯片是Intel公司提供的一种通用并行接口芯片。

它可以实现外围设备、传感器的控制、数据的输入/输出等功能,是一种非常实用的通用接口芯片。

8255是一个三端口、24线单片并行接口芯片,它可以直接连接CPU总线或I/O总线,采用AHB (AMBA High-Performance Bus)总线。

总线与8255之间的通讯方式采用输入/输出端口的方式,在CPU访问8255时,必须指定8255的端口地址。

CPU在访问8255时,AV(地址有效)为高电平,同时CS和RD为有效低电平。

8255所使用的端口地址由登录的端口号选择器(P0、P1、P2)决定。

8255的主要特点:a. 具有3个通用I/O端口,每个端口有8位,共有24条I/O线。

b. 可以通过外部信号线与中间件或总线连接。

c. 具有3种基本工作方式:安装、双向缓冲装置和输入输出方式。

d. 为减少芯片引脚数,端口地址用地址寄存器低端口号器(P0,P1)来指定。

端口的寄存器编号可以选择0或1。

e. 以可编程方式控制I/O端口。

f. 内接有二进制计数器,可用于计时和计数应用。

2. 编程实现原理本次实验中,我们将用8051的C语言编程,控制8255进行I/O读写操作。

在编程时,我们将根据需要设置8255的控制字,并利用控制字来控制8255的输入输出。

同时,在控制8255的I/O读写操作中,我们还需将相应的端口地址赋值给端口指针,以实现读写操作。

3. 硬件连接我们将在AT8051开发板上搭建实验电路,具体如下:a. 8255芯片的输入输出口A、B、C分别连接到LED灯,以控制LED灯的开关状态。

b. AT8051开发板的P0、P1、P2分别连接到8255的A1、A0、CS/WR、RD/CS口线,以进行8255的读写操作。

实验二 8255并行输入输出实验

实验二 8255并行输入输出实验

实验二8255并行输入输出实验一、实验目的与要求了解8255A的内部结构、工作原理;掌握对8255A的初始化编程方法。

二、实验设备STAR系列实验仪一套、PC机一台三、实验内容1、选通输入实验:B口有8个发光二极管PBi(i=0~7),要求K3K2K1=000时LED1亮~K3K2K1=111时LED8亮,预置开关K为一组状态后按下BUTTON产生一负脉冲信号输入到PC4上,用LEDi(i=1~8)亮来显示K的状态。

2、选通输出实验:A口有8个发光二极管PAi(i=0~7),显示LED0亮,然后每按一次BUTTON使LED循环下移一位亮。

四、实验原理图1、2、五、实验步骤1区:单脉冲(2)运行程序(3)预置开关K为一组状态后上下拨动单脉冲开关,拨动两次,产生一个“”,观察B 口灯是否对应开关的状态相应亮,拨动开关K设置下一组开关状态,上下拨动单脉冲开关,拨动两次,产生一个“”,继续检查B口灯是否对应开关的状态相应亮。

2区:单脉冲(3)此时发现LED0亮,每上下拨动单脉冲开关,拨动两次,产生一个“”,观察LED是否循环下移一位亮。

六、流程图1、2、七、程序代码1、DATA SEGMENTTAB DB 11111110B,11111101B,11111011B,11110111B DB 11101111B,11011111B,10111111B,01111111B DATA ENDSSTCK SEGMENT STACKSTA DB 50 DUP(?)STCK ENDSCODE SEGMENTASSUME DS:DATA,CS:CODE,SS:STCKSTART: MOV AX,DATAMOV DS,AXCALL Init8255 ;8255初始化子程序SCAN: MOV DX,0F002H;C口IN AL,DXAND AL,00100000BJZ SCAN ;判断IBFA是否为1 MOV DX,0F000H ;A口IN AL,DXAND AL,7 ;保留K1,K2,K3的数字 LEA BX,TABXLATMOV DX,0F001H ;B口OUT DX,ALJMP SCANInit8255 PROCMOV DX,0F003HMOV AL,0B0HOUT DX,ALRETInit8255 ENDPCODE ENDSEND START2、STCK SEGMENT STACKSTA DB 50 DUP(?)STCK ENDSCODE SEGMENTASSUME CS:CODE,SS:STCKSTART: MOV DX,0F003HMOV AL,0A0HOUT DX,ALMOV DX,0F000HMOV AL,0FEH ;使LED0亮OUT DX,ALLOP: MOV BL,AL ;保护AL中内容LOP1: MOV DX,0F002HIN AL,DXAND AL,80HJZ LOP1 ;/OBFA是否为1CALL DELAY ;延时MOV AL,BLROL AL,1MOV DX,0F000HOUT DX,ALJMP LOPDELAY PROCPUSH AXPUSH CXMOV CX,0FFFFHLOOP $MOV CX,0FFFFHLOOP $POP CXPOP AXRETDELAY ENDPCODE ENDSEND START八、遇到问题1、一开始编的程序没有查询IBFA的状态,用的是无条件传送,预置K的状态,不拨单脉冲开关,灯也能对应显示。

微机接口实验报告8255并口控制器实验

微机接口实验报告8255并口控制器实验

微机接口实验报告8255并口控制器实验8255并口控制器实验一.实验目的:1,掌控8255的工作方式和应用领域编程;2,掌控8255的典型应用领域电路三相。

二.实验设备pc微机一台,td―pit+实验系统一套。

三.实验内容:编写程序,并使8255的a口味输入b口为输出,顺利完成敲击控制器至数据等的数据传输。

建议:只要敲击控制器,数据灯的现实就可以发生改变。

四.实验原理:并行接口就是以数据的字节为单位与i/o设备或被掌控对象之间传输信息。

cpu和USB之间的数据传输总是循序的。

8255并行控制器具有abc三个并行接口,用+5v但电源供电,能在一下三种方式下工作:方式一:基本输出|出来方式方式二:选道输出|出来方式方式三:双向选项工作方式五.实验步骤:1.证实从pc着急带出的两根扁平电缆已经相连接在实验平台上。

2.相连接实验先例参照右图:3.运行check成功内需,查看i/o空间始地址。

4.利用查出的地址编写程序,然后便于链接。

5.运行程序,拨动开关,看数据灯显示是否正确。

六.编程与调试:1.使用ckeck程序找到ioyo空间始址:dcooh2.编写程序:ioyoequodcoohaaequioyo+0*4bbequioyo+1*4ccequioyo+2*4modeequioyo+1*4stack1seqme ntstackdw256dup(?)stack1endscodeseqmentassumecs:code,ss:stack1stack:movbx,odcoohnext:movdx,bbinal,dxoutdx,almovah,1in t16hjznextmovah,40hint21hcodeendsendsstart3.编程,链接,运转程序七.实验结果:运转程序后,数据灯随着控制器的变化而变化,即为控制器拨打时,数据灯亮,控制器断裂时,数据灯攻灭。

八.实验总结:通过本次实验,对8255并口控制器存有了一定的介绍,掌控了掌控8255的工作方式和应用领域编程,掌控8255的典型应用领域电路三相。

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 正相反,由右向左,每次仅点亮一个灯,循环显示。

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

微机原理实验 可编程并行接口 8255 实验
(4)读写控制逻辑:用来控制把CPU输出的控制字或数据送至相应端口,也由它来控制把状态信息或输入数据通过相应的端口送到CPU。
2、8255A的工作方式:
方式0—基本输入输出方式;方式1—选通输入输出方式;方式2—双向选通输入输出方式
3、8255A的状态字:
图1可编程并行接口8255电路
五、实验电路及连线
1、流水灯实验:
(1)实验连线
该模块的WR、RD分别连到MCU主模块的WR、RD。
该模块的数据(AD0~AD7)、地址线(A0~A7)分别连到MCU主模块的数据(AD0~AD7)、地址线(A0~A7)。
8255模块选通线CS连到MCU主模块的地址A15。
8255的PA0~PA7连到发光二极管的L0~L7。
(2)三个端口A,B和C:A端口包含一个8位数据输出锁存器和缓冲器,一个8位数据输入锁存器。B端口包含一个8位数据输入/输出锁存器和缓冲器,一个8位数据输入缓冲器。C端口包含一个8位数据输出锁存器及缓冲器,一个8位数据输入缓冲器(输入没有锁存器)。
(3)A组和B组控制电路:这是两组根据CPU输出的控制字控制8255工作方式的电路,它们对于CPU而言,共用一个端口地址相同的控制字寄存器,接收CPU输出的一字节方式控制字或对C口按位复位字命令。方式控制字的高5位决定A组工作方式,低3位决定B组的工作方式。对C口按位复位命令字可对C口的每一位实现置位或复位。A组控制电路控制A口和C口上半部,B组控制电路控制B口和C口下半部
(2) I/O输入输出实验:利用8255的A口读取开关状态,8255的B口把状态送发光二极管显示
四、实验原理
1、8255A的内部结构:
(1)数据总线缓冲器:这是一个双向三态的8位数据缓冲器,它是8255A与微机系统数据总线的接口。输入输的数据、CPU输出的控制字以及CPU输入的状态信息都是通过这个缓冲器传送的。

8255A可编程并行口实验_2

8255A可编程并行口实验_2

4.2 8255A可编程并行口实验1. 实验目的(1)掌握并行接口芯片8255A和微机接日的连接方法。

(2)掌握并行接口芯片8255A的工作方式及其编程方法。

2. 实验内容(l)实验原理。

实验原理如图4-I所示, PC口8位接8个开关K1一K8, PB口8位接8个发光二极管, 从PC口读入8位开关量送PB口显示。

拨动K1~K8,PB口上接的8个发光二极管LO~L7对应显示KI~KS的状态。

(2)实验线路连接。

1)8255A芯片PC0-PC7插孔依次接K1~K8。

2)8255A芯片PB0~PB7插孔依次接L0-L7。

3)8255A的CS插孔CS_8255接译码输出Y7插孔。

3. 实验软件框图参考流程图如图4-2所示。

4. 实验步骤(1)按图4-1连好线路。

(2)运行实验程序。

在数码管上显示“8255-1", 同时拨动K1~K8, L0~L7会跟着亮灭。

5. 实脸软件参考程序请参见本书电子课件, 文件名为H8255-1.ASM。

CODE SEGMENT ASSUME CS:CODE IOCONPT EQU 0073H IOCPT EQU 0072H IOBPT EQU 0071H START: MOV CX,8FFFH DELAY0:LOOP DELAY0MOV AL,89H MOV DX,IOCONPTOUT DX,ALNOPNOPNOPIOLED1: MOV DX,IOCPT IN AL,DXMOV DX,IOBPTOUT DX,ALMOV CX,8FFFH DELAY:LOOP DELAYJMP IOLED1 CODE ENDSEND START6. 思考题(1)修改程序实现一个开关控制2个或3个灯亮灭。

IOLED1: MOV BL,ALMOV CX,4ROL AL,CXADD AL,BLMOV CX,8FFFHDELAY:LOOP DELAYJMP IOLED1(2)添加延时程序, 去掉开关连线, 实现8个灯循环亮灭。

实验二可编程并行接口(8255方式0).doc

实验二可编程并行接口(8255方式0).doc

实验二一、实验题目:可编程并行接口(8255方式0)二、实验目的掌握8255方式0的工作原理及使用方法。

三、实验内容1、按下图连线。

2、编程从8255C口输入数据,再从A口输出.四、程序流程图五、源程序ioport equ 0d400h-0280hio8255a equ ioport+288hio8255b equ ioport+28bhio8255c equ ioport+28ahcode segmentassume cs:codestart: mov dx,io8255b ;设8255为C口输入,A口输出mov al,8bhout dx,alinout: mov dx,io8255c ;从C口输入一数据in al,dxmov dx,io8255a ;从A口输出刚才自C口out dx,al ;所输入的数据mov dl,0ffh ;判断是否有按键mov ah,06hint 21hjz inout ;若无,则继续自C口输入,A口输出mov ah,4ch ;否则返回DOSint 21hcode endsend start六、实验结果分析按上述的代码执行,观察LED灯的状态,可以发现实验结果和预期的相同:打开K0,关闭K1、K2、K3、K4、K5、K6、K7,L0亮;打开K1,关闭K0、K2、K3、K4、K5、K6、K7,L1亮;打开K2,关闭K0、K1、K3、K4、K5、K6、K7,L2亮;打开K3,关闭K0、K1、K2、K4、K5、K6、K7,L3亮;打开K4,关闭K0、K1、K2、K3、K5、K6、K7,L4亮;打开K5,关闭K0、K1、K2、K3、K4、K6、K7,L5亮;打开K6,关闭K0、K1、K2、K3、K4、K5、K7,L6亮;打开K7,关闭K0、K1、K2、K3、K4、K5、K6,L7亮;按任意键,退出该实验。

七、实验心得1、通过本次实验,了解了8255芯片的基本内部结构和它的管脚,掌握了8255方式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接口对应的二极管亮。

并行接口8255实验报告

并行接口8255实验报告

并行接口8255实验一、实验目的1.掌握可编程并行接口电路8255的工作原理及初始化方法2.掌握8255在实际应用中的硬件连接及编程应用二、实验要求根据实验室现有条件,针对实验任务,设计实验方案并进行实现三、实验内容通过使用8255,8253实现一个倒计时设备,具体的方法是,用户逐个打开开关,然后8255定时读取开关状态并输出给二极管,当所有灯都亮起时,输出一个高电平给Gate0,对8253而言,要求每1s查看一次用户是否摁下了所有开关,一旦是这样蜂鸣器就会响起来,然后给8253送一个锁存命令,查看计数器1和计数器0当前的计数值,锁存两个计数值,便于后期的计算和数据处理。

四、实验线路图其中,8255的各个端口分别是:F0H,F2H,F4H,F6H 8253的各个端口分别是:F8H,F9H,FAH,FBH 五、实验程序清单CSEG SEGMENTASSUME CS:CSEGSTART:;初始化8255和8253MOV DX,F6HMOV AL,1001000BOUT DX,ALMOV DX,FBHMOV AL,01110110BOUT DX,ALMOV AL,00110110B;选择8253计数器1MOV DX,F8HMOV AL,0OUT DX,ALMOV AL,10OUT DX,AL;选择8253计数器0MOV DX,FGHMOV AL,0OUT DX,ALMOV AL,10MOV CX,2000H;用CX延时,读取开关状态 NEXT:OUT DX,ALMOV DX,F2HIN DX,AL;输出开关状态,此时亮起灯,如果灯全亮起,蜂鸣器响起MOV DX,F4HOUT DX,ALLOOP NEXT;锁存两个计数器的计数值MOV AL,00110110BMOV DX,F8HOUT DX,ALMOV AL,01110110BMOV DX,F9HOUT DX,ALCSEG ENDSEND START六、实验总结及体会1.实验总结:本次实验中我设计了8086连接8253和8255的相关电路,并且与输出设备相连接,也重新复习了数电的知识,通过学习微机原理和汇编语言这门接近底层的语言我意识到代码与底层的交互是怎样实现的,也有利于我学习其他的高级语言。

微机接口 8255并行接口实验报告

微机接口 8255并行接口实验报告

浙江工业大学计算机学院实验报告实验名称 8255并行接口实验姓名徐洁学号 ************班级计科1301班教师雷艳静日期 2015/12/31一、实验内容与要求1.1 实验内容8255方式0实验一:从8255端口C输入数据,再从端口A输出,即TPC-USB平台按逻辑电平开关K0~K7通过编程使端口C接收,然后再通过端口A输出到LED显示电路L0~L7,这样逻辑电平开关的值就可以通过8255芯片显示在LED显示电路上。

8255方式1输出实验:编程实现每按一次单脉冲按钮产生一个正脉冲,使8255产生一次中断,让CPU进行一次中断服务:依次输出01H、02H、04H、08H、10H、20H、40H、80H 使LED显示电路L0~L7依次发光,中断8次结束。

8255方式1输入实验:编程实现每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一次中断服务,读取逻辑电平开关预置的ASCII码,在屏幕上显示其对应的字符,中断8次结束。

1.2 实验要求(1) 具有一定的汇编编程的基础,能编写一些基本语句来实现实验。

实验前根据实验流程图,写出对应代码;(2) 要了解8255A并行接口芯片内部结构和外部引脚,理解8255芯片的工作方式和程序设计方法;(3) 熟悉实验平台TPC-USB了解各个接口的名称与功能,进行实验时能快速并正确地连接好实验电路;(4) 8255方式0实验一:连接PC与TPC-USB平台,用微机实验软件运行程序,用TPC-USB平台上的逻辑电平开关与LED显示电路观察,LED显示的值与逻辑电平开关设的值对应;(5) 8255方式1输出实验:连接PC与TPC-USB平台,用微机实验软件运行程序,手按单脉冲按钮,观察LED显示电路能依次发光,按8次后,中断结束,程序结束;(6) 8255方式1输入实验:连接PC与TPC-USB平台,用微机实验软件运行程序,用TPC-USB平台的逻辑电平开关设置一个ASCII码,按一次单脉冲,屏幕就能显示该ASCII码对应的字符,变更逻辑电平的开关,按一次单脉冲,屏幕就会显示变更的ASCII码对应的字符。

8255A并行口实验(二)内容

8255A并行口实验(二)内容

上海电力学院实验报告计算机硬件实验课程题目:8255A并行口实验(二)内容班级:姓名:学号:一、实验目的掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。

二、实验内容1、实验原理实验原理图如图所示,PB4 ~ PB7和PC0 ~ PC7分别与发光二极管电路L1~ L12相连,本实验为模拟交通灯实验。

交通灯的亮灭规律如下:设有一个十字路口,1、3为南北方向,2、4为东西方向,初始为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车;延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3 路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车;延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到1、3路口方向,之后重复上述过程。

8255A的PB4~ PB7对应黄灯,PC0 ~ PC3对应红灯,PC4~ PC7对应绿灯。

8255A工作于模式0,并置为输出。

由于各发光二极管为共阳极,使其点亮应使8255A相应端口清0。

2、实验线路连接(1) CS-8255插孔连译码输出Y7插孔。

(2) L1 - PC4 L4 - PC5 L7 - PC6 L10 - PC7 L2 - PB4 L5 - PB5 L8 - PB6 L11 - PB7 L3 - PC0 L6 - PC1 L9 - PC2 L12 - PC3三、实验框图四、实验程序CODE SEGMENTASSUME CS:CODEIOCONPT EQU 0FF2BHIOAPT EQU 0FF28HIOBPT EQU 0FF29HIOCPT EQU 0FF2AHORG 10e0HSTART:MOV DX,IOCONPTMOV AL,80HMOV DX,IOBPTMOV AL,00HOUT DX,ALMOV DX,IOCPTMOV AL,0FHOUT DX,ALCALL DELAY1IOLED0: MOV AL,01011010BMOV DX,IOCPTOUT DX,ALCALL DELAY1CALL DELAY1MOV AL,00001010BOUT DX,ALMOV CX,8HIOLED1: MOV DX,IOBPTMOV AL,50HOUT DX,ALCALL DELAY2MOV AL,00HOUT DX,ALCALL DELAY2LOOP IOLED1MOV DX,IOCPTMOV AL,10100101BOUT DX,ALCALL DELAY1CALL DELAY1MOV AL,00000101BOUT DX,ALMOV CX,8HIOLED2: MOV DX,IOBPTMOV AL,0A0HOUT DX,ALCALL DELAY2MOV AL,00HOUT DX,ALCALL DELAY2LOOP IOLED2MOV DX,IOCPTMOV AL,0FHOUT DX,ALCALL DELAY2DELAY1: MOV CX,0030HDELY2:CALL DELAY2LOOP DELY2DELAY2:MOV CX,8000HDELA1:LOOP DELA1CODE ENDSEND START/ / / / /五、实验步骤1、按图连好实验线路2、运行实验程序,在DVCC-8086JHN上显示"8255-2"。

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

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

实验6 8255并行接口实验
实验时间2019年12月5日
实验类型■验证性□设计性□综合性
1. 实验目的
1.学习并掌握8255的工作方式及其应用。

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

2. 实验内容及过程(主要内容、操作步骤)
1.基本输入输出实验。

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

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

3. 测试数据及实验结果
4. 实验分析及总结(主要考察内容)
启动中断的动作是脉冲开关,因为PC2接的是脉冲开关。

8255A输出的信号可用于CPU提出中断请求。

B端口的方式一需要借用端口C用做联络信号,端口C 还具有中断请求和屏蔽功能
教师评阅
评价指标:实验目的、操作步骤、设计、算法、程序结构、实验结果、实验分析、实验总结。

汇编语言 8255并行接口实验

汇编语言 8255并行接口实验

实验7 8255并行接口实验实验目的1.学习8255 芯片的使用方法;2.学习模拟交通灯控制的方法;实验设备PC机一台,THTWK-2实验箱一台实验要求1.编写程序,以8255 的C 口作为输出口,控制4 个双色LED 灯(可发红,绿,黄光),模拟十字路口交通灯管理。

2. 编写程序,以8255的C口作为输出口,用开关控制控制一排发光二极管的亮灭。

实验内容1及实验原理双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。

红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。

使用8255的端口C 控制双色灯。

8255的CS由CPLD输出,决定了8255的起始地址为40H。

8255的A0,A1地址线分别接了32位总线A2,A3,决定了A、B、C和状态口地址分别为40H、44H、48H和4CH。

假设一个十字路口为东西南北走向。

初始状态0 为东西红灯,南北红灯。

然后转状态1 南北绿灯通车,东西红灯。

过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。

再转状态3,东西绿灯通车,南北红灯。

过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。

最后循环至状态1。

注意:LED灯亮灭的间隔时间是由延时程序来控制的,如果计算机的速度过快,LED灯亮灭的间隔时间就比较短,实验现象就不明显。

可通过调整延时程序使实验现象更明显。

实验步骤1.接线:用8位数据线将8255模块的JD3D连接到32位LED显示模块的JD4B。

2.把D盘“程序”文件夹中Traffic.asm文件复制到BIN 路径下。

3.重起计算机进入MAXDOS,然后进入纯DOS环境。

使用cd命令到BIN 路径下,输入下面命令后回车。

4.编译:tasm /zi Traffic.ASM5.连接:tlink /v/3 Traffic.OBJ6.运行:Traffic.EXE运行结果如下图所示:按PC键盘(任意键),启动交通灯,再按PC键盘任意键,则程序退出。

实验二_8255并行接口应用实验

实验二_8255并行接口应用实验

实验二8255并行接口应用实验一.实验目的1. 掌握8255工作方式的编程设计。

2. 8255与外部设备进行连接的应用。

二.实验设备与材料:TDN86/88教学实验系统一台,扁平插线若干。

三.实验原理:INTEL8255是一种通用的可编程并行I/O接口芯片,是专为INTEL公司的微处理器设计的,也可用于其它系列的微型机系统中。

利用8086汇编指令系统,编制初始化程序,可以变更8255 的工作方式,通用性强,使用灵活。

8255具有3个带锁存或缓冲的数据端口,它的并行数据宽度为8位。

可与外设并行进行数据交换。

A口和B口内具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换。

8255能与许多外部设备连接,例如:键盘、显示器、打印机等。

(a)工作方式控制字 (b)C口按位置位/复位控制字四.实验内容及步骤1.8255的一般输入输、出方式本系统中的8255芯片8255的数据线、地址线、读写控制线等分别与系统总线相连,其A、B、C三个端口以排针形式引出,供8255实验使用,其线路如图1所示。

图1 8255接口实验中端口地址如表1所示表1按图所示实验线路,8255端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。

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

实验步骤●图2 8255输入输出方式实验接线图注:圆圈处是要求接的连线。

(1)按图2接线。

用扁平线(8头)分别插在8255的A口和发光二极管的插针上。

用扁平线分别插在8255的B口和拨动开关的插针上。

(2)输入源程序,汇编、连接后装入系统。

●参考程序1STACK SEGMENT STACKDW 64 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODESTART: MOV AL,82H ;设8255方式字10000010 A位输出,B口位输入。

OUT 63H,AL A1: IN AL,61HOUT 60H,AL JMP A1CODE ENDS END START(3)执行程序后,拨动开关组K0-K7,观察发光二极管LED0-LED7变化,它应是与开关组K0-K7的值是一一对应的变化。

[hide2]8255并行接口应用实验

[hide2]8255并行接口应用实验

[hide=2]8255并行接口应用实验一、实验目的1.掌握8255的工作方式及应用编程2.掌握8255的典型应用电路接法二、实验设备1.PC机一台2.TD-PIT/TD-PIT-B实验装置一套。

三、实验原理并行接吕是以数据的字节为单位向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口为输入,完成拨动开关到数据灯的数据传输。

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

2.流水灯显示实验。

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

3.键盘及显示实验。

按照实验线路编写实验程序,使按下不同的按键后数码块显示相应的数字。

五、实验步骤1、基本输入/输出实验本实验使8255端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。

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

8255基本输入/输出实验参考接线图如图(3)所示。

图(3)实验步骤如下:1.设计实验线路图,并将PCI总线扩展卡上的ADD-ON总线与仿真ISA总线进行连接,完成线路连接。

2.编写程序,检查无误后汇编、连接。

3.打开实验箱电源,运行程序,拨动开关组,观察数据灯的显示。

核心程序如下:MY8255_A EQU 9860HMY8255_B EQU 9861HMY8255_C EQU 9862HMY8255_MODE EQU 9863HCODE SEGMENTASSUME CS:CODESTART: MOV DX,MY8255_MODEMOV AL,82HOUT DX,ALA1: MOV DX,MY8255_BIN AL,DXMOV DX,MY8255_AOUT DX,ALCALL BREAKJMP A1BREAK PROC NEARMOV AH,06HMOV DL,0FFHINT 21HJE RETURNMOV AX,4C00HINT 21HRETURN:RETBREAK ENDPCODE ENDSEND START2、流水灯显示实验先分别向A口和B口写入7FH和FEH,然后分别将该数右移和左移一位,再送到端口上,这样循环下去,从而实现流水灯的显示。

微机实验报告 8255并行IO口实验

微机实验报告 8255并行IO口实验

微机实验报告 8255并行IO口实验一、实验目的1.掌握8255芯片的基本结构和功能;2.了解键盘、LED灯的工作原理;3.能够进行8255芯片的编程和应用。

二、实验原理8255是由Intel公司设计的一种具有高度集成度的、通用的、并行的I/O设备。

它可以作为与CPU对外的接口芯片,实现与CPU的数据传输和控制。

在8255中,数据端口和控制端口都是I/O端口,通过这些端口来对外部装置进行输入和输出。

8255一共包含三个可编程I/O口,即端口A、端口B和端口C,每个IO口都有自己的方向、输入输出控制和数据寄存器,同时拥有中断控制、双向数据传输以及串行数据传输等多种操作模式。

其中,端口A和端口B是8位的,可以单独使用或组合成16位的端口C进行数据传输。

端口A和端口B的功能可通过I/O控制字中的一些位来编程实现,可分为输出、输入和双向传输三种模式。

端口C是一个5位I/O口,其中4位可以编程为输入或输出,第5位为只读输入输出类型,称为模式控制寄存器(control mode register,CMR)。

模式控制寄存器有4个不同的配置方式,它们在数据传输时可以实现BCD码的转换、万分之一秒的时钟计数、键盘扫描以及LED灯控制等功能。

本次8255并行IO口实验主要是通过端口A、端口B和端口C来控制LED灯和键盘扫描,实现输入输出的控制。

三、实验内容1.针对8255的IO口进行连接:将P0、P1、P2、P3、wr、rd等引脚重新定义为要控制的LED灯、键盘的控制信号引脚,将8255的各接口接在实验板上。

2.编写相应程序,控制8255芯片的各个闪烁。

四、实验步骤2.在电脑上打开keil 软件,编写控制程序,将程序下载到单片机中。

3.通过控制程序,控制LED灯以及键盘扫描进行输出输入的操作。

五、实验结果实现输出LED灯的闪烁、键盘扫描通过这次实验,我对8255并行IO口的基本结构和功能有了更深入的了解。

8255芯片是一种高度集成度的、通用的、并行的I/O设备,通过这个芯片的接口,我们可以方便地实现单片机与外界键盘等设备的数据输入输出控制。

8255并行口实验+8253定时器实验

8255并行口实验+8253定时器实验

实验2 8255A并行口实验(一)一、实验目的1.掌握并行接口芯片8255的使用与硬件接口方法。

2.掌握8255A的各种工作方式和编程原理。

二、8255A芯片介绍8255A是可编程通用并行接口芯片,它具有A、B、C三个并行接口,用+5V 单电源供电,能在以下三种方式下工作:方式0:基本输入/输出方式方式1:选通输入/输出方式(应答式输入输出方式)方式2:双向选通工作方式8255工作于方式1或2时,PC口的一些引脚作为A和B口的联络信号线,如下表:三、实验内容1、并行口工作于方式0时的传送(1)设计一个电路:用8255A做并行口,读入8个开关的状态并通过发光二极管显示出来。

(当拨动开关时,相应的发光二极管的状态时刻跟随变化)(2)当总开关K闭合(K=1)时,分开关能够控制对应的发光二极管;而当总开关K断开(K=0)时,分开关无论如何拨动,对应发光二极管都不跟随变化。

2、方式1用8255芯片的B口工作于方式1做输入,A口工作于方式0做输出。

采用查询与中断2种方式,实现拨动开关控制发光二极管的显示。

提示:必须理解8255方式1输入的工作过程及相关联络控制信号的先后时序关系。

根据上述要求设计电路并编写程序。

实验3 8255并行口实验(二)一、实验目的1. 通过可编程并行接口芯片8255实现十字路口交通灯的模拟控制。

2. 掌握七段数码显示管的使用方法。

3. 掌握软件延时方法的使用。

4. 进一步掌握并行接口芯片8255的使用方法。

二、实验内容1.根据实验系统现有的实验电路,设计电路并编写程序使12个灯按交通变化规律亮、灭或闪烁。

要完成本实验,必须先了解交通路灯的亮灭规律,设有一个十字路口分为南北方向和东西方向,初始状态为红灯全亮,之后,南北绿灯亮,东西红灯亮,南北方向通车。

延时一段时间后,南北绿灯熄灭,而南北黄灯开始闪烁,闪烁若干次以后,南北红灯亮,而同时东西的绿灯亮,东西方向通车,延时一段时间后,东西绿灯熄灭,而东西黄灯开始闪烁,闪烁若干次以后,再切换到南北方向,之后,重复上述过程。

8255并行接口实验

8255并行接口实验

《接口技术》实验报告实验二8255并行口接口实验实验目的利用8255A实现并行接口实验。

实验内容1:掌握8255A的编程原理。

2:熟悉计算机并行接口的使用方法。

实验步骤1连线:8255A芯片A口的PA0-PA7依次和开关量输入Kl-K8相连。

B口的PB0-PB7依次接发光二极管Ll-L8。

从CS0-CS7中任选一个与8255A的片选信号相连,其他线路均已接好。

2:编写程序单步运行并调试程序。

3:调试通过后全速运行并观察实验结果。

实验原理图程序流程图源程序清单ASSUME CS:CODECODE SEGMENT PUBLICORG 100HSTART: MOV DX,04A6HMOV AX,90HOUT DX,AXSTART1: MOV DX,04A0HIN AX ,DXMOV DX,04A2HOUT DX,AXJMP START1CODE ENDSEND START运行结果及分析当读到某个开关处于高电平时,对应的发光二极管就会亮修改1A口和B口的工作方式互换。

B口输入,A口输出。

这样的话程序改成:START: MOV DX,04A6HMOV AX,82HOUT DX,AXSTART1: MOV DX,04A2HIN AX ,DXMOV DX,04A0HOUT DX,AXJMP START1CODE ENDSEND START运行结果:当读到某个开关处于高电平时,对应的发光二极管就会亮。

修改2B口输入,C口输出,这样的话程序改成:START: MOV DX,04A6HMOV AX,82HOUT DX,AXSTART1: MOV DX,04A2HIN AX ,DXMOV DX,04A4HOUT DX,AXJMP START1CODE ENDSEND START运行结果:当读到某个开关处于高电平时,对应的发光二极管就会亮。

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

实验二8255并行接口应用实验一.实验目的1. 掌握8255工作方式的编程设计。

2. 8255与外部设备进行连接的应用。

二.实验设备与材料:TDN86/88教学实验系统一台,扁平插线若干。

三.实验原理:INTEL8255是一种通用的可编程并行I/O接口芯片,是专为INTEL公司的微处理器设计的,也可用于其它系列的微型机系统中。

利用8086汇编指令系统,编制初始化程序,可以变更8255 的工作方式,通用性强,使用灵活。

8255具有3个带锁存或缓冲的数据端口,它的并行数据宽度为8位。

可与外设并行进行数据交换。

A口和B口内具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换。

8255能与许多外部设备连接,例如:键盘、显示器、打印机等。

(a)工作方式控制字 (b)C口按位置位/复位控制字四.实验内容及步骤1.8255的一般输入输、出方式本系统中的8255芯片8255的数据线、地址线、读写控制线等分别与系统总线相连,其A、B、C三个端口以排针形式引出,供8255实验使用,其线路如图1所示。

图1 8255接口实验中端口地址如表1所示表1按图所示实验线路,8255端口A工作在方式0并作为输出口,端口B工作在方式0并作为输入口。

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

实验步骤●图2 8255输入输出方式实验接线图注:圆圈处是要求接的连线。

(1)按图2接线。

用扁平线(8头)分别插在8255的A口和发光二极管的插针上。

用扁平线分别插在8255的B口和拨动开关的插针上。

(2)输入源程序,汇编、连接后装入系统。

●参考程序1STACK SEGMENT STACKDW 64 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODESTART: MOV AL,82H ;设8255方式字10000010 A位输出,B口位输入。

OUT 63H,AL A1: IN AL,61HOUT 60H,ALJMP A1CODE ENDSEND START(3)执行程序后,拨动开关组K0-K7,观察发光二极管LED0-LED7变化,它应是与开关组K0-K7的值是一一对应的变化。

2.8255的选通输入、输出方式按图3 所示实验线路,8255端口A工作在方式0并作为输出口,端口B工作在方式1并作为输入口。

从端口C的PC2成为选通信号输入, 端STBb,PC0成为中断请求信号输出端INTRb。

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

实验步骤●图3 8255选通方式实验接线图(KK1-初态为“1”)注:圆圈处是要求接的连线。

(1)按图3接线。

用扁平线(8头)分别插在8255的A口和发光二极管的插针上。

用扁平线分别插在8255的B口和拨动开关的插针上。

8255的PC0插针接8259的IRQ7插针上, 8255的PC1插针接KK1-插针上。

(2)输入源程序,汇编、连接后装入系统。

●参考程序2STACK SEGMENT STACKDW 64 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODESTART: CLIMOV AL,0A6HOUT 63H,ALMOV AL,05HOUT 63H,ALPUSH DSMOV AX,0000HMOV DS,AXMOV AX,OFFSET IRQ7ADD AX,2000HMOV SI,003CHMOV [SI],AXMOV AX,0000HMOV SI,003EHMOV [SI],AXPOP DSIN AL,21H ;读 IMRAND AL,7FH ;开IRQ7中断OUT 21H,ALA1: STIHLT ;等待中断请求信号JMP A1IRQ7: IN AL,61H ;读开关信息OUT 60H,AL ;输出开关信息MOV AL,20HOUT 20H,ALIRETCODE ENDSEND START(3)执行程序后,拨动开关组K0-K7(即设定一输入值),按一下拨动开关KK1,观察发光二极管LED0-LED7变化,它应是与开关组K0-K7D的设定值一一对应。

3.运用8255设计的键盘及显示接口图中用并行接口8255A作为微机与键盘间的接口,采用逐行扫描法识别键。

将键盘中的列与PA0—PA3相连,A口为输出;将行与C口的PC0—PC1相连,C口为输入口; PB0—PB7与七段代码显示器连接B口为输出。

程序执行过程如下:识别是否有键按下,方法是使PA0一PA3输出全0,读C口(行值) 中只要有一位为0,就说明有键按下,在检测到有键按下后,延迟一段时间,根据找到的键号,转去执行显示七段代码显示器的程序,这时七段代码显示器就显示与该键相同的数值。

实验步骤●图4 8255接口的应用键盘及显示接线图注:圆圈处是要求接的连线。

(1)按图4接线。

(2)输入源程序,汇编、连接后装入系统。

(3)执行程序后,按一下键盘,7段代码就会显示相应的数字。

参考程序3STACK SEGMENT STACKDW 64 DUP(?)STACK ENDSDATA SEGMENTTABLE DB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX,DATAMOV DS,AXMOV SI,3000HMOV AL,00HMOV [SI],AL ;清空存放数据的缓冲区MOV [SI+1],ALMOV [SI+2],ALMOV [SI+3],ALMOV DI,3003HMOV AL,81H ;8255方式字定义选择0方式,A口为输出;;B口为输出;C口为输入OUT 63H,ALBEGIN: CALL DIS ;显示七段代码管数据的子程序CALL CLEAR ;七段代码管清0子程序CALL CCSCAN ;检测是否有键按下子程序JNZ INK1 ;JMP BEGININK1: CALL DISCALL DALLY ;子程序为延时,消抖动CALL DALLYCALL CLEARCALL CCSCANJNZ INK2JMP BEGININK2: MOV CH,0FEHMOV CL,00HCOLUM: MOV AL,CHOUT 60H,ALIN AL,62HTEST AL,01HJNZ LONEMOV AL,00HJMP KCODELONE: TEST AL,02HJNZ NEXTMOV AL,04HKCODE: ADD AL,CLCALL PUTBUFPUSH AXKON: CALL DISCALL CLEARCALL CCSCANJNZ KONPOP AXNEXT: INC CLMOV AL,CHTEST AL,08HJZ KERRROL AL,1MOV CH,ALJMP COLUMKERR: JMP BEGINCCSCAN: MOV AL,00HOUT 60H,ALIN AL,62HNOT ALAND AL,03HRETCLEAR: MOV AL,00HOUT 61H,ALRETDIS: PUSH AXMOV SI,3000HMOV DL,0F7HMOV AL,DLAGAIN: OUT 60H,ALMOV AL,[SI]MOV BX,OFFSET TABLE ;取七段代码首址AND AX,00FFHADD BX,AXMOV AL,[BX]OUT 61H,ALCALL DALLYINC SIMOV AL,DLTEST AL,01HJZ OUTROR AL,1MOV DL,ALJMP AGAINOUT: POP AXRETDALLY: PUSH CXMOV CX,0010HT1: MOV AX,0010HT2: DEC AXJNZ T2LOOP T1POP CXRETPUTBUF: MOV SI,DIMOV [SI],ALDEC DICMP DI,2FFFHJNZ GOBACKMOV DI,3003HGOBACK: RETCODE ENDSEND START四思考题:1.对照实验1的内容输出该为七段代码显示。

编写一段程序,将输入开关K0――K3设计成一位十六进制数,输出的值在七段代码上显示出来,即开关K0――K3为0110时,七段代码上显示“6”。

2.编写一个8255接口的程序。

按照实验内容2,8255选通方式触发一次KK1-开关将十六进制1-0FFH分时显示在8个发光二极管上。

例:00000001,00000010,00000011,―――11111110,11111111。

相关文档
最新文档