微机接口实验报告

合集下载

微机接口技术报告

微机接口技术报告

微机原理实验报告实验四 8255A并行接口实验一、实验目的1、学会通过PC总线、驱动器、译码器等在PC机外部扩充新的芯片。

2、了解8255A并行口的工作原理。

3、掌握8255A初始化的程序设计方法。

4、掌握8255A方式0的基本输入/输出和方式1的选通型输入/输出方式的使用方法。

二、实验内容1、使8255A工作于工作方式0,将由C口读入的开关状态从A口输出到LED上显示出来。

断开电源,按虚线连接电路,按图2-1将8255A接入系统。

具体包括:将8255A的CS接I/O地址输出端288H~28FH,C口接逻辑电平开关K0~K7,A口接LED显示电路L0~L7。

2、使8255A工作于方式1,将由A口读入的状态从B口输出到LED上显示出来。

断开电源,按图2-2将8255A接入系统。

具体包括:将8255A的CS接I/O地址输出端288H~28FH,A口接逻辑电平开关K0~K5,B口接LED显示电路L0~L5,C口相应位分别接开关或LED发光二极管。

三、程序流程图实验一:8255A工作于方式0,将C口定义为输入方式,A口定义为输出方式。

程序流程图如图所示。

实验二:每个判断命令前都加入一个按键返回判断。

程序流程图如图四、程序代码实验一程序:PPIA EQU 288HPPIB EQU 289HPPIC EQU 28AHPPICTL EQU 28BHDATA SEGMENTMESS1 DB '8255A IN MODE 0!',0DH,0AH,'$'MESS2 DB 'ENTER ANY KEY RETURN TO DOS!',0DH,0AH,'$' DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV DX,OFFSET MESS1MOV AH,09HINT 21HMOV DX,OFFSET MESS2MOV AH,09HINT 21HMOV DX,PPICTL ;8255A初始化MOV AL,89HOUT DX,ALCOUNT:MOV DX,PPICIN AL,DX ;C口读入MOV DX,PPIAOUT DX,AL ;A口输出MOV AH,06HMOV DL,0FFHINT 21HJZ COUNT ;若有键按下则退出 MOV AX,4C00HINT 21HCODE ENDSEND START实验二程序:PPIA EQU 288HPPIB EQU 289HPPIC EQU 28AHPPICTL EQU 28BHDATA SEGMENTMESS1 DB '8255A IN MODE 0!',0DH,0AH,'$'MESS2 DB 'ENTER ANY KEY RETURN TO DOS!',0DH,0AH,'$' DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV DX,OFFSET MESS1MOV AH,09HINT 21HMOV DX,OFFSET MESS2MOV AH,09HINT 21HMOV DX,PPICTL ;8255A初始化 MOV AL,0B4HOUT DX,ALCOUNT:MOV DX,PPICIN AL,DXAND AL,20HCMP AL,20HJNZ COUNTMOV DX,PPIA IN AL,DXPUSH AX ABC: MOV DX,PPICIN AL,DXAND AL,02HCMP AL,02HJNZ ABCPOP AXMOV DX,PPIBOUT DX,ALMOV AH,06H MOV DL,0FFHINT 21HJZ COUNTMOV AX,4C00HINT 21HCODE ENDSEND START五、实验过程及结果六、实验思考题1、答:A口及B口以方式1工作时,只要不是作为联络线的C口其他位,都可以由程序按位设定为基本的输入输出线,用于传输数据。

微机与接口技术实验报告

微机与接口技术实验报告

微机与接口技术实验报告微机与接口技术实验报告引言微机与接口技术是计算机科学中的重要领域,它涉及到计算机与外部设备之间的通信和数据传输。

本实验报告旨在介绍微机与接口技术的基本概念、实验过程和结果,以及对实验结果的分析和讨论。

一、实验目的本实验旨在通过设计和实现一个简单的数据输入输出接口,加深对微机与接口技术的理解。

具体目标包括:1. 理解接口技术的基本原理和工作方式;2. 掌握接口电路的设计和实现方法;3. 学会使用编程语言控制接口电路进行数据输入输出。

二、实验原理1. 接口技术的基本原理接口技术是计算机与外部设备之间进行数据传输的关键。

通过接口电路,计算机可以与各种外部设备进行通信,实现数据的输入和输出。

接口电路通常由硬件和软件两部分组成,硬件部分负责物理连接和信号转换,而软件部分则负责控制和管理数据传输。

2. 接口电路的设计和实现接口电路的设计需要考虑多个因素,包括外部设备的接口标准、数据传输速率、数据格式等。

常用的接口标准包括串行接口(如RS-232)和并行接口(如Centronics接口)。

设计接口电路时,需要根据具体需求选择合适的接口标准,并合理设计电路结构和信号处理方式。

3. 编程语言控制接口电路为了实现数据的输入和输出,需要使用编程语言控制接口电路。

常用的编程语言包括C、C++和Python等。

通过编写相应的程序,可以控制接口电路进行数据传输,并实现与外部设备的交互。

三、实验过程1. 硬件设计与连接根据实验要求,设计并连接适当的硬件电路,包括接口芯片、电阻、电容等。

确保电路连接正确,且与计算机的接口兼容。

2. 软件编程使用C语言编写程序,实现对接口电路的控制。

程序应能够实现数据的输入和输出,并确保数据的正确传输和处理。

3. 实验操作根据实验要求,进行相应的实验操作。

包括数据输入和输出测试、数据传输速率测试、数据格式转换测试等。

记录实验过程中的数据和结果。

四、实验结果分析1. 数据输入输出测试通过实验操作,测试接口电路的数据输入和输出功能。

微机原理与接口技术实验报告

微机原理与接口技术实验报告

微机原理与接口技术实验报告
本次实验是关于微机原理与接口技术的实验报告,通过本次实验,我们将深入
了解微机原理与接口技术的相关知识,并通过实际操作来加深对这些知识的理解和掌握。

实验一,微机原理。

在本次实验中,我们首先学习了微机的基本原理,包括微机的组成结构、工作
原理和基本功能。

通过实际操作,我们了解了微机的主要组成部分,如中央处理器(CPU)、内存、输入输出设备等,并学习了它们之间的工作原理和相互配合关系。

同时,我们还学习了微机的基本指令系统和数据传输方式,加深了对微机工作原理的理解。

实验二,接口技术。

在接口技术的实验中,我们学习了微机与外部设备之间的接口技术,包括并行
接口、串行接口和通用接口等。

我们通过实际操作,了解了这些接口技术的工作原理和应用场景,学会了如何通过接口技术实现微机与外部设备的数据交换和通信。

实验三,实验综合。

在本次实验的最后,我们进行了一个综合实验,通过实际操作来综合运用微机
原理和接口技术的知识,实现一个具体的功能。

通过这个实验,我们加深了对微机原理与接口技术的理解,掌握了如何将理论知识应用到实际操作中。

总结。

通过本次实验,我们深入学习了微机原理与接口技术的相关知识,并通过实际
操作加深了对这些知识的理解和掌握。

微机原理与接口技术作为计算机科学与技术的基础知识,对我们今后的学习和工作都具有重要意义。

希望通过这次实验,能够对大家的学习和工作有所帮助,并为今后的学习打下坚实的基础。

以上就是本次实验的实验报告,希望对大家有所帮助。

感谢大家的阅读!。

微机原理与接口技术实验报告

微机原理与接口技术实验报告

微机原理与接口技术实验报告实验目的:本次实验旨在通过实际操作,加深对微机原理与接口技术的理解,掌握接口技术的基本原理和应用方法,提高学生的动手能力和实际应用能力。

实验内容:1. 学习并掌握微机原理与接口技术的基本知识;2. 了解并熟悉常见的接口技术及其应用;3. 进行实际操作,设计并完成一个简单的接口电路。

实验仪器与设备:1. 个人电脑;2. 电子元件,电阻、电容、集成电路等;3. 实验板、示波器、示教电脑等。

实验步骤:1. 阅读相关的微机原理与接口技术的教材,了解基本原理;2. 学习常见的接口技术,例如并行接口、串行接口等;3. 进行实际操作,设计一个简单的接口电路,包括硬件设计和软件编程;4. 调试电路,确保接口电路能够正常工作;5. 编写实验报告,总结实验过程和实验结果。

实验结果与分析:经过实际操作,我们成功设计并完成了一个简单的接口电路。

在实验过程中,我们深入理解了微机原理与接口技术的相关知识,掌握了接口技术的基本原理和应用方法。

通过调试电路,我们验证了接口电路的正常工作,加深了对接口技术的理解。

结论:本次实验使我们更加深入地了解了微机原理与接口技术,提高了我们的动手能力和实际应用能力。

通过设计和完成接口电路,我们对接口技术有了更加直观的认识,为今后的学习和工作打下了坚实的基础。

总结:微机原理与接口技术是计算机专业的重要课程,通过实验学习,我们不仅加深了对知识的理解,还提高了动手能力和实际应用能力。

希望同学们能够认真对待每一次实验,不断提升自己的能力,为未来的发展打下坚实的基础。

至此,本次微机原理与接口技术实验报告完毕。

微机接口技术实验报告并行接口实验

微机接口技术实验报告并行接口实验

微机接口技术实验报告并行接口实验系别: 计算机科学与技术完成时间:2012-5-15一、实验目的1.熟悉并行接口电路;2.掌握8255并行接口芯片及8253定时器的应用及其编程技术。

二、实验内容及要求通过对8255芯片的编程,使得实验台上的步进电机按顺时针或逆时方向转动,同时扬声器(模拟电子琴)做高8度和低8度循环发音:1. 控制步进电机转动和电子琴发音;2.使用K0控制步进电机顺逆时针转动和电子琴发高低音;3.使用K1控制步进电机和电子琴速度(分快和慢两种速度);4.使用K2启动和停止步进电机转动和电子琴发音。

三、实验原理1、可编程并行芯片8255A并行接口即同时在多根I/O线上,以数据字节或字为单位实现CPU通过I/O端口与I/O 设备或被控制对象之间的信息传递,如计算机与打印机,A/D和D/A转换器,开关量接口等。

8255及其改进型8255A是最广泛应用的并行I/O接口。

8255A的主要性能参数如下:(1)8255A内共有4个端口,分别为口A、口B、口C和控制端口。

前三个端口为8位并行I/O端口,常用于传送数据信息;控制端口是用于接收CPU送来的控制命令,即控制字。

(2)8255A芯片可以三种不同的工作方式与I/O设备进行数据传输,具体方式由控制字来设定。

(3)8255与CPU之间交互信息可以使用中断方式进行。

它内部有三个中断源,分别产生与方式1(1个)和方式2(2个)中。

(4)8255A所有信号与TTL信号兼容,可直接与CPU的三总线连接使用。

(5)8255A使用单一的+5V电源,单项时钟。

8255A的三种工作方式:方式0——基本的输入/输出方式,方式1——选通的输入/输出方式,方式2——双向的输入/输出方式。

本次实验采用方式0,将口A和口B作为输出,分别控制步进电机的旋转和电子琴的发音,口C作为控制输入端。

根据端口编址及寻址方式,设定端口A的地址为288H,端口B地址为289H,端口C地址为28AH,控制端口的地址为28BH。

微机原理与接口技术实验报告

微机原理与接口技术实验报告

微机原理与接口技术实验报告实验目的:本次实验旨在熟悉并掌握微机原理与接口技术的相关知识,通过实例操作和分析实验数据,加深对微机原理与接口技术的理解。

一、实验器材与软件1. 硬件器材:计算机主机、外设设备2. 软件工具:操作系统、编程软件二、实验步骤及结果分析1. 实验1:计算机开机自检在实验中,通过开机启动计算机,观察计算机进行自检的过程。

根据显示屏上的自检信息,可以判断计算机硬件的工作状态。

2. 实验2:串口通信测试在本实验中,通过串口通信实现计算机与外设设备之间的数据传输。

首先,将串口接口连接到计算机主机,然后进行相应的设置,包括波特率、数据位、停止位和校验位等。

在实验中,通过编写相应的程序,实现计算机与外设设备之间的数据交互。

通过观察实验结果,判断串口通信是否正常。

3. 实验3:并口通信测试本实验旨在通过并行口通信实现计算机与外设设备之间的数据传输。

首先,将并行口接口连接到计算机主机。

然后,根据实验要求进行相应的设置,包括数据总线的宽度、传输模式等。

通过编写程序,实现计算机与外设设备之间的数据交互。

观察实验结果,判断并口通信是否正常。

4. 实验4:USB接口测试在本实验中,通过USB接口实现计算机与外设设备之间的数据传输。

首先,将USB接口连接到计算机主机。

然后,在计算机中安装相应的驱动程序。

通过编写程序,实现计算机与外设设备之间的数据交互。

观察实验结果,判断USB接口是否正常工作。

5. 实验5:网络接口测试本实验旨在通过网络接口实现计算机之间的数据传输。

首先,将计算机连接到局域网中的其他计算机。

然后,进行相应的设置,包括IP地址、子网掩码等。

通过编写程序,实现计算机之间的数据交互。

观察实验结果,判断网络接口是否正常工作。

三、实验总结通过本次实验,我对微机原理与接口技术有了更深入的了解,掌握了串口、并口、USB接口和网络接口等常用接口的使用方法。

通过实验的操作和分析,我对接口通信的原理和实现方式有了更详细的了解,对计算机与外设设备之间的数据传输有了更清楚的认识。

微机原理与接口技术实验报告_5

微机原理与接口技术实验报告_5

实验二初级程序的编写与调试实验一、实验目的1、熟练掌握DEBUG的常用命令,学会用DEBUG调试程序.2、深入了解数据在存储器中的存取方法,及堆栈中数据的压入与弹出.3、掌握各种寻址方法以及简单指令的执行过程.二、实验内容1.设堆栈指针SP=2000H,AX=3000H,BX=5000H,请编一程序段将AX的内容和BX的内容进行交换.请用堆栈作为两寄存器交换内容的中间存储单元,用DEBUG调试程序进行汇编与调试.程序:MOV AX,3000MOV BX,5000MOV SP,2000PUSH AXPUSH BXPOP AXPOP BXHLT2.设DS=当前段地址,BX=0300H,SI=0002H请用DEBUG的命令将存储器偏移地址300H~304H连续单元顺序装入OAH,OBH,OCH,ODH,OEH.在DEBUG状态下送入下面程序,并用单步执行的方法,分析每条指令源地址的形成过程?当数据传送完毕时,AX中的内容是什么?-E 300 0A,0B,0C,0D,0E-AMOV BX,0300MOV SI,0002MOV AX,BXMOV AX,0304MOV AX,[0304]MOV AX,[BX]MOV AX,0001[BX]MOV AX,[BX][SI]MOV AX,0001[BX][SI] HLT3.设AX=0002H,编一个程序段将AX的内容乘10,要求用移位的方法完成. 程序:MOV AX,0002MOV BX,AXMOV CL,2SHL AX,CLADD AX,BXMOV CL,1SHL AX,CLHLT实验四加法及判断程序的编写与调试一、实验目的1.熟练掌握编写汇编语言源程序的基本方法和基本框架.2.学会编写顺序结构,分支结构和循环结构的汇编程序3.掌握程序中数据的产生与输入输出的方法.二、实验内容1.用汇编语言编写一个加法程序:1325+9839请用ASCII码的形式将加数与被加数存放在数据区DATA1和DATA2中,并将相加结果显示输出.程序:DATA SEGMENTDATA1 DB '5','2','3','1'DATA2 DB '9','3','8','9'DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 200 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXLEA SI,DATA1LEA DI,DATA2MOV CX,4MOV AH,0 NEXT:MOV AL,[SI]ADC AL,[DI]ADC AL,AHMOV AH,0AAAADD AL,30HMOV [DI],ALINC DIINC SILOOP NEXTMOV CX,5ADD AH,30HMOV [DI],AH NEXT1:MOV DL,[DI]MOV AH,02INT 21HDEC DILOOP NEXT1MOV AH,4CHINT 21H CODE ENDSEND START2.假设有一组数据:5,-4,0,3,100,-51,请编写一程序,判断:每个数是否大于0?等于0?还是小于0?并输出其判断结果,即即:1当X>0Y=0当X=0-1 当X<0程序:DATA SEGMENTDATA1 DB 5, -4, 0 ,3,100,-51STRING1 DB'Y=1','$'STRING2 DB'Y=0','$'STRING3 DB'Y=-1','$'DATA ENDSSTACK SEGMENT PARA STACK 'STACK'DB 200 DUP(?)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AX,STACKMOV SS,AXLEA SI,DATA1MOV CX,6NEXT: MOV AL,[SI]CMP AL,0JZ NEXT1JNS NEXT2JS NEXT3NEXT1: MOV DX,OFFSET STRING2MOV AH,09HINT 21HJMP NEXT4NEXT2: MOV DX,OFFSET STRING1MOV AH,09HINT 21HJMP NEXT4NEXT3: MOV DX,OFFSET STRING3MOV AH,09HINT 21HNEXT4: INC SILOOP NEXTMOV AH,4CHINT 21HCODE ENDSEND START实验五大小写字母互换程序的编写与调试一、实验目的进一步熟悉汇编语言源程序的编写方法及宏汇编程序的使用方法二、实验内容设内存数据区有大小写混合英文ASCII码字母: ‘AbCdEfGChinaAgriculturalUniversity’。

最新微机接口实验报告

最新微机接口实验报告

最新微机接口实验报告实验目的:1. 熟悉微机接口的基本原理和功能。

2. 掌握微机接口的编程和操作技巧。

3. 通过实验加深对微机接口技术的理解。

实验环境:- 微机接口实验箱- 个人电脑- 相关软件和驱动程序实验内容:1. 实验一:了解微机接口的基本结构和工作原理。

- 学习微机接口的基本概念,包括数据总线、地址总线、控制总线等。

- 观察实验箱中的微机接口模块,识别各部分的功能。

2. 实验二:编写简单的输入输出程序。

- 使用汇编语言或C语言编写程序,实现对微机接口的控制。

- 通过程序实现LED灯的点亮和熄灭,以及按键的读取。

3. 实验三:中断和DMA操作。

- 学习中断的基本概念和处理流程。

- 实现一个基于中断的键盘输入程序。

- 了解DMA的工作原理,并编写相应的数据传输程序。

实验步骤:1. 准备实验环境,确保所有设备和软件均已正确安装和配置。

2. 按照实验指导书的要求,逐步完成各个实验项目。

3. 在实验过程中记录关键步骤和结果,以便撰写实验报告。

4. 对遇到的问题进行分析和解决,记录解决方案。

实验结果:1. 成功理解微机接口的基本结构和功能。

2. 编写的输入输出程序能够正确控制LED灯和读取按键状态。

3. 中断和DMA操作实验顺利完成,实现了预期的功能。

实验结论:通过本次实验,加深了对微机接口技术的理解,掌握了基本的编程和操作技能。

实验中遇到的问题和挑战也有助于提高解决问题的能力。

通过实践,更加明确了理论知识与实际应用之间的联系。

建议和反思:- 在实验过程中,应更加注重对理论知识的应用,以提高实验效率。

- 对于复杂的问题,应采取分步解决的策略,避免在实验中出现混乱。

- 未来应加强实验前的准备工作,确保实验能够顺利进行。

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

微机接口实验报告
实验一:I/O地址译码
一、实验目的
掌握I/O 地址译码电路的工作原理。

二、实验原理和内容
实验电路如图(1)所示,其中74LS74 为D 触发器,可直接使用实验台上数字电路实验区的D 触发器,74LS138 为地址译码器。

译码输出端Y0~Y7 在实验台上I/O 地址输出端引出,每个输出端包含8 个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU 执行I/ O 指令且地址在280H~2BFH 范围内,译码器选中,必有一根译码线输出负脉冲。

例如:执行下面两条指令
Y4 输出一个负脉冲,执行下面两条指令
MOV DX, 2A0H
OUT DX,AL(或IN AL,DX)
Y5 输出一个负脉冲。

MOV DX,2A8H
OUT DX,AL(或IN AL,DX)
利用这个负脉冲控制L7 闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。

三、实验程序
L1: MOV DX, 2A0H//选通74LS138的11口
OUT DX, AL//使端口A输出,给D触发器一个时钟信号
LOOP $//延时
LOOP $//延时
MOV DX, 2A8H//选用74LS138的10口
OUT DX, AL//使D触发器清零
LOOP $//延时
LOOP $//延时
MOV AH, 11//十一号功能调用
INT 21H//如果有键按下
INC AL//AL加一,退出循环
JNZ L1// 如果没键按下,则继续循环
四、总结
第一次实验比较简单、主要是学会了通过程序控制芯片及其端口的选通,其方法是根据芯片外围搭建的电路使DX进行写或读的操作、例如本实验里,要想选通74LS138的11口操作8255的端口A,则需要使A9A8A7A6A5A4A3A2A1A0=1010100000=2A0H,同理操作10口时,则使DX=2A8H,再加上延时DELAY功能,即可使LED灯循环亮灭。

但是如果不给芯片断电,则LED灯会一直循环,不能进进行人为的控制,所以又在后面加上了11号功能调用,只要当AL=0,循环结束。

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

二、实验内容
实验电路如图,8255C口接逻辑电平开关K0~K7,A 口接LED 显示电路L0~L7。

编程从8255C口输入数据,再从A口输出。

三、编程提示
1、8255 控制寄存器端口地址28BH
A 口的地址288H
C 口的地址28AH
2、参考流程图
四、实验程序
MOV DX,28BH//写端口C
MOV AL , 10001001B
OUT DX, AL //8255初始化
L1:MOV DX, 28AH
IN AL,DX //读取C口数据
MOV DX, 288H//写端口A
OUT DX,AL //从A口输出
MOV AH,11//十一号功能调用
INT 21H
INC AL
JNZ L1
MOV AH, 4CH
INT 21H
五、实验总结
这个实验可以看作是第一个实验的加强,同样也考验的是对端口的读写操作,因为有了第一次实验的经验、所以这次实验特别顺利,没有出现什么问题。

实验三:七段数码管静态显示
一、实验目的
掌握数码管显示数字的原理
二、实验内容
静态显示:按图1连接好电路,将8255 的A 口PA0~PA6 分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1 接+5V(选中),S0、dp 接地(关闭)。

编程从键盘输入一位十进制数字(0~9),在七段数码管上显示出来。

图1 图2
三、编程提示
1、实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。

2、段数码管的字型代码表如下表:
3、参考流程图(见图3)
四、实验程序
LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
//建立表格用于显示数字MOV DX,28BH//写控制字寄存器
MOV AL, 10000000B//使端口C按方式0输出
OUT DX,AL//8255初始化,A口为输出L2:MOV AH, 1
INT 21H
CMP AL,30H//和0比较
JB L1//小于则结束程序
CMP AL,39H//和9比较
JA L1//大于则结束程序
SUB AL,30H//ASCII码减30得到对应数字
MOV BX,OFFSET LED//将表LED的首地址赋值给BX
ADD BL, AL//将AL的值加给BL
ADC BH, 0
MOV AL, [BX]//查表
MOV DX, 288H//通过A口输出
OUT DX, AL
JMP L2//继续循环
L1:MOV AH, 4CH
INT 21H
五、实验总结
因为以前在学习单片机和FPGA的时候都做过静态数码管的实验,所以实验原理已经非常了解了,这里的难点就是用汇编语言来实现。

首先,要建立一个表以便于快速得到数字对应的数码管的值;其次写一个比较程序来确定输入的值是否是自然数;然后再通过ASCII码减30即可得到这个数的值,经过查表就可以输出了,实验思路清晰,所以做起来并不难。

实验四:七段数码管动态显示
一、实验目的
掌握数码管显示数字的原理
二、实验内容
动态显示:按图2连接好电路,七段数码管段码连接不变,位码驱动输入端S1,S0 接8255 C 口的PC1,PC0。

编程在两个数码管上显示56。

三、参考流程图
四、实验程序
MOV DX, 28BH//写控制字寄存器
MOV AL, 80H//使端口C按方式0输出
OUT DX, AL
L1: MOV DX, 28AH//写端口C
MOV AL, 01H//控制第一个数码管的位码OUT DX, AL
MOV DX, 288H//写端口A
MOV AL, 7DH//使第一个数码管显示6
OUT DX, AL
CALL DEALY//延时
MOV DX, 28AH//写端口C
MOV AL, 02H//控制第二个数码管的位码OUT DX, AL
MOV DX, 28BH//写端口A
MOV AL, 6DH//使第一个数码管显示5
CALL DELAY//延时
MOV AH,11//十一号功能调用
INT 21H
INC AL
JNZ L1
MOV AH, 4CH
INT 21H
DELAY PROC//延时子程序
MOV CX, 00FFH
-/
D2:MOV BX, 00FFH
D1:PUSH AX
PUSH DX
POP DX
POP AX
DEC BX
JNZ D1
LOOP D2
RET
DELAY ENDP
五、实验总结
在做完了静态数码管之后,我尝试做了一下动态数码管。

再画了动态数码管流程图之后实验思路非常清晰,主要是要先选择端口C来控制位码,再选择端口A来控制段码,并且在两个数码管之间加入延时程序。

一开始写完程序后发现两只数码管都显示5,后来发现是因为在控制第二只数码管的位码时第一只数码管的位码并没有关闭,所以第一只数码管也显示了5,在发现问题后对程序进行了修改,实验现象就显现了。

相关文档
最新文档