计算机接口实验报告

合集下载

接口技术实验报告

接口技术实验报告

接口技术实验报告接口技术实验报告导言:接口技术在现代科技发展中扮演着重要的角色。

它是不同系统之间进行数据交换和通信的桥梁,为各种设备和软件提供了互联互通的能力。

本实验旨在通过实际操作,深入了解接口技术的原理和应用。

一、实验目的本次实验的目的是探索接口技术在实际应用中的作用和效果。

通过搭建一个简单的接口系统,我们可以了解接口的基本原理、数据传输方式以及如何进行接口的配置和测试。

二、实验设备和材料本次实验所需的设备和材料包括:一台计算机、一个串口转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芯片和微机接口原理和方法。

简单io口扩展实验报告

简单io口扩展实验报告

简单IO口扩展实验报告1. 背景在实际应用中,我们经常需要扩展计算机的输入输出(IO)接口,以满足不同的需求。

而简单IO口扩展就是一种常见且重要的扩展方式。

通过简单IO口扩展,我们可以将计算机连接到更多的外部设备,如传感器、执行器等,从而实现更多功能和应用。

2. 分析2.1 简单IO口介绍简单IO口是指通用输入输出接口,它可以通过数字信号来进行数据的输入和输出。

每个简单IO口通常包括一个输入引脚和一个输出引脚。

通过控制这些引脚的电平状态,我们可以实现数据的输入和输出。

2.2 简单IO口扩展方法简单IO口可以通过不同的方法进行扩展,常见的方法包括:•并行接口:使用并行接口可以同时传输多个位的数据。

它通常使用多条数据线和一些控制线来实现高速数据传输。

•串行接口:使用串行接口可以逐位地传输数据。

它通常使用一条数据线和一些控制线来实现较低速率但更简洁的数据传输。

•USB接口:USB(Universal Serial Bus)是一种常见的数字串行总线接口,它可以连接多种设备,并提供高速数据传输和供电功能。

•SPI接口:SPI(Serial Peripheral Interface)是一种常用的串行外设接口,它可以连接多个外设,并以主从模式进行数据传输。

•I2C接口:I2C(Inter-Integrated Circuit)是一种常见的串行通信接口,它可以连接多个外设,并使用两条线路进行数据传输。

2.3 简单IO口扩展实验本次实验旨在通过简单IO口扩展方法,将计算机与外部设备进行连接,并实现数据的输入和输出。

具体步骤如下:1.确定要使用的简单IO口扩展方法,如并行接口、串行接口等。

2.根据选择的扩展方法,准备相应的硬件模块和连接线缆。

3.将硬件模块与计算机进行连接,确保电气连通性。

4.编写相应的驱动程序或使用现有的驱动程序,以实现与硬件模块的通信。

5.运行程序并测试扩展功能。

3. 结果经过实验测试,我们成功地实现了简单IO口扩展,并达到了预期的结果。

NEUQ 计算机接口技术实验报告

NEUQ 计算机接口技术实验报告

计算机接口技术实验报告学号:姓名:提交日期:成绩:东北大学秦皇岛分校计算机与通信工程学院实验1、IO地址译码一、实验目的掌握8253的基本工作原理和编程方法。

二、实验内容按图16虚线连接电路,将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

三、编程提示8253控制寄存器地址283H计数器0地址280H计数器1地址281HCLK0连接时钟1MHZASM程序:ioport equ 0d400h-0280hio8253a equ ioport+283hio8253b equ ioport+280hcode segmentassume cs:codestart: mov al,14h ;设置8253通道0为工作方式2,二进制计数mov dx,io8253aout dx,almov dx,io8253b ;送计数初值为0FHmov al,0fhout dx,allll: in al,dx ;读计数初值call disp ;调显示子程序push dxmov ah,06hmov dl,0ffhint 21hpop dxjz lllmov ah,4ch ;退出int 21hdisp proc near ;显示子程序push dxand al,0fh ;首先取低四位mov dl,alcmp dl,9 ;判断是否<=9jle num ;若是则为'0'-'9',ASCII码加30Hadd dl,7 ;否则为'A'-'F',ASCII码加37Hnum: add dl,30hmov ah,02h ;显示int 21hmov dl,0dh ;加回车符int 21hmov dl,0ah ;加换行符int 21hpop dxret;子程序返回disp endpcode endsend start实验现象:开始时代表低电平的灯亮,按单脉冲信号5次后高电平的等亮实验2、简单并行接口一、实验目的掌握8253的基本工作原理和编程方法。

江苏大学接口实验报告

江苏大学接口实验报告

通信网络接口编程实验报告学院:计算机科学与通信工程学院班级:姓名:学号:2014.05.08实验一、简单的客户机/服务器程序的实现一、说明1、建立项目时选择创建windows控制台程序,同时选择包含MFC类库。

所谓控制台程序指模拟的DOS字符提示,而不是windows应用程序的图形界面。

2、头文件说明 #include<....> 表示引用标准库的头文件。

(#include"..." 表示引用非标准库的头文件)3、每次做实验时都看一下“实验说明”文档。

二、实验要求1、读懂参考程序,说明客户机/服务器的地址定位、while(true)的作用等。

①客户机/服务器的地址定位的作用:发起通信连接的称为客户端,而等待呼叫请求的是服务器;②While(ture)的作用:连续监听是否有客户端连接,如果有客户机接入就可以向它发送信息。

2、调试参考程序,打印运行结果①客户端:3、(合理)调整客户机/服务器的端口,检查可行性4、改服务器的输送字符为控制台输入方法(用gets函数)运行结果:①服务端:②客户端:5、将客户机/服务器分开运行(客户机用本机地址运行,服务器安装到另一台机器上)多客户同时访问服务器,说明运行结果答:能同时进行访问。

6、说明并分析实验过程中遇到的问题、原因及解决方法答:遇到的问题:①修改了buf[]的容量后还是出现“烫烫烫……”。

原因:没改IP地址。

解决方法:将IP地址改成匹配的地址。

7、按以上要求完成实验报告8、思考实验中输入、输出缓冲区的匹配问题与TCP字节流传输方式有没有矛盾答:没有矛盾,因为输入、输出缓冲区的匹配问题导致了最终客户端接收的信息不完整,而TCP字节流传输方式是一种可靠的传输方式,也就是说保证了字节流在传输过程中不会存在比特信息位的丢失问题,所以两者并不矛盾。

三、参考程序客户端:#pragma comment(lib, "ws2_32.lib")#include<winsock2.h>#include<stdio.h>void main(){WSADATA wsaData;WSAStartup(MAKEWORD(2,2),&wsaData);SOCKET connSock=socket(AF_INET,SOCK_STREAM,0);SOCKADDR_IN servAddr;char buf[50];servAddr.sin_family=AF_INET;servAddr.sin_port=htons(9878);servAddr.sin_addr.s_addr=inet_addr("202.195.167.96");connect(connSock,(SOCKADDR*)&servAddr,sizeof(SOCKADDR_IN));recv(connSock,buf,50,0);printf("%s",buf);getchar();}服务器端:#pragma comment(lib,"ws2_32.lib")#include<winsock2.h>void main(){WSADATA wsaData;WSAStartup(MAKEWORD(2,2),&wsaData);SOCKET servSock,cliSock;SOCKADDR_IN servAddr;servAddr.sin_family=AF_INET;servAddr.sin_port=htons(9878);servAddr.sin_addr.s_addr=htonl(INADDR_ANY);servSock=socket(AF_INET,SOCK_STREAM,0);bind(servSock,(SOCKADDR*)&servAddr,sizeof(SOCKADDR_IN));listen(servSock,5);while(true){cliSock=accept(servSock,NULL,NULL);send(cliSock,"欧燕秋,加油↖(^ω^)↗",50,0);}}实验二、参数backlog测试一、实验内容与步骤1、send和recv函数中参数len的作用调整实验一中len值的大小,使其分别小于、大于实际写入/读出的值运行结果:①len值小于实际写入值,能显示实际值的部分的信息,大于实际值的出现“烫烫烫……”,如图:②len值大于实际写入值,能显示所有信息,如图:2、Listen函数中参数backlog的作用a) 将实验一中backlog的值设为5,分别让5个、6个、6个以上的客户端同时或间隔访问一个服务器,观察访问情况;答:将实验中的backlog的值定为1,让2个客户端同时或间隔访问一个服务器,两个客户端均能接收到信息。

系统接口实验报告

系统接口实验报告

实验名称:系统接口设计与实现实验日期: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. 实验结果本次实验成功实现了系统接口的设计与实现,包括接口需求分析、接口规范定义、接口协议设计、接口代码编写和接口测试。

接口试验6实验报告

接口试验6实验报告

南通大学实验报告院、系计算机科学与技术年级专业大二计算机科学与技术实验名称:数码管(LED)实验一.实验目的1.理解8段数码管(LED)的基本原理(如图5-3和图5-4)。

2.理解8段数码管(LED)的显示和编程方法。

3.理解4连排共阴极8段数码管LG5641AH与MCU的接线图(如图5-5和如图5-6)。

二.知识要点本实验所使用的是四连排8段共阴极数码管(如图2-9所示)。

该数码管共有两种引线:8根数据线和4根位选线。

数码管的显示原理和小灯点亮相同,如图5-6所示。

a、b、c、d、e、f、g、h是数码管的数据线,为8段的阳极引脚,是不同位数码管的数据线共享,CS3、CS2、CS1、CS0是位选线,为8段阴极的公共引脚。

为了使每个时刻只能让一个数码管有效,即CS3、CS2、CS1、CS0只能有一个为0,例如令CS3=0,CS2、CS1、CS0=111,则数据线上的数据显现在数码管的第一位,其他位则不受影响。

要让各个数据管均显示需要的数字,则必须逐个使相应位选信号为0,其他位选信号为1,并将要显示的一位数字送到数据线上。

这种方法叫“位选线扫描法”。

但是数码管采用图5-5所示与MCU的IO引脚直接相连,显示亮度不足,为了提高亮度,将位选线各自经过三极管连接,提高位选线的电流,IO引脚与三极管的基极相连。

具体如图2-10所示。

则位选信号改为1,即为选中。

但是实际中需要让每位都显示数字,则只能依据“视觉暂留效应”(约100ms左右),看起来则是同时显示的,放电影原理也如此。

LED所用的接口是普通IO口,功能也是IO口的普通功能。

所以编程也是先确定接口的方向,然后将所显示的开关量送给LED,LED是将成形的小灯组合成相应的数字。

各步骤如下:(一)LED的C语言编程,首先初始化:1)初始化2)设定显示码表和片选表,为了成形的小灯组合成相应的数字3)使用LED(其实就是小灯点亮的原理)三.实验内容在光盘资料中提供读者数码管(LED)实例程序文件夹。

《计算机接口与通信技术》综合实验报告

《计算机接口与通信技术》综合实验报告

《计算机接口与通信技术》综合实验报告《计算机接口与通信技术》综合实验报告院系部:专业班级:组长:组员:实验台号:指导教师:成绩:实验日期:实验1 8255A小键盘实验一. 实验目的(1)掌握8255A编程原理。

(2)了解键盘结构,学会读取键盘输入的方法。

二. 实验内容用8255A来实现一个小键盘的输入识别(用行扫描法或反转法均可)。

(1)基于图再完成下述连接,即将8255A的CS端与218~21F插孔相连,此时:8255A的端口A地址为218H端口B地址为219H端口C地址为21AH控制口地址为21BH(2)编写程序,使得在小键盘上按键后,微机屏幕上有相应字符显示出来。

三. 仪器用具四.实验接线图五. 程序设计流程图:程序代码:DA TA SEGMENTTABLE1 DW 0101H,0102H,0104H,0108H,0110H,0120H,0140H,0180HDW 0201H,0202H,0204H,0208H,0210H,0220H,0240H,0280HDW 0401H,0402H,0404H,0408H,0410H,0420H,0440H,0480H CHAR DB 'CDEFBA9845673210WXYSRPMG'MESS DB 'PRESS A KEY ON THE SMALL KEYBOARD!',0AH,0DH DB 'IT WILL DISPLAY ON THE SCREEN ! ',0AH,0DHDB 'PRESS R KEY, RETURN TO DOS !',0AH,0DH,'$' IOPORT EQU 0DC00H-200HIO8255A EQU IOPORT+218H ;8255A口IO8255B EQU IOPORT+219H ;8255B口IO8255C EQU IOPORT+21BH ;8255控制端口DA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TA,SS:STACKSSTART: MOV AX,DA TAMOV DS,AXMOV DX,OFFSET MESSMOV AH,09INT 21H ;显示提示信息Q1: MOV AL,82H ;送8255控制字,A出口,B入口MOV DX,IO8255COUT DX,ALQ2: MOV AL,00MOV DX,IO8255AOUT DX,AL ;A口输出行值MOV DX,IO8255BIN AL,DX ;B口读入列值AND AL,0FFHCMP AL,0FFHJZ Q2MOV BL,AL ;有键入,保存键值MOV DI,0040 ;延迟,等待释放BB: MOV CX,6000HAA: LOOP AADEC DIJNZ BBMOV DX,IO8255C ;送8255控制字,B口出,A口入MOV AL,90HOUT DX,ALMOV DX,IO8255BMOV AL,BLOUT DX,AL ;B口输出列值MOV DX,IO8255AIN AL,DX ;A口读入行值CMP AL,0FFHJNZ KEYNKEYN: PUSH AX ;去抖MOV DX,IO8255ARELEA: IN AL,DXCMP AL,0FFHJNZ RELEAPOP AXMOV AH,BL ;AH=列值,BH=行值NOT AX ;键值AX求反MOV SI,OFFSET TABLE1 ;送键值表指针MOV DI,OFFSET CHAR ;送字符表指针MOV CX,24Q4: CMP AX,[SI] ;键值查表JZ Q5ADD SI,02 ;未查到,修改表指针INC DILOOP Q4JMP Q1Q5: MOV DL,[DI] ;查到,显示该字符CMP DL,'R'JZ Q6MOV AH,02HINT 21HJMP Q1Q6: MOV AX,4C00H ;键值='R',返回DOSINT 21HCODE ENDS六.试验方法与步骤1.按实验要求连线将8255A的CS端与218~21F插孔相连2.编程,程序如上3.运行程序七.实验结果八.讨论与结论操作实验板上的小键盘按键会在计算机屏幕上进行显示,对键盘上的WXYS键都以空格响应,R退出,其余显示对应字符。

计算机组成原理及接口技术实验报告

计算机组成原理及接口技术实验报告
掌握静态随机存取存储器RAM工作特性及数据的读写方法
二实验步骤
(1)连接实验线路,仔细检查无误后接通电源。
(2)形成时钟脉冲信号T3。在时序电路模块中有两个二进制开关“运行控制”和“运行方式”。将运行控制开关设置为运行状态,运行方式设置为连续状态,按动运行启动开关,则T3有连续的放信号输出,此时调节电位器W1,用示波器观察,使T3输出实验要求的脉冲信号。
DR1
加数2
DR2
S3 S2 S1 S0
M=0(算术运算)
M=1
(逻辑运算)
Cn=1无进位
Cn=0有进位
35
35
48
48
0 0 0 0
F=00010011
F=00100100
F=11011100
0 0 0 1
F=00110011
F=00110100
F=11001100
0 0 1 0
F=11101111
(3)移位,改变S0,S1,M,299B的状态,按动手动脉冲开关以产生时钟脉冲T4,观察移位结果。
三实验结果
35H(00110101)
299B S1 S0 M
0 1 0 0
0 1 0 1
0 0 1 1
0 0 1 0
功能
循环右移
带进位循环右移
CY
带进位循环左移
CY
循环左移
第一次
10011010
00011010
(3)送数据63到寄存器,数据20送地址寄存器,然后将R0寄存器内的数送人存储器,最后将存储器的内容输出到LED上显示。数据开关置数(KD0~KD7=01100011),开输入三态门(SWB=0),存入寄存器R0,按下LDR0。数据开关置数(KD0~KD7=00100000),开输入三态门(SWB=0),存入寄存器R0,按下LDAR。关输入三态门,开R0三态门(SWB=1,ROB=0),R0寄存器的数存入存储器AR(CE=0,WE=1),关R0三态门,关存储器(CE=1,ROB=1),存储器输出到LED显示(WE=0,CE=0,LEDB=0,OUTWR=0)。

计算机接口技术实验报告

计算机接口技术实验报告

实验一无条件输出端口的构成与地址译码【地址译码电路】【实验板的线路接法】将电路图上的A1-A7端口依次PIN到PIN_3、PIN_4、PIN_7、PIN_8 、PIN_9、PIN_24、PIN_25,再用八股导线连接到实验箱中的XA1-XA7上;将电路图上的IOW端口PIN到PIN_17,通过转换单元连接到实验箱上的IOW端口;将电路图上的D1-D8端口依次PIN到PIN_27、PIN_28、PIN_30、PIN_31 、PIN_32、PIN_40、PIN_41、PIN_42,再用八股导线连接到实验箱中的XD1-XD7上;将电路图上的OUT1-OUT8端口依次PIN到PIN_43、PIN_44、PIN_45、PIN_47 、PIN_48、PIN_51、PIN_52、PIN_53,再用八股导线连接到实验板上二极管对应的的D0-D7上。

最后,给实验板接上电源线和地线。

【输出数据至端口的程序段】#include <stdio.h>#include <stdlib.h>#include <conio.h>#include <bios.h>#include <ctype.h>#include <process.h>void main(){outp( 0x3000, 0x00 );}【Led规律性变化的程序段】#include <stdio.h>#include <stdlib.h>#include <conio.h>#include <bios.h>#include <ctype.h>#include <process.h>void main(){long i, k;for( i=0; 1; i++)//不设出口的死循环{if( i>=8 ) i-=8;for( k=0; k<10000000; k++ ); //等待outp( 0x3000, 0x00+i );}}。

接口处理教程实验报告(3篇)

接口处理教程实验报告(3篇)

第1篇一、实验目的1. 理解接口处理的基本概念和流程。

2. 掌握使用PHP编写API接口的方法和步骤。

3. 学习如何使用json-server模拟接口数据。

4. 熟悉使用Postman进行接口测试和自动化测试。

二、实验环境1. 操作系统:Windows 102. 编程语言:PHP3. 开发工具:Visual Studio Code4. API模拟工具:json-server5. 接口测试工具:Postman三、实验内容1. PHP API接口编写(1)创建接口文件首先,我们需要创建一个PHP文件作为API接口,例如`api.php`。

```php<?php// api.php// 设置返回内容为JSON格式header('Content-Type: application/json');```(2)处理请求在`api.php`中,我们需要获取客户端发送的请求,并根据请求类型(GET或POST)进行处理。

```php// 获取请求类型$method = $_SERVER['REQUEST_METHOD'];// 处理GET请求if ($method === 'GET') {// 获取请求参数$name = $_GET['name'];// 模拟从数据库查询用户信息$userInfo = ['name' => '张三','age' => 25,'email'=>'********************'];// 返回JSON数据echo json_encode($userInfo);}// 处理POST请求if ($method === 'POST') {// 获取请求数据$jsonData = file_get_contents('php://input');$userData = json_decode($jsonData, true);// 模拟保存用户信息到数据库// ...// 返回JSON数据echo json_encode(['status' => 'success']); }```2. 使用json-server模拟接口数据(1)安装json-server```bashnpm install -g json-server```(2)创建数据文件创建一个名为`db.json`的文件,并添加以下内容:```json{"users": [{"id": 1,"name": "张三","age": 25,"email":"********************"},{"id": 2,"name": "李四","age": 30,"email":"****************"}]}```(3)启动json-server```bashjson-server --watch db.json```3. 使用Postman进行接口测试(1)测试GET请求在Postman中创建一个新的请求,选择HTTP方法为GET,并设置请求URL为`http://localhost:3000/users`。

最新接口实验报告

最新接口实验报告

最新接口实验报告实验目的:本次实验旨在验证最新接口的性能表现,兼容性以及稳定性。

通过实际操作测试,收集相关数据,以便对接口进行评估和优化。

实验环境:- 服务器配置:**************************,32GB RAM,SSD 硬盘- 操作系统:Ubuntu 18.04 LTS- 测试工具:JMeter 5.4.1,Postman,curl- 网络环境:100Mbps企业级网络,延迟低于10ms实验方法:1. 使用JMeter进行压力测试,模拟高并发场景,记录接口响应时间和吞吐量。

2. 利用Postman和curl进行接口调用测试,验证接口的功能性和返回数据的正确性。

3. 对接口进行异常输入测试,检查其容错能力和错误处理机制。

4. 监控服务器资源使用情况,评估接口对系统资源的消耗。

实验结果:1. 压力测试结果显示,在并发用户数达到1000时,接口的平均响应时间为200ms,吞吐量为5000次请求/分钟,系统资源消耗稳定,CPU 使用率维持在60%左右,内存使用约为1.5GB。

2. 功能性测试中,所有预定功能均正常工作,返回数据符合预期格式和内容。

3. 异常测试中,接口对非法参数输入表现出良好的容错性,能够返回合适的错误代码和提示信息。

4. 服务器资源监控表明,接口在高负载下对资源的占用合理,没有出现内存泄漏或CPU占用过高的情况。

结论与建议:根据实验结果,最新接口在性能和稳定性方面表现良好,能够满足高并发场景的需求。

建议在未来的开发中继续优化接口的响应速度,并定期进行压力测试以监控其性能变化。

同时,应加强对异常情况的处理,确保接口在各种条件下都能稳定运行。

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

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

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

1. 实验目的。

本实验旨在通过对微机原理的实验,加深学生对微机原理相关知识的理解,提高学生的动手能力和实验技能。

2. 实验内容。

本实验主要包括微机原理的基本知识、微处理器的结构和功能、微机系统的总线结构、存储器与I/O接口。

3. 实验步骤。

(1)了解微机原理的基本知识,包括微处理器的分类、功能和工作原理。

(2)学习微机系统的总线结构,掌握总线的分类、功能和工作原理。

(3)了解存储器与I/O接口的基本概念和工作原理。

(4)进行实际操作,通过实验板进行微机原理实验,加深对微机原理知识的理解。

4. 实验结果。

通过本次实验,我深刻理解了微机原理的基本知识,掌握了微处理器的结构和功能,了解了微机系统的总线结构,以及存储器与I/O接口的工作原理。

通过实际操作,我对微机原理有了更深入的认识,提高了自己的动手能力和实验技能。

实验二,接口技术实验。

1. 实验目的。

本实验旨在通过对接口技术的实验,加深学生对接口技术相关知识的理解,提高学生的动手能力和实验技能。

2. 实验内容。

本实验主要包括接口技术的基本知识、接口电路的设计与调试、接口技术在实际应用中的作用。

3. 实验步骤。

(1)了解接口技术的基本知识,包括接口的分类、功能和设计原则。

(2)学习接口电路的设计与调试,掌握接口电路设计的基本方法和调试技巧。

(3)了解接口技术在实际应用中的作用,包括各种接口的应用场景和实际案例。

(4)进行实际操作,通过实验板进行接口技术实验,加深对接口技术知识的理解。

4. 实验结果。

通过本次实验,我深刻理解了接口技术的基本知识,掌握了接口电路的设计与调试方法,了解了接口技术在实际应用中的作用。

通过实际操作,我对接口技术有了更深入的认识,提高了自己的动手能力和实验技能。

总结。

通过微机原理与接口技术的实验,我对微机原理和接口技术有了更深入的理解,提高了自己的动手能力和实验技能。

希望通过今后的学习和实践,能够更加深入地掌握微机原理与接口技术的知识,为将来的工作和研究打下坚实的基础。

计算机接口技术实验报告

计算机接口技术实验报告

实验五8259中断控制器实验一、实验目的1、掌握8259A的工作原理。

2、掌握编写中断服务程序方法。

3、掌握初始化中断向量的方法。

二、实验设备CPU挂箱、8086CPU模块。

三、实验内容用电平开关的输出作为中断源,每个开关对应于一个中断源。

在中断服务程序中,通过74LS273输出一个数据,以点亮与中断源相对应位置的LED。

四、实验原理本实验用到三部分电路:电平开关电路、简单I/O口扩展电路和8259中断控制器电路。

8259的使用说明请详细阅读教科书。

8086的中断系统是向量中断方式。

内存中特定位置有一中断向量表,表内存有不同中断类型的中断向量(中断入口地址)。

不同中断类型的中断向量在表内有对应的偏移地址,其计算方法是:中断类型*4。

中断类型由8259通过数据总线送给8086,8086内部电路会将该类型值自动乘4,而后赋给指令指针,从而转向中断向量表的相应单元取得中断入口地址,之后就进入中断服务程序。

请仔细研读8259的工作时序。

中断类型的高5位由8259寄存器ICW2决定,低3位由中断源IRx的编码自动填入。

IR0~IR7的编码分别为000,001,010,011,100,101,110,111。

五、实验步骤1、实验接线CS0 ↔CS8259 CS1 ↔CS273 O0~O7↔LED1~LED8 K1~K8↔IR0~IR7 INT↔INT( 8086CPU板) INTA↔INTA(8086CPU板)2、编译调试程序3、全速运行程序,拨动某一电平开关,观察LED的亮灭情况。

六、实验结果全速运行程序,由上往下拨动开关时,相应位置的LED点亮,其余LED全灭。

七、实验程序框图开始延时A X =00H ?N YA X 输出开中断8259初始化开始关中断AX置数开中断中断返回主程序流程图中断服务程序流程图八、程序源代码 assume cs:codecode segment public org 100h start: mov cx,0 start1: cli mov dx,04a0h mov ax,13h out dx,ax ;ICW1, ICW4 NEEDEDmov dx,04a2h mov ax,80h out dx,ax;ICW2 中断类型80hmov ax,01out dx,ax ;ICW4mov ax,00hout dx,ax ;OCW1, 开放所有中断mov ax,0mov ds,axmov si,200h ;初始化中断向量表mov ax,offset hintmov ds:[si],axadd si,2mov ds:[si],100hmov ax,0;jmp startstiwaiting:cmp ax,55hnopnopnopnopnopnopnopnopjne waiting ;没发生中断,则等待nopnopmov dx,04b0hxor cx,0ffhmov ax,cxout dx,ax ;LED灯亮灭一次jmp start1nophint: clinopnopnopnopnopnopnopnopmov ax,55hnopiretcode endsend start九.实验分析:通过实验连线及程序运行没有得到预期的结果,可是仔细检查连线与程序代码没有发现错误,后来经过老师分析,没有出现预期的效果是因为机器的问题。

网络接口配置实验报告(3篇)

网络接口配置实验报告(3篇)

第1篇本次实验旨在掌握网络接口配置的基本知识,包括主机名、IP地址、子网掩码、默认网关、域名服务器等参数的配置方法。

通过实际操作,熟悉网络接口配置的步骤,为后续网络搭建和调试打下基础。

二、实验环境1. 操作系统:CentOS 7.42. 网络设备:两台虚拟机,分别配置为192.168.1.1和192.168.1.23. 工具:VMware Workstation、putty、ifconfig、vim三、实验步骤1. 配置主机名(1)登录到虚拟机1,使用以下命令修改主机名:```hostnamectl set-hostname vm1```(2)登录到虚拟机2,使用以下命令修改主机名:```hostnamectl set-hostname vm2```2. 配置IP地址、子网掩码和默认网关(1)登录到虚拟机1,编辑`/etc/sysconfig/network-scripts/ifcfg-ens33`文件,添加以下内容:```TYPE=EthernetDEVICE=ens33ONBOOT=yesBOOTPROTO=staticIPADDR=192.168.1.1NETMASK=255.255.255.0GATEWAY=192.168.1.2```(2)登录到虚拟机2,编辑`/etc/sysconfig/network-scripts/ifcfg-ens33`文件,添加以下内容:```TYPE=EthernetDEVICE=ens33ONBOOT=yesBOOTPROTO=staticIPADDR=192.168.1.2NETMASK=255.255.255.0GATEWAY=192.168.1.1```3. 重启网络服务(1)登录到虚拟机1,执行以下命令重启网络服务:```systemctl restart network```(2)登录到虚拟机2,执行以下命令重启网络服务:```systemctl restart network```4. 验证网络连接(1)登录到虚拟机1,使用以下命令测试与虚拟机2的连通性:```ping 192.168.1.2```如果成功,则会收到以下响应:```PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.64 bytes from 192.168.1.2: icmp_seq=1 ttl=64 time=0.031 ms 64 bytes from 192.168.1.2: icmp_seq=2 ttl=64 time=0.030 ms ```(2)登录到虚拟机2,使用以下命令测试与虚拟机1的连通性:```ping 192.168.1.1```如果成功,则会收到以下响应:```PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.032 ms 64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.029 ms ```四、实验结果通过本次实验,成功配置了两台虚拟机的网络接口,实现了主机名、IP地址、子网掩码、默认网关的配置。

微型计算机原来与接口技术实验报告(全)

微型计算机原来与接口技术实验报告(全)

微机接口实验报告实验一简单I/O口扩展实验一、实验目的1、熟悉74LS273,74LS244的应用接口方法。

2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。

二、实验内容1、由键盘输入字符,然后通过74LS273将其ASCII码锁存输出,并通过LED显示出来。

2、逻辑电平开关的状态输入74LS244,经过PCI总线读入并以16进制显示在屏幕上。

3、逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。

三、实验原理介绍本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。

四、实验步骤1、实验接线:(←→表示相互连接)CS0←→CS244,CS1←→CS273,平推开关的输出K1~K8←→IN0~IN7(对应连接)00~07←→发光二极管的输入LED1~LED8。

2、编辑程序,用debug调试程序,单步运行。

3、调试通过后,全速运行程序,观看实验结果。

4、编写实验报告。

五、实验提示74LS244或74LS273的片选信号可以改变,例如连接CS2,此时应同时修改程序中相应的地址。

六、实验结果程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。

例如:K2置于L位置,则对应的LED2 应该点亮。

七、程序框图(如图1)实验程序:实验 1; * cs0<->cs273,D0~D7依次接LED1~LED8*;IOPOR T EQU 0A800HLS273 EQU IOPORT+0A0HCODE SEGMENTASSUME CS:CODESTART: MOV AH,2 ;回车符MOV DL,0DHINT 21HMOV AH,1 ;等待键盘输入INT 21HCMP AL,27 ;判断是否为ESC键JE EXIT ;若是则退出MOV DX,LS273 ;若不是,从2A8H输出其ASCII码OUT DX,ALJMP START ;转startEXIT: MOV AH,4CH ;返回INT 21HCODE ENDSEND START实验结果:从键盘输入数字0~9可以通过LED显示相应的二进制代码(亮灯为0,熄灯为1)例如从键盘输入数字3,灯亮情况led4~led1对应0011;即led4~led1从到左表示0011,led4、led3低位,led2、led1高位。

微型计算机接口技术实验报告(二)

微型计算机接口技术实验报告(二)

微型计算机接口技术实验报告实验一:交通灯实验一.实验目的了解可编程并行接口芯片8255 的内部结构、工作方式、初始化编程及应用。

二.实验内容说明1、8255A 的内部结构(1)数据总线缓冲器:这是一个双向三态的8 位数据缓冲器,它是8255A与微机系统数据总线的接口。

输入输出的数据、CPU输出的控制字以及CPU输入的状态信息都是通过这个缓冲器传送的。

(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口下半部。

(4)读写控制逻辑:用来控制把CPU输出的控制字或数据送至相应端口,也由它来控制把状态信息或输入数据通过相应的端口送到CPU。

2、8255A 的工作方式方式0—基本输入输出方式;方式1—选通输入输出方式;方式2—双向选通输入输出方式。

3、8255A 的状态字图 6-3-1 8255 方式1 的状态字图6-3-2 8255 方式2 的状态字三.实验原理图图6-3-5 可编程并行接口8255 电路四.实验步骤(1) 实验连线(如图所示)该模块的 WR、RD分别连到ISA总线接口模块的IOWR、IORD。

该模块的数据(AD0~AD7)、地址线(A0~A7)分别连到ISA总线接口模块的数据(LD0~LD7)、地址线(LA0~LA7)。

8255 模块选通线CE 连到ISA 总线接口模块的0000H。

微型计算机接口技术实验报告

微型计算机接口技术实验报告

微型计算机接口技术实验报告实验1:基本IO 口扩展实验一.实验目的了解TTL 芯片扩展简单I/O 口的方法,掌握数据输入输出程序编制的方法。

二.实验内容说明74LS244 是一种三态输出的8 总线缓冲驱动器,无锁存功能,当G 为低电平时,Ai 信号传送到Yi,当为高电平时,Yi 处于禁止高阻状态。

74LS273 是一种8D 触发器,当CLR 为高电平且CLK 端电平正跳变时,D0——D7 端数据被锁存到8D 触发器中。

本实验利用74LS244 作为输入口,读取开关状态,并将此状态通过74LS273 驱动发光二极管显示出来。

三.实验原理图74LS244 与74LS273 扩展I/O 口原理图四.实验步骤1.编写源程序源程序为:MY_STACK SEGMENT PARA 'STACK'DB 100 DUP(?)MY_STACK ENDSMY_DATA SEGMENT PARA 'DATA'IO_9054base_address DB 4 DUP(0) ;PCI卡9054芯片I/O基地址暂存空间IO_base_address DB 4 DUP(0) ;PCI卡I/O基地址暂存空间pcicardnotfind DB 0DH,0AH,'pci card not find or address/interrupt error !!!',0DH,0AH,'$' GOOD DB 0DH,0AH,'The Program is Executing !',0DH,0AH,'$'LS244 DW 00000HLS273 DW 00020HRA DB ?LB DB ?DELAY_SET EQU 0FFFH ;延时常数MY_DATA ENDsMY_CODE SEGMENT PARA 'CODE'MY_PROC PROC FARASSUME CS:MY_CODE, DS:MY_DA TA, SS:MY_STACKMAIN:.386 ;386模式编译MOV AX,MY_DA TAMOV DS,AXMOV ES,AXMOV AX,MY_STACKMOV SS,AXCALL FINDPCI ;自动查找PCI卡资源及IO口基址MOV CX,word ptr IO_base_address; MOV CX,0E800H ;直接加入(E800:本机PCI卡IO口基址)ADD LS244,CX ;PCI卡IO基址+偏移ADD LS273,CXMOV RA,7FHMOV LB,0FEHREAD1: MOV DX,LS244 ;读取开关状态IN AL,DXCMP AL,55H ;如果是55右移JE READ2CMP AL,0AAH ;如果是AA左移JE READ3NOT AL ;取反JMP READ4READ2: CALL RIGHTJMP READ4READ3: CALL LEFTREAD4: MOV DX,LS273OUT DX,AL ;送LED显示CALL DELAYCALL BREAKJMP READ1MY_PROC ENDp;RIGHT PROC NEARMOV AL,RAROR AL,1MOV RA,ALRETRIGHT ENDPLEFT PROC NEARMOV AL,LBROL AL,1MOV LB,ALRETLEFT ENDP;;***************************************************************************** ; /*按任意键退出*/;*****************************************************************************;BREAK PROC NEAR ;按任意键退出PUSHFPUSH AXPUSH DXMOV AH,06HMOV DL,0FFHINT 21HJE RETURNMOV AX,4C00HINT 21HRETURN: POP DXPOP AXPOPFRETBREAK ENDP;;***************************************************************************** ; /*延时程序*/;*****************************************************************************;DELAY PROC NEAR ;延时程序PUSHFPUSH DXPUSH CXMOV DX,DELAY_SETD1: MOV CX,-1D2: DEC CXJNZ D2DEC DXJNZ D1POP CXPOP DXPOPFRETDELAY ENDp;;***************************************************************************** ; /* 找卡子程序*/;*****************************************************************************;;FUNCTION CODEIO_port_addre EQU 0CF8H ;32位配置地址端口IO_port_data EQU 0CFCH ;32位配置数据端口IO_PLX_ID EQU 200810B5H ;PCI卡设备及厂商ID BADR0 = 10H ;基地址寄存器0BADR1 = 14H ;基地址寄存器1BADR2 = 18H ;基地址寄存器2BADR3 = 1CH ;基地址寄存器3FINDPCI PROC NEAR ;查找PCI卡资源并显示PUSHADPUSHFDMOV EBX,080000000HFINDPCI_next:ADD EBX,100HCMP EBX,081000000HJNZ findpci_continueMOV DX,offset pcicardnotfind ;显示未找到PCI卡提示信息MOV AH,09HINT 21HMOV AH,4CHINT 21H ;退出findpci_continue:MOV DX,IO_port_addreMOV EAX,EBXOUT DX,EAX ;写地址口MOV DX,IO_port_dataIN EAX,DX ;读数据口CMP EAX,IO_PLX_IDJNZ findpci_next ;检查是否发现PCI卡MOV DX,IO_port_addreMOV EAX,EBXADD EAX,BADR1OUT DX,EAX ;写地址口MOV DX,IO_port_dataIN EAX,DX ;读数据口MOV dword ptr IO_9054base_address,EAXAND EAX,1JZ findPCI_next ;检查是否为i/o基址信息MOV EAX,dword ptr IO_9054base_addressAND EAX,0fffffffehMOV dword ptr IO_9054base_address,EAX ;去除i/o指示位并保存MOV DX,IO_port_addreMOV EAX,EBXADD EAX,BADR2OUT DX,EAX ;写地址口MOV DX,IO_port_dataIN EAX,DX ;读数据口MOV dword ptr IO_base_address,EAXAND EAX,1JZ findPCI_next ;检查是否为i/o基址信息MOV EAX,dword ptr IO_base_addressAND EAX,0fffffffehMOV dword ptr IO_base_address,EAX ;去除i/o指示位并保存MOV DX,offset good ;显示开始执行程序信息MOV AH,09HINT 21HPOPfdPOPadRETfindPCI ENDPMY_CODE ENDSEND MAIN2.编译源程序3. 实验连线(连线图如下)244 的CS——ISA 总线接口模块的0000H,Y7—Y0——开关K1—K8。

华北电力大学_接口实验报告

华北电力大学_接口实验报告
实验结果:通过按单脉冲,使之产生中断,然后再LED显示按下的次数就是中断的次数。
五、实验心得
在这次课程设计的过程中的收获是很大的。这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了中断8259应用。当然,这次实验,我也发现了自身的很多不足之处,在以后的学习中,我会不断的完善自我,不断进取,能使自己在这方面有一个大的发展,我真的很高兴有这次的锻炼机会。
8255A芯片内部有3个8位的输入输出端口,即A口、B口、C口。从内部控制的角度来讲,可分为两组:A组和B组。A组控制模块管理A口和C口的高4位(pc7~PC4),B组控制模块管理B口和C口的低4位(pc3~pc0)。
2、实验内容
设计跑马灯程序设计,要求K0=0,从左向右跑马灯;K1=0时,从右向左跑马灯;K2=0时,从左从右向中间跑马灯,LED从pc口输出。完成电路设计及程序的编制,进行调试并验证结果。
经过老师的指导,才做到了心中有数,我在此很想感谢给予我耐心解答的老师,同学们勤恳塌实,始终热情高涨,我感谢这种氛围。
当然,这次实验,我也发现了自身的很多不足之处,在以后的学习中,我会不断的完善自我,不断进取,能使自己在这方面有一个大的发展,我真的很高兴有这次的锻炼机会。
实验五、并行接口8255应用
一、实验目的
pop dx
pop ax
iret
ienter endp
init proc near
mov dx,cs8259a
mov al,icw1
out dx,al
mov dx,cs8259b
mov al,icw2
out dx,al
mov al,icw4
out dx,al
mov al,ocw1
out dx,al
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机接口技术实验电子与信息工程班级:电子0911姓名:学号:2012年5月9日实验一、I/O地址译码一、实验目的掌握I/O地址译码电路的工作原理。

二、实验原理和内容实验电路如图1-1所示,图中线路两端有节点的信号线需要用户用实验导线连接起来。

其中74LS74为D触发器,可直接使用实验台上部系统板上的D触发器。

74LS138为地址译码器。

译码输出端Y0~Y7在实验台中间系统板上引出,每个输出端包含8个地址,即:Y0:280H~287H;Y4:2A0H~2A7H;Y1:288H~28FH;Y5:2A8H~2AFH;Y2:290H~297H;Y6:2B0H~2B7H;Y3:298H~29FH;Y7:2B8H~2BFH;当CPU执行I/ O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。

例如:执行下面两条指令,对应的译码输出脚输出一个负脉冲。

MOV DX,PORT1OUT DX,AL(或IN AL,DX)执行下面两条指令,对应的译码输出脚输出一个负脉冲。

MOV DX,PORT2OUT DX,AL(或IN AL,DX)利用这个负脉冲控制发光二极管L0闪烁发光(亮灭循环),时间间隔通过软件延时实现。

注意:命令中的端口地址PORT1、PORT2 是根据DVCC卡的I/O基址再加上偏移量计算出来的,不同的微机DVCC卡的I/O基址可能不同,需要事先查找出来,详细见《用户手册》第五章节5.3中第10~12点介绍的查找方法。

计算公式如下:PORT1 = 查找出的DVCC卡的I/O基址 + 偏移量其中:偏移量 = Y0~Y7中所选定的任意一个译码地址值-280H。

下面的程序用到Y4,即2A0H。

假设DVCC卡的I/O基地址=0C400H,经计算PORT1= 0C420H。

三、编程提示1.实验电路中D触发器的CLK 端输入脉冲时,上升沿使Q端输出高电平,L0发光,CLR端加低电平L0灭。

四、原理图五、程序;*******************************; ;* I/O地址译码 *; ;*******************************;ioport equ 0c400h-0280h outport1 equ ioport+2a0h outport2 equ ioport+2a8hcode segmentassume cs:codestart:mov dx,outport1out dx,alcall delay ;调延时子程序mov dx,outport2out dx,alcall delay ;调延时子程序mov ah,1int 16hje startmov ah,4chint 21hdelay proc near ;延时子程序mov bx,2000lll: mov cx,0ll: loop lldec bxjne lllretdelay endpcode endsend start六、实验心得通过此次I/O地址译码实验,让我对硬件的连线有了进一步的熟化,在做第一个实验的时候,我们将clk接口接在了Y0和clr接在了Y1上面,发现接在L4灯上信号没有反应,后来在反复的检查中发现它们应该接在Y4和Y5上,这与程序的编译的地址有关,在许老师的解释下我们终于搞懂了。

虽然我们习惯了C语言的编程,而且现在所有的设计题都是用的C语言,但是汇编也是比较重要的语言,所以今后学习还得熟化。

实验二、可编程定时计数器1一、实验目的掌握8253的基本工作原理和编程方法。

二、实验内容1.按图接线,将计数器0设置为方式0,计数器初值为N(N≤0FH,本例程中为0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用L0或逻辑笔观察OUT0电平变化,初始时OUT0为高电平,当输入N个脉冲时,OUT0变为低电平,当输入N+1个脉冲后OUT0变高电平)。

三、原理图四、实验流程图五、程序;*************************;;* 8253方式0计数器实验 *;;*************************;ioport equ 0C400h-0280hio8253k equ ioport+283hio8253a equ ioport+280hcode segmentassume cs:codestart:mov al,14h ;设置8253通道0为工作方式2,二进制计数 mov dx,io8253kout dx,almov dx,io8253a ;送计数初值为08Hmov al,08hout dx,allll: in al,dx ;读计数初值call disp ;调显示子程序push dxmov ah,06hmov dl,0ffhint 21hpop dxjz lllmov ah,4ch ;退出int 21hdisp proc near ;显示子程序push dxand al,0fh ;首先取低四位mov dl,alcmp dl,9 ;判断是否<=9jle num ;若是则为'0'-'9',ASCII码加30Hadd dl,7 ;否则为'A'-'F',ASCII码加37Hnum: add dl,30hmov ah,02h ;显示int 21hmov dl,0dh ;加回车符int 21hmov dl,0ah ;加换行符int 21hpop dxret ;子程序返回disp endpcode endsend start六、实验心得本实验的实验现象是在实验箱上按动按键,在电脑屏幕上出现的字符由程序设定,然后按键以后,电脑上的字符会相应的变化,当计数到零时L0灯会亮起,但程序的缺点是无法再次计数使L0灯熄灭。

通过此次实验,让我们对可编程定时计数器8253A的0方式编程有了进一步的认识,正所谓学有所用,只在书本上看程序不如在实际中应用的有感觉,而且,所有的学科都来源于生活,没有生活的具体要求,所有的研究都是徒劳,所以我们应该将书本的知识与实际联系起来才能更加的深刻。

实验三、可编程定时计数器2一、实验目的掌握8253的基本工作原理和编程方法。

二、实验内容1.按图连接电路,将计数器0、计数器1分别设置为方式3,计数初值设为1000,用电平指示灯L0或逻辑笔观察OUT1输出电平的变化,要求输出频率1HZ的分频信号。

三、原理图四、实验流程图、五、程序;*******************;* 8253分频 *;*******************ioport equ 0C400h-0280hio8253a equ ioport+280h io8253b equ ioport+281h io8253k equ ioport+283hcode segmentassume cs:codestart:mov dx,io8253k ;向8253写控制字mov al,36h ;使0通道为工作方式3out dx,almov ax,1000 ;写入循环计数初值1000mov dx,io8253aout dx,al ;先写入低字节mov al,ahout dx,al ;后写入高字节mov dx,io8253kmov al,76h ;设8253通道1工作方式2out dx,almov ax,1000 ;写入循环计数初值1000mov dx,io8253bout dx,al ;先写低字节mov al,ahout dx,al ;后写高字节mov ah,4ch ;程序退出int 21hcode endsend start六、实验心得本实验的实验现象是电脑上程序运行一遍以后,电脑屏幕会退出编译界面,L4灯会闪烁,分析程序后发现,原来程序没有加入循环环节,所以只能向芯片发送一次程序,这些都是可以通过程序来改进的。

连接电路时,我是把所有线全部拆了再连接这个电路的,最后发现其实有好多的连线与上一个实验相同,这就告诉我们,在做一件事之前,我们得做好充分的准备再做事才能事半功倍。

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

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

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

3.由于DVCC卡使用PCI总线,所以分配的IO地址每台微机可能都不同,编程时需要了解当前的微机使用那段IO地址并进行设置,获取方法见《用户手册》第五章节5.3第10~12点中的介绍。

下面的程序D8255_1.ASM(在文件夹“ASM_汇编例程”中)是需要用户自己根据查找到的DVCC卡的I/O基址替换到程序中带下划线的位置(0C400H)。

三、编程提示1.8255控制寄存器端口地址 28BH,A口的地址 288H,C口的地址 28AH。

四、原理图五、实验流程图六、程序;*******************************;;* 8255方式0的C口输入,A口输出 *; ;*******************************;ioport equ 0C400h-0280hio8255a equ ioport+288hio8255b equ ioport+28bhio8255c equ ioport+28ahcode segmentassume cs:codestart: mov dx,io8255b ;设8255为C口输入,A口输出mov al,8bhout dx,alinout: movdx,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 ;否则返回int 21hcode endsend start七、实验心得在做并行口8255C的实验的时候,我们将8255CS信号线连接在一个开关上,这就使得选通8255芯片的控制权交到了实验者得手上,只有拨动开关时才能使8255工作,为了方便起见,我们只连接了一盏灯和一个开关来进行实验的,拨动开关时,看到相应接的灯有亮灭的变化。

实验五、七段数码管显示程序1一、实验目的掌握数码管显示数字的原理二、实验内容1. 静态显示:数码管为共阴极,通过BCD码译码驱动器CD4511驱动,其输入端A~D输入4位BCD码,位码输入低电平选中。

按图连接好电路,将8255的A口PA0~PA3与七段数码管LED1的BCD码驱动输入端A1~D1相连,8255的A口PA4~PA7与七段数码管LED2的BCD码驱动输入端A2~D2相连),8255的B 口PB0~PB3与七段数码管LED3的BCD码驱动输入端A3~D3相连,8255的B口PB4~PB7与七段数码管LED4的BCD码驱动输入端A4~D4相连,8255的C口PC0~PC3分别与七段数码管LED1~LED4的位驱动输入端DG1~DG4相连。

相关文档
最新文档