接口实验报告
- 格式:docx
- 大小:506.06 KB
- 文档页数:16
接口技术实验报告接口技术实验报告导言:接口技术在现代科技发展中扮演着重要的角色。
它是不同系统之间进行数据交换和通信的桥梁,为各种设备和软件提供了互联互通的能力。
本实验旨在通过实际操作,深入了解接口技术的原理和应用。
一、实验目的本次实验的目的是探索接口技术在实际应用中的作用和效果。
通过搭建一个简单的接口系统,我们可以了解接口的基本原理、数据传输方式以及如何进行接口的配置和测试。
二、实验设备和材料本次实验所需的设备和材料包括:一台计算机、一个串口转USB线缆、一块开发板、一根网线。
三、实验步骤1. 连接计算机和开发板将串口转USB线缆的USB接口插入计算机的USB接口,然后将串口转USB线缆的串口接口插入开发板的串口接口上。
2. 配置串口参数打开计算机的设备管理器,找到串口转USB线缆所对应的串口号,记录下来。
然后打开开发板上的串口配置界面,将串口号设置为与计算机上一致。
3. 编写测试程序使用C语言编写一个简单的测试程序,通过串口与开发板进行通信。
程序中包括发送数据和接收数据的功能,可以进行双向通信测试。
4. 运行测试程序将编写好的测试程序下载到开发板上,然后在计算机上运行相应的接收程序。
通过观察计算机上的输出和开发板上的LED灯状态,判断数据的传输是否成功。
5. 测试结果分析根据实际测试结果,分析接口技术的稳定性和可靠性。
如果数据传输成功率较高,说明接口配置正确,接口技术应用良好。
四、实验结果与讨论通过本次实验,我们成功搭建了一个简单的接口系统,并进行了数据传输测试。
实验结果显示,接口技术在数据传输方面表现出较高的稳定性和可靠性。
通过合理的配置和编程,我们能够实现计算机与外部设备之间的数据交换和通信。
接口技术的应用范围非常广泛,涉及到计算机、通信、自动化控制等领域。
例如,USB接口被广泛应用于外部设备的连接,如打印机、扫描仪等;串口接口则常用于嵌入式系统和单片机的通信;网口接口则用于实现计算机之间的局域网通信等等。
最新精选全文完整版(可编辑修改)《计算机接口技术》实验报告专业:电信息科学与技术班级:姓名:学号:年月日实验一:8255A并行口实验实验目的:掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。
实验内容:一、实验原理实验原理图如图5-9所示,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。
二、实验线路连接(1) CS-8255插孔连译码输出Y7插孔。
(2) L1 - PC4 L4 - PC5 L7 - PC6 L10 - PC7L2 - PB4 L5 - PB5 L8 - PB6 L11 - PB7L3 - PC0 L6 - PC1 L9 - PC2 L12 - PC3三、实验软件清单见随机光盘,文件名为H8255-2.ASM四、实验步骤1、按图5-9连好实验线路2、运行实验程序在DVCC-8086JHN上显示"8255-2"。
同时L1~L12 发光二极管模拟交通灯显示。
CODE SEGMENTASSUME CS:CODEIOCONPT EQU 0073H ;设置控制端常量IOAPT EQU 0070H ;设置数据端口A地址常量IOBPT EQU 0071H ;设置数据端口B地址常量IOCPT EQU 0072H ;设置数据端口C地址常量IOBDATA EQU 0500HCONTPORT EQU 00DFHDA TAPORT EQU 00DEHDA TA1 EQU 0640HSTART: JMP IOLEDIOLED: CALL FORMATCALL LEDDISPMOV AX,0HMOV DS,AXMOV AL,82HMOV DX,IOCONPT ;写8255控制字,三个口均工作于方式0OUT DX,AL ;往控制端口写控制字,设置A口工作在方式0输入,B方式0输出MOV DX,IOBPT ;读PB口数据存0601H单元IN AL,DXnot almov al,00hnopnopMOV BYTE PTR DS:[0501H],ALMOV DX,IOCONPT ;写方式控制字均为输出MOV AL,80HOUT DX,ALMOV DX,IOBPT ;置PB0,PB4~PB6为1,其余为0MOV AL,DS:[0501H]OR AL,0FH ;使PB0~PB3为1,PB4~PB7为0OUT DX,AL ;即熄灭红灯,点亮绿灯MOV DX,IOCPT ;使PC1,PC4~PC6为1,其余为0MOV AL,0FH ;使PC0~PC3为1,PC4~PC7为0OUT DX,ALCALL DELAY1 ;延时IOLED0: MOV AL,01011010B ;使2,4路口绿灯亮,1,3口红灯亮MOV DX,IOCPTOUT DX,ALCALL DELAY1CALL DELAY1and AL,0FH ;灭2,4路口绿灯OUT DX,ALMOV CX,8H ;只计数器值为8IOLED1: MOV DX,IOBPTMOV AL,DS:[0501H]or AL,01011111B ;点亮2,4路口黄灯OUT DX,ALCALL DELAY2 ;短暂延时and AL,00000000B ;灭掉黄灯OUT DX,ALCALL DELAY2LOOP IOLED1 ;黄灯闪烁8次MOV DX,IOCPTMOV AL,0FH ;点亮4个绿灯,灭掉4个红灯OUT DX,ALCALL DELAY2MOV AL,10100101B ;点亮1,3口红灯和2,4路口绿灯OUT DX,ALCALL DELAY1CALL DELAY1and AL,0FH ;灭掉红灯OUT DX,ALMOV CX,8HIOLED2: MOV DX,IOBPTMOV AL,DS:[0501H]or AL,10101111B ;点亮1,3路口黄灯OUT DX,ALCALL DELAY2and AL,00000000B ;灭掉黄灯OUT DX,ALCALL DELAY2LOOP IOLED2MOV DX,IOCPTMOV AL,0FH ;点亮4个绿灯,灭掉4个红灯OUT DX,ALCALL DELAY2JMP IOLED0 ;循环DELAY1: PUSH AXPUSH CX ;延时子程序MOV CX,0030HDELY2: CALL DELAY2LOOP DELY2POP CXPOP AXRETDELAY2: PUSH CXMOV CX,8000HDELA1: LOOP DELA1POP CXRETLEDDISP:MOV AL,90HMOV DX,CONTPORTOUT DX,ALMOV BYTE PTR DS:[0600H],00LED1: CMP BYTE PTR DS:[0600H],07H JA LED2MOV BL,DS:[0600H]MOV BH,0HMOV AL,CS:[BX+DATA1]MOV DX,DATAPORTOUT DX,ALADD BYTE PTR DS:[0600H],01HJNZ LED1LED2: RETFORMAT: MOV BX,0MOV WORD PTR DS:[BX+0640H],405BHADD BX,2MOV WORD PTR DS:[BX+0640H],4040HADD BX,2MOV WORD PTR DS:[BX+0640H],6D6DH ADD BX,2MOV WORD PTR DS:[BX+0640H],7F5BHRETCODE ENDSEND START实验二:定时/计数器实验目的:1. 学会8253芯片和微机接口原理和方法。
实验名称:编程接口技术应用实验日期:2023年X月X日实验地点:XX大学计算机实验室实验目的:1. 理解编程接口的基本概念和作用。
2. 掌握编程接口的常见类型及其应用场景。
3. 学会使用编程接口进行实际项目开发。
实验内容:一、实验背景随着计算机技术的飞速发展,编程接口(API)已成为软件开发中不可或缺的一部分。
编程接口允许不同的软件组件之间进行通信,提高了软件的可重用性和扩展性。
本实验旨在通过实际操作,加深对编程接口的理解和应用。
二、实验环境1. 操作系统:Windows 102. 开发工具:Visual Studio 20193. 编程语言:C#三、实验步骤1. 理解编程接口的基本概念编程接口是指一组预定义的函数、类、方法和数据结构,用于实现不同软件组件之间的交互。
编程接口包括以下几种类型:(1)函数接口:通过函数声明和函数调用实现接口。
(2)类接口:通过类定义和对象创建实现接口。
(3)接口:通过接口定义和实现接口实现接口。
2. 学习常见编程接口(1).NET Framework API:提供丰富的类库,包括Windows窗体、WPF、 等。
(2)Java API:提供Java标准库、Java Web开发库等。
(3)Python API:提供Python标准库、第三方库等。
3. 使用编程接口进行实际项目开发(1)创建一个简单的Windows窗体应用程序。
(2)在应用程序中添加一个按钮,并为按钮添加点击事件处理程序。
(3)在事件处理程序中,使用编程接口实现以下功能:- 显示一个消息框,提示用户“按钮被点击了!”。
- 获取当前时间,并显示在应用程序的标签控件中。
4. 实验结果与分析通过本实验,我们成功创建了一个简单的Windows窗体应用程序,并实现了以下功能:- 使用函数接口实现按钮点击事件处理。
- 使用.NET Framework API显示消息框。
- 使用.NET Framework API获取当前时间,并显示在标签控件中。
一、实验目的1. 了解接口地址的概念和作用。
2. 掌握接口地址的制作方法。
3. 提高网络编程能力。
二、实验环境1. 操作系统:Windows 102. 编程语言:Python3.83. 网络工具:Wireshark三、实验原理接口地址,即IP地址,是计算机网络中用于标识每个网络设备的地址。
在互联网中,每个设备都需要一个唯一的IP地址才能进行通信。
接口地址的制作主要包括公网IP地址和私有IP地址。
1. 公网IP地址:由互联网服务提供商(ISP)分配,用于在互联网中唯一标识一个设备。
2. 私有IP地址:用于局域网内部,不会在互联网中公开。
四、实验步骤1. 制作公网IP地址(1)使用Python的socket库获取本机的公网IP地址。
```pythonimport socketdef get_public_ip():try:s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)s.connect(('8.8.8.8', 80))ip = s.getsockname()[0]except Exception as e:print("获取公网IP地址失败:", e)finally:s.close()return ippublic_ip = get_public_ip()print("公网IP地址:", public_ip)```(2)使用Wireshark抓包工具验证公网IP地址。
2. 制作私有IP地址(1)使用Python的socket库获取本机的私有IP地址。
```pythonimport socketdef get_private_ip():try:s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect(('192.168.1.1', 80))ip = s.getsockname()[0]except Exception as e:print("获取私有IP地址失败:", e)finally:s.close()return ipprivate_ip = get_private_ip()print("私有IP地址:", private_ip)```(2)使用Wireshark抓包工具验证私有IP地址。
一、实验目的1. 了解光纤接口的基本原理和结构。
2. 掌握光纤接口的测试方法和性能指标。
3. 熟悉光纤连接器的使用和维护。
4. 通过实验,加深对光纤通信原理的理解。
二、实验原理光纤接口是光纤通信系统中连接光纤与光纤、光纤与设备的关键部件。
其主要功能是实现光信号的传输和转换。
本实验主要研究单模光纤接口,包括光纤连接器、光纤耦合器、光纤适配器等。
光纤连接器是连接两根光纤的部件,常用的连接器有FC、SC、LC、ST等类型。
光纤耦合器用于连接两根或多根光纤,实现光信号的合并或分离。
光纤适配器用于连接不同类型的光纤连接器。
三、实验仪器与设备1. 光纤测试仪2. 光纤连接器(FC、SC、LC、ST等)3. 光纤耦合器4. 光纤适配器5. 光纤跳线6. 光纤光源7. 光功率计8. 光纤显微镜四、实验步骤1. 光纤连接器连接测试(1)将两根光纤分别插入FC连接器中。
(2)使用光纤测试仪检测两根光纤之间的连接质量,包括插入损耗、回波损耗等指标。
(3)记录测试数据,分析连接质量。
2. 光纤耦合器测试(1)将两根光纤分别插入光纤耦合器中。
(2)使用光纤测试仪检测两根光纤之间的耦合效果,包括耦合效率、插入损耗、回波损耗等指标。
(3)记录测试数据,分析耦合效果。
3. 光纤适配器测试(1)将不同类型的光纤连接器分别插入光纤适配器中。
(2)使用光纤测试仪检测适配器连接质量,包括插入损耗、回波损耗等指标。
(3)记录测试数据,分析适配器连接质量。
4. 光纤连接器外观检查(1)使用光纤显微镜观察光纤连接器的外观,检查光纤端面是否平整、是否有划痕等。
(2)记录观察结果。
五、实验结果与分析1. 光纤连接器连接测试结果显示,插入损耗和回波损耗均在可接受范围内,连接质量良好。
2. 光纤耦合器测试结果显示,耦合效率较高,插入损耗和回波损耗均在可接受范围内,耦合效果良好。
3. 光纤适配器测试结果显示,适配器连接质量良好,插入损耗和回波损耗均在可接受范围内。
p1口输入输出实验报告p1口输入输出实验报告引言:计算机科学领域的发展使得我们能够使用各种各样的设备与计算机进行交互。
而在这个过程中,输入输出接口的设计和实现显得尤为重要。
本篇文章将围绕p1口输入输出接口展开讨论,介绍其原理、实验过程以及实验结果。
一、p1口输入输出接口的原理p1口是一种通用输入输出接口,它可以连接各种外部设备,如键盘、鼠标、打印机等。
p1口的原理是通过电信号的传输来实现与外部设备的交互。
具体来说,p1口通过发送和接收电压信号来进行通信,从而实现输入输出的功能。
二、实验过程1. 准备工作在进行实验前,我们需要准备一台计算机和一些外部设备,如键盘、鼠标和打印机。
将这些设备连接到计算机的p1口上。
2. 输入实验首先,我们进行输入实验。
在连接好设备后,我们可以通过键盘向计算机输入一些字符。
计算机会将这些字符接收并进行处理。
我们可以通过编写一个简单的程序来实现字符的显示和处理。
在程序中,我们可以使用相应的函数来获取键盘输入,并将其显示在屏幕上。
通过这个实验,我们可以验证p1口的输入功能是否正常工作。
3. 输出实验接下来,我们进行输出实验。
在程序中,我们可以使用相应的函数来控制打印机输出指定的内容。
通过这个实验,我们可以验证p1口的输出功能是否正常工作。
4. 实验结果通过实验,我们可以得出以下结论:- p1口的输入功能正常工作,可以准确地接收键盘输入的字符。
- p1口的输出功能正常工作,可以控制打印机输出指定的内容。
三、实验总结p1口作为一种通用输入输出接口,具有广泛的应用。
通过本次实验,我们对p1口的原理和功能有了更深入的了解。
p1口的输入功能可以使计算机接收外部设备的输入信号,从而实现与用户的交互。
p1口的输出功能可以使计算机控制外部设备进行相应的操作,从而实现对外部环境的影响。
在今后的学习和工作中,我们可以进一步探索p1口的应用,提高计算机与外部设备的交互效率。
结语:通过本次实验,我们对p1口输入输出接口有了更深入的理解。
第1篇一、实验目的1. 理解接口的概念和作用。
2. 掌握接口的基本用法,包括接口的定义、实现和实现类。
3. 通过实际操作,加深对接口的理解和应用。
二、实验环境1. 操作系统:Windows 102. 开发工具:IntelliJ IDEA3. 编程语言:Java三、实验内容1. 接口的基本概念2. 接口的定义与实现3. 接口的多态性4. 接口的应用示例四、实验步骤1. 接口的基本概念(1)打开IntelliJ IDEA,创建一个新的Java项目。
(2)在项目下创建一个包,命名为“com.example”,用于存放实验代码。
(3)在包下创建一个接口,命名为“IAnimal”,用于定义动物的基本行为。
```package com.example;public interface IAnimal {void eat();void sleep();}```2. 接口的定义与实现(1)在“com.example”包下创建一个类,命名为“Dog”,实现“IAnimal”接口。
```package com.example;public class Dog implements IAnimal {@Overridepublic void eat() {System.out.println("狗吃肉");}@Overridepublic void sleep() {System.out.println("狗睡觉");}}```(2)在“com.example”包下创建另一个类,命名为“Cat”,实现“IAnimal”接口。
```package com.example;public class Cat implements IAnimal {@Overridepublic void eat() {System.out.println("猫吃鱼");}@Overridepublic void sleep() {System.out.println("猫睡觉");}}```3. 接口的多态性(1)在主类“Main”中创建一个方法,用于测试接口的多态性。
java接口实验报告实验报告:Java接口实验一、实验目的通过本次实验,我们希望达到以下目的:1. 深入理解Java接口的概念、特点和用途。
2. 掌握如何定义、实现和使用接口。
3. 理解接口在多态性中的作用。
4. 掌握如何使用接口来设计可扩展的代码。
二、实验内容1. 定义一个接口,并实现该接口。
2. 使用接口实现多态性。
3. 通过接口设计可扩展的代码。
三、实验步骤及结果步骤1:定义一个接口首先,我们定义一个名为"Shape"的接口,该接口包含一个计算面积的方法。
```javapublic interface Shape {double getArea();}```步骤2:实现接口接下来,我们创建两个类(Circle和Rectangle),分别实现Shape接口。
每个类都提供了一个计算面积的方法。
Circle类:```javapublic class Circle implements Shape {private double radius;private static final double PI = ;public Circle(double radius) {= radius;}Overridepublic double getArea() {return PI radius radius;}}```Rectangle类:```javapublic class Rectangle implements Shape {private double width;private double height;public Rectangle(double width, double height) {= width;= height;}Overridepublic double getArea() {return width height;}}```步骤3:使用接口实现多态性现在,我们创建一个名为"ShapeDisplay"的类,该类接受一个Shape对象,并使用该对象的getArea方法来计算面积。
实验名称:系统接口设计与实现实验日期:2023年3月10日实验地点:计算机实验室一、实验目的1. 理解系统接口的概念和作用。
2. 掌握系统接口的设计原则和实现方法。
3. 学会使用常用的接口技术,如API、Web服务等。
4. 提高编程能力和团队协作能力。
二、实验内容1. 系统接口概述2. 系统接口设计3. 系统接口实现4. 系统接口测试三、实验原理系统接口是软件系统中各个模块之间进行交互的桥梁,它定义了模块之间通信的规则和方式。
良好的系统接口设计可以提高系统的可维护性、可扩展性和可复用性。
四、实验步骤1. 系统接口概述首先,我们需要了解系统接口的概念和作用。
系统接口是软件系统中各个模块之间进行交互的桥梁,它定义了模块之间通信的规则和方式。
良好的系统接口设计可以提高系统的可维护性、可扩展性和可复用性。
2. 系统接口设计(1)确定接口需求:根据系统需求分析,确定各个模块之间需要交互的数据和功能。
(2)定义接口规范:根据接口需求,定义接口的输入、输出参数、返回值等。
(3)设计接口协议:根据接口规范,设计接口的通信协议,包括数据格式、传输方式等。
(4)编写接口文档:将接口规范和协议整理成文档,以便其他开发者理解和使用。
3. 系统接口实现(1)选择编程语言:根据项目需求和团队熟悉程度,选择合适的编程语言进行接口实现。
(2)编写接口代码:根据接口规范和协议,编写接口代码,实现模块之间的交互。
(3)测试接口:编写测试用例,对接口进行测试,确保接口功能的正确性和稳定性。
4. 系统接口测试(1)编写测试用例:根据接口规范和协议,编写测试用例,涵盖接口的所有功能。
(2)执行测试用例:使用测试工具或手动执行测试用例,检查接口的输出是否符合预期。
(3)分析测试结果:对测试结果进行分析,找出接口中存在的问题,并进行修复。
五、实验结果与分析1. 实验结果本次实验成功实现了系统接口的设计与实现,包括接口需求分析、接口规范定义、接口协议设计、接口代码编写和接口测试。
一、实验目的1. 了解人机接口的基本概念和原理。
2. 掌握常见的人机交互设备的使用方法。
3. 通过实验,提高人机交互系统的设计能力和实际操作能力。
二、实验内容1. 人机接口基本概念和原理2. 常见的人机交互设备操作3. 人机交互系统设计三、实验环境1. 硬件环境:计算机、键盘、鼠标、触摸屏、显示器、打印机等。
2. 软件环境:操作系统、应用程序等。
四、实验步骤1. 人机接口基本概念和原理学习(1)了解人机接口的定义、作用和分类;(2)学习人机交互设备的原理和特点;(3)分析人机接口设计的原则和方法。
2. 常见的人机交互设备操作(1)键盘操作:学习键盘布局、按键功能、快捷键的使用;(2)鼠标操作:学习鼠标的基本操作、滚轮使用、鼠标指针的移动和定位;(3)触摸屏操作:学习触摸屏的原理、操作方法和注意事项;(4)显示器操作:了解显示器的分辨率、刷新率、色彩调整等参数;(5)打印机操作:学习打印机的连接、设置、打印文档等操作。
3. 人机交互系统设计(1)分析用户需求,确定人机交互系统的功能;(2)设计人机交互系统的界面布局、操作流程和交互方式;(3)实现人机交互系统功能,并进行测试和优化。
五、实验结果与分析1. 实验结果通过本次实验,我们掌握了人机接口的基本概念和原理,熟悉了常见的人机交互设备的操作方法,并成功设计了一个简单的人机交互系统。
2. 实验分析(1)人机接口是计算机系统的重要组成部分,直接影响用户的使用体验。
因此,在进行人机接口设计时,要充分考虑用户的需求,确保界面简洁、操作方便;(2)人机交互设备的选择和配置应根据实际应用场景和用户需求进行,以提高系统性能和用户体验;(3)在设计人机交互系统时,要遵循一定的设计原则,如一致性、直观性、易用性等,以降低用户的学习成本和误操作概率。
六、实验总结本次实验使我们对人机接口有了更深入的了解,提高了人机交互系统的设计能力和实际操作能力。
在今后的学习和工作中,我们将继续关注人机接口技术的发展,不断优化人机交互系统,为用户提供更好的使用体验。
接口实验报告一、实验目的掌握I/O地址译码电路的工作原理。
二、实验内容将接口实验包中所带的EX-138.DSN文件用ISIS 7打开。
如图2-1-1所示。
图2-1-1 138实验图其中74LS273是一种带清除功能的8D触发器,D0~D7为数据输入端,Q0~Q7为数据输出端,在本8086的实验中用作地址锁存器。
第一脚MR:主清除端,低电平触发,即当为低电平时,芯片被清除,输出全为0;第11脚CLK:触发端,上升沿触发,即当CLK 从低到高电平时,D0~D7的数据通过芯片,为0时将数据锁存,D0~D7的数据不变。
1.连接AD4~AD9等几根线,使得138译码器Y0#~Y7#译码出的地址依次分别是Y0#:200H~20FH; Y1#:210H~21FH;……;Y7#:270h~27FH2.利用Source->Add/Remove Source files中添加源程序EX-138.ASM(在实验包中已提供),该程序向240H端口写任意数据。
如果是第一次运行,Source Code Filename这一项选New来调入源程序。
如图2-1-2所示图2-1-2 添加源程序3.在Source菜单下点击“Build All”,汇编源代码(全部编译);执行程序,查看Y0~Y7中是否Y4#脚输出为有效(管脚出的有颜色的小方块为红色是高电平,蓝色为低电平),如图2-1-3所示。
图2-1-3 输出结果4.改变程序中的输出地址,使得Y0#, Y1#,Y6#,Y7#分别有效。
.8086.MODEL SMALL.stack.dataaddress word 260h //使Y6#有效,Y1#有效为210h,Y7#有效为270h,Y0#有效为200h.codestart:mov ax,@datamov ds,axmov dx,addressmov al,0out dx,aljmp $END start5.改变A9~A3的接线方法,从而得到Y0;388H~38FH;Y1:398H~39FH; ……;Y7:3F8H~3FFH。
并修改上一问的程序,以同样使得Y4#有效。
address 改为3CH,Y4#即能显示实验二可编程中断控制器8259一、实验目的1.掌握8259的基本工作原理和编程方法。
2.深入了解中断的概念和实地址模式下中断处理程序的编写方法。
二、实验内容将接口实验包中所带的EX-8259.DSN文件用ISIS 7打开。
1.按图2-2-1,添加相关电路到所打开的电路中。
其中包含的电阻(RES),开关(SWITCH),8259A,电源(POWER),地(GROUND)等元件在打开的文件的对象选择器窗口中都有,大家直接选取使用。
注意,由于模拟器软件的问题,因此所有接口实验的端口地址都必须是偶数地址,即系统地址线的A1线接接口芯片的A0线,系统线的A0线不接。
以后的实验均遵循这一规定。
图2-2-1 8259A的电路中断处理程序.8086.model small.stack.datacome BYTE 00000000B.codestart:mov ax,@datamov ds,axclimov ax,0 ; init interrupt vector TABLE mov es,axmov si,0 ;mov cx,255l: mov ax,offset int0mov es:[si],axmov ax,seg int0mov es:[si+2],axadd si,4loop lmov ax,offset int0mov es:[si],axmov ax,seg int0mov es:[si+2],axmov ax,2562hint 21hmov ax,@datamov ds,axmov al,00010011b ; init 8259mov dx,210hout dx,al ; ICW1mov al,60hmov dx,212hout dx,al ; ICW2mov ax,00000001hout dx,al ; ICW4mov ax,0out dx,al ; OCW1stijmp $int0 procpush axpush dxpush dsmov al, come ;inc almov come, almov al,20h ;mov dx,210hout dx,alpop dspop dxpop axiretint0 endpEND start2.汇编好程序后,在中断处理程序的第一条指令处设置断点(如图2-2-2所示),然后执行程序,用鼠标左键按接在8259A上的按钮,观察没按一次,进入中断处理程序中的现象,并通过查看内存或AX寄存器,来观察计数器COME每次中断加1在inc al 处设置断点下面是AX值的变化,表明中断进入,加1实验三可编程定时器计数器8253一、实验目的掌握8253的基本工作原理、编程方法及其应用。
二、实验内容信号发生器1.将接口实验包中所带的EX-8253-2.DSN文件用ISIS 7打开,图中除了8086基本实验系统和一个8253外,还提供了一个1MHz的时钟给CLK0,另外还放置了一个数字示波器。
要求做一个波形发生器,利用1MHz的时钟和8253的三个定时/计数器产生三个波形:1)1秒为周期,占空比1:2的方波,从示波器A通道输出;2)5秒为周期,占空比为2:5的方波,从示波器B通道输出;3)5秒为周期的波形,其中前2秒频率为1KHz的方波,后3秒为低电平(需要加上一些基本门电路),从示波器C通道输出。
如图2-3-3所示。
2.根据上述题目,连接好电路图,必要的时候增加基本的门电路。
3.编写程序EX-8253-2.ASM,完成波形发生器的软件部分将8253计数器0设置为方式0,计数器初值设置为N(N≤10)。
.8086.model small.codestart:mov al,00110111Bmov dx,226hout dx,almov ax,1000hmov dx,220hout dx,almov al,ahout dx,almov al,01110111Bmov dx,226hout dx,almov dx,222hmov ax,1000hout dx,almov al,ahout dx,almov al,10010111Bmov dx,226hout dx,almov dx,224hmov al,05hout dx,aljmp $end start4.运行程序,调整示波器的相关旋钮,观察波形。
实验五七段数码管实验一、实验目的掌握数码管显示数字的原理,进一步复习8255的应用。
二、实验内容1.动态显示。
将接口实验包中所带的EX-8255-2.DSN文件用ISIS 7打开,将8255的A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连(方式0),位码驱动输入端S2、S1接8255 C口的PB1、PB0。
PC0~0C7分别接开关K1~K8,开关合上为0,断开为1,在七段数码管上显示开关K8-K1八位二进制数的十六进制形式。
三)编程提示1.模拟器中我们给大家选择的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中,S2=1选中十位,S1=1选中个位。
2.七段数码管的字型代码表如表2-5-1:显示字形g f e d c b a 段码0 0 1 1 1 1 1 1 3fh1 0 0 0 0 1 1 0 06h2 1 0 1 1 0 1 1 5bh3 1 0 0 1 1 1 1 4fh4 1 1 0 0 1 1 0 66h5 1 1 0 1 1 0 1 6dh6 1 1 1 1 1 0 1 7dh7 0 0 0 0 1 1 1 07h8 1 1 1 1 1 1 1 7fh9 1 1 0 1 1 1 1 6fhA 1 1 1 0 1 1 1 77hB 1 1 1 1 1 0 0 7chC 0 1 1 1 0 0 1 39hD 1 0 1 1 1 1 0 5ehE 1 1 1 1 0 0 1 79hF 1 1 1 0 0 0 1 71h3.对于两位数码管的控制流程如图16所示。
两位数码管输出十位数的段码S2<=1延迟0.01秒S2<=0输出个位数的段码S1<=1延迟0.01秒S1<=0 N图16三、解决方案电路图:代码:.8086.model small.stack.datadata1 BYTE 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h data2 BYTE ?.codestart:mov ax,@datamov ds,axmov al,10001001Bmov dx,206hout dx,al;SHIWEIA:mov dx,204hin al,dxmov data2,alAND al,0F0Hshr ax,1shr ax,1shr ax,1shr ax,1mov bx,offset data1xlatmov bl,almov al,02h ;choose shiweimov dx,202hout dx,almov dx,200hmov al,blout dx,al;yanchimov cl,64hloop $;GEWEImov al,data2and al,0fhmov bx,offset data1xlatmov bl,almov al,01h ;choose geweimov dx,202hout dx,almov al,blmov dx,200hout dx,al;yanchimov cl,64hloop $jmp Ajmp $end start运行结果:实验六交通灯控制实验一)实验目的通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用和中断的使用。
二)交通灯变化规律十字路口交通灯的变化规律要求1)南北路口的绿灯、东西路口的红灯同时亮10秒,然后2)南北路口的黄灯闪烁2次(闪烁周期2秒),同时东西路口的红灯继续亮,然后3)南北路口的红灯、东西路口的绿灯同时亮10秒,然后4)南北路口的红灯继续亮,同时东西路口的黄灯2次(闪烁周期2秒),然后5)转1重复。
三)实验内容1.红黄绿三色交通灯控制。
将接口实验包中所带的EX-8255-1.DSN文件用ISIS 7打开,将D6、D5、D4作为南北路口的交通灯与PA7、PA6、PA5相连;D3、D2、D1作为东西路口的交通灯与PA2、PA1、PA0相连(方式0)。
利用8253产生1秒的中断信号(系统已经为CLK0提供了一个1MHz的时钟输入),在中断处理程序中用程序处理10秒延迟和两次黄灯闪烁的问题。