华中科技大学微机原理与接口实验报告

合集下载

微机原理与接口实践报告

微机原理与接口实践报告

《微机原理与接口》课外实践报告实践选题:主过程调用子过程专业班级:指导教师:姓名及学号:成绩评定:一、实验目的1、掌握主程序与子程序之间的调用关系及其调用方法。

2、掌握子程序调用过程中近程调用与远程调用的区别。

3、熟练掌握码型变换的程序。

二、实验内容从键盘输入二位非压缩BCD数,存入AX寄存器中,编程实现将其转换为二进制数,并在屏幕上显示。

要求码型转换程序用远程子程序编写,字符显示用近程子程序编写。

数据可循环输入,遇‘00’结束。

三、实验准备1、了解子程序设计的基本方法,根据实验内容要求编写出实验用程序。

2、熟悉键盘输入和字符显示的程序段的编制。

3、有能够编写汇编语言的环境和软件四、实验步骤1、编辑、汇编源程序,生成可执行文件。

2、执行程序,检查输入、输出结果,看是否正确。

如不正确,用DEBUG检查,修改源程序,再汇编、运行,直到程序正确为止。

3、用DEBUG的T命令或P命令跟踪程序的执行,观察在远程和近程调用过程中,堆栈的变化情况。

五、程序流程图开始TRAN程序标准序开始读入十进制数据放AX中AX AX AND 0F0FH是00?Y BL ALN调用转换子程序结束AL左移3位回车、换行BL左移1位AL AL+BL主程序流程图AL AL+AHRET转换子程序TRAN流程图六、程序源代码STA SEGMENT STACK 'STACK'DB 100 DUP(0)STA ENDSCSAG SEGMENT PARA 'CODE'ASSUME CS:CSAGMAIN PROC FARSTART: PUSH DSSUB AX,AXPUSH AXREV: MOV AH,1INT 21HMOV BL,ALINT 21HMOV AH,ALMOV AL,BLCMP AX,3030HJE ENDTRANCALL NEAR PTR TRANCALL FAR PTR CONMOV AL,0DHCALL FAR PTR DISPMOV AL,0AHCALL FAR PTR DISPMOV AL,0AHCALL FAR PTR DISPJMP REVENDTRAN: RETMAIN ENDPTRAN PROC NEARAND AX,0F0FHMOV BL,ALMOV BL,ALMOV CL,3SHL AL,CLMOV CL,1SHL BL,CLADD AL,BLADD AL,AHRETTRAN ENDPCSAG ENDSCSBG SEGMENT PARA 'CODE' ASSUME CS:CSBGCON PROC FARPUSH AXMOV CL,4SHR AL,CLADD AL,30HCMP AL,39HJBE CON2ADD AL,7CON2: PUSH AXMOV AL,0DHCALL FAR PTR DISPMOV AL,0AHCALL FAR PTR DISPPOP AXCALL FAR PTR DISPPOP AXAND AL,0FHADD AL,30HCMP AL,39HJBE CON1ADD AL,7CON1: CALL FAR PTR DISPRETCON ENDPDISP PROC FARPUSH BXMOV BX,0MOV AH,14INT 10HPOP BXRETDISP ENDPCSBG ENDSEND START七、运行结果如下:当输入十进制下的55后自动显示十六进制下37,并且可以再次输入输入73之后有自动显示49,输入66显示42,光标闪烁等待继续输入数再次输入89显示59,光标闪烁等待输入,当输入00时,退出程序。

华中科技大学微机接口课程设计实验报告

华中科技大学微机接口课程设计实验报告

《微机接口技术》课程设计报告设计题:人工降雨系统指导老师:谭支鹏、熊自立、陈永平设计时间:2013.10.28 至2013.11.1人工降雨系统设计一、课程设计目的1、掌握接口硬件开发平台的使用方法,利用现有的实验平台和PC机,组成一个微机模拟应用系统。

2、掌握基本接口电路的综合应用。

3、掌握接口电路的驱动程序和界面软件的设计与编制,学会调试与测试接口软件的一般方法。

4、微机接口技术及接口芯片的综合应用。

5、在干旱了一段时间后,进行人工降雨。

不同的季节,大自然不降雨对生活生产的影响不同,要控制好等待多久才进行人工降雨,以及降雨的量。

二、课程设计要求设计一个模拟的微机应用系统。

要求该系统综合应用实验台上的多种资源(并行接口、串行接口及其它接口和传感器)设计满足选题要求的符合实际应用的硬件系统,编制主控程序;执行元件驱动程序;通信程序等相应的软件,实现主控中心微机与终端机的远距离传送以及远程控制或监测功能。

由一个主控机(上位机)和若干个下位机组成,上位机与下位机利用串行通讯接口进行连接,构成一个完整系统。

主控机负责数据处理,下位机负责接口访问,接口所需的芯片功能需要通过FPGA自己设计实现。

基于FPGA设计的芯片功能可以是一个完整的功能芯片,也可以只是你在应用需要的芯片某项功能即可。

验收的时候会根据实现的情况作出评价。

(1)主控机:在屏幕上用数字、图形、表格、曲线等方式直观地显示数据/状态处理的结果和过程。

(2)下位机:用实验台的声光部件描述当前监控/操作的工作状态,按主控机的命令驱动执行元件并返回状态和结果。

题目要求:1.用实验台上的信号电源模拟湿度计的信号电压。

2.用实验台上的LED和扬声器模拟加湿动作及报警信号。

3.用实验台上的步进电机模拟水泵动作。

4.上位机实现图形监控。

(模拟)三、课程设计内容及过程1.系统总体结构图1) 系统硬件由主控机(其中一台微机)、终端机(另一台位微机)和执行部件组成。

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

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

微机原理与接口技术实验报告(一)实验内容一:1、实验目的: 考察对内存寻址方式、8086指令的理解内存中的数据排列如上表所示,各寄存器内容如下DS=2100H ES=2111H SS=2000H BX=106H CX=3H SI=106H DI=12H BP=1100H SP=1100HFR=3402H (FR 标志寄存器,FR 中的DF -字符串操作方向位为1)在执行下列指令后,写出寄存器AX中的内容 0) pop ax; AX= 1) mov ax,bx; AX= 2) mov ax,[bx];AX= 3) mov ax,102H;AX= 4) mov ax,[102H];AX= 5) mov ax,6[SI];AX= 6) lea ax,6[BX][DI];AX= 7) mov ax,[BP+DI];AX= 8) rep lodsw;AX= , 还需写出SI=2、实验内容: (1)开始菜单下选择运行,输入cmd 回车,在开启的窗口中输入debug 后回车,进入程序输入环境(2)利用r 指令显示当前各寄存器储值并按照上文中的寄存器值进行修改 结果如下:物理地址 内容(字节) 物理地址 内容(字节)21100H BEH 21110H 99H 21101H 02H 21111H 00H 21102H 01H 21112H E8H 21103H 8BH 21113H 7EH 21104H 44H 21114H E0H 21105H 02H 21115H 74H 21106H 29H 21116H 06H 21107H 44H 21117H E8H 21108H 04H 21118H 17H 21109H 9CH 21119H 01H 2110AH 50H 2111AH ACH 2110BH E6H 2111BH EBH 2110CH 99H 2111CH 34H 2110DH C6H 2111DH 00H 2110EH 06H 2111EH 30H 2110FHE8H2111FH0BH(3)d指令查看21100H——2111FH内存单元的内容(4)e指令对该段内存单元进行赋值(5)a指令按顺序输入要求中列出的指令(6)u指令进行反汇编(7)t指令(跟踪命令)逐条运行指令,观察记录指令运行结果3、实验结果0) pop ax; AX=02be1) mov ax,bx; AX=01062) mov ax,[bx];AX=44293) mov ax,102H;AX=01024) mov ax,[102H];AX=8b015) mov ax,6[SI];AX=c6996) lea ax,6[BX][DI];AX=011e7) mov ax,[BP+DI];AX=7ee88) rep lodsw;AX=4429, SI=0108实验内容二:1、实验目的:熟悉masm for windows 软件的应用,体会汇编程序的编写、编译、执行及调试等各个环节。

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

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

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

实验一,微机原理。

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

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

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

实验二,接口技术。

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

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

实验三,实验综合。

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

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

总结。

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

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

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

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

感谢大家的阅读!。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

微机原理与接口技术实验报告学院: 核技术与自动化工程学院专业: 电气工程及其自动化班级: XXXXXX学号: XXXXX姓名: XXX指导老师: XXX完成时间: 2012、11、14实验一 EMU8086软件的使用一、实验目的1、了解EMU 8086软件的基本使用步骤和各个工作区的功能,在能力方面主要是学以致用,将理论知识运用于实际的设计,从设计的完整和缺陷中找到新的突破口,以便温故而知新,从而提升自己的实际操作技能,能够通过自我想象与思考做出很多有价值的设计。

2、在系统的学习了微机原理与接口技术后,主要针对8086,利用emu8086软件设计一些程序,熟悉了解此款软件的运行过程中各个步骤寄存器内容及地址的变化。

3、在理论方面,基础软件实验部分共有六个实验组成,通过对这些实验程序的编写、调试,使学生熟悉8086/8088的指令系统等,了解程序设计过程,掌握汇编程序设计方法以及如何使用实验系统提供的各种调试、分析手段来排除程序错误。

二、实验仪器及设备PC设备、EMU8086软件平台、EMU8086软件仿真平台三、实验内容双击EMU8086图标,打开程序。

此时会弹出welcome窗口,见图1.1所示,可将该窗口关闭直接进入编辑状态;也可点击它的new按钮,则会弹出代码模板选择框供用户选择(可选择EXE模板),见图1.2所示,一般点击Cancel按钮,直接进入编辑状态。

在编辑窗口,可直接将源程序输入,见图1.3所示。

图1.1 welcome窗口图1.2 模板选择图1.3编辑窗口输入源程序点击compile(编译)按钮则进行汇编和链接,生成.EXE文件,并提示存盘。

点击emulate(仿真)按钮则可进入8086仿真器界面,见图1.4所示。

界面中提供了寄存器窗口、内存单元窗口及反汇编窗口,下方一行按钮则提供了虚拟屏幕、源代码观察、复位、辅助工具、变量、DEBUG、堆栈及FLAGS(标志寄存器)观察等功能。

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

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

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

一、实验器材与软件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’。

华科_HUST_微机原理_并行IO接口实验_独立式开关输入_实验报告

华科_HUST_微机原理_并行IO接口实验_独立式开关输入_实验报告

微机原理实验报告学号姓名专业通信1301指导教师罗杰院(系、所)电信学院并行I/O接口实验一、实验目的1、掌握GPIO IP核的工作原理和使用方法。

2、掌握IO接口程序控制方法1)查询方式2)中断方式3)延时方式3、掌握中断控制方式的IO接口设计原理4、掌握中断程序设计方法二、实验任务使用查询、中断两个方式做独立式开关输入,将开关状态显示到console。

三、硬件电路框图四、硬件平台建立1 创建XPS工程创建basesystem文件夹,建立最小系统。

启动XPS,打开system.xmp工程文件。

2 添加和配置GPIO IP核在XPS主界面左边窗口选择IP Cataiong标签,点击General Purpose I/O展开。

添加AXI Genaral Purpose I/O。

配置开关与led灯分别有16个,将其分别设置为16在ucf文件中添加相应代码3、添加和配置中断控制器IP核在XPS主界面左边窗口选择Clock, Reset and Interrupt标签,点击AXI InterruptController展开。

将INTERRUPT引脚选择axi_intc.c_INTERRUPT。

设置中断输入4、产生外部GPIO链接SW为开关输入,从GPIO_IO接口接入,LED灯输出,从GPIO2_IO接口接入展开External Ports项可看到SW与LED的外部接口五、软件平台建立1.查询源代码#include"stdio.h"#include"xil_io.h"#include"xil_types.h"#define gpio_ctrl 0x40000004 //定义通道1地址#define gpio_data 0x40000000 //定义数据1地址#define gpio1_ctrl 0x4000000c //定义通道2地址#define gpio1_data 0x40000008 //定义数据2地址int main(void){u16 SW,psw; //定义两个输入,psw作比较信号Xil_Out16(gpio_ctrl,0xffff); //输入Xil_Out16(gpio1_ctrl,0x0); //输出psw=SW=0x00; //赋初值0给两个输入信号while(1){SW=Xil_In16(gpio1_data);Xil_Out16(gpio1_data,SW);if(psw!=SW) //判断SW与PSW是否相等{psw=SW;SW=Xil_In16(gpio1_data);xil_printf("the Switch state is 0x%X\n\r",SW);//显示开关状态}}return 0;}状态显示:实验流程图:2 中断源代码:#include"xgpio.h"#include"xparameters.h" #include"xintc.h"#include"stdio.h"#include"xil_io.h"XGpio swled;XIntc intc;//实例化intcint swstate;int pshdip;void Initialize();void GPIOHandler(void * CallBackRef);int main(){Initialize();while(1){if(pshdip){xil_printf("the Switch state is 0x %x\n\r",swstate);pshdip=0;}}return 0;}void Initialize(){XGpio_Initialize(&swled, XPAR_AXI_GPIO_0_DEVICE_ID);XGpio_SetDataDirection(&swled, 1, 0xffff);XGpio_SetDataDirection(&swled, 2, 0x0);XGpio_InterruptEnable(&swled, 1);XGpio_InterruptGlobalEnable(&swled);//XGpio_InterruptClear(&swled,1);XIntc_Initialize(&intc,XPAR_AXI_INTC_0_DEVICE_ID );XIntc_Connect(&intc, XPAR_AXI_INTC_0_AXI_GPIO_0_IP2INTC_IRPT_INTR, (XInterruptHandler)GPIOHandler, (void *)&swled);XIntc_Enable(&intc, XPAR_AXI_INTC_0_AXI_GPIO_0_IP2INTC_IRPT_INTR);microblaze_enable_interrupts();microblaze_register_handler((XInterruptHandler)XIntc_InterruptHandler,( void *)&intc);XIntc_Start(&intc, XIN_REAL_MODE);void GPIOHandler(void * CallBackRef){swstate= XGpio_DiscreteRead(&swled, 1); pshdip=1;XGpio_DiscreteWrite(&swled, 2, swstate);XGpio_InterruptClear(&swled, 1);状态显示:}实验流程图:六、实验小结在这个实验的过程中,令我觉得最困难的不是硬件部分的理解和搭建,而是软件部分代码的理解,由于代码中利用到了中断,所以对中断状态的理解和使用上面遇到了一些问题。

华中科技大学HUST微机原理并行IO接口数码管实验报告

华中科技大学HUST微机原理并行IO接口数码管实验报告

电子信息与通信学院实验报告实验名称:微机原理实验课程名称:并行IO接口设计班级:姓名:学号:教师:一、实验目的1.掌握GPIO IP核的工作原理和使用方法2.掌握中断控制方式的IO接口设计原理3.掌握中断程序设计方法4.掌握IO接口程序控制方法-------查询方式-------延时方式二、实验任务写一个数码管滚动输出任意数字的程序,并下载到FPGA板子上,用延时、中断两种方式实现。

三、实验原理硬件实现框图如图所示:四、硬件实现步骤1.使用XPS创建一个基于AXI总线的最小计算机系统。

File –> New BSB Project,如图:2.修改时钟设置:将时钟产生器的时钟输入信号进行修改,修改为单一时钟源。

修改后的结果如图:3.添加GPIO IP核,设置seg_0配置:a.在IP Catalog标签中,双击下面图标创建GPIO IP核:b.添加GPIO IP核后,将名字改为LED_16Bits,如图:c.更改seg_0配置窗口的属性,如图:4.添加AXI Interrupt Controller IP核:a.在IP Catalog标签中,双击下面图标创建INTC IP核:b.添加axi_intc_0的中断源,如图:c.将microblaze_0实例的INTERRUPT引脚选择axi_intc_0_INTERRUPT,如图:5.产生外部GPIO连接:a.选中seg_0中的GPIO_IO_O,选择make external,生成外部连接端口;选中GPIO_IO,设置为“No connection”,取消其外部连接端口;选中seg_0中的GPIO2_IO_O,选择make external,生成外部连接端口;选中GPIO2_IO,设置为“No connection”,取消其外部连接端口。

结果如图:b.在ports标签下,展开External Ports项,可看到seg_0生成的seg_0_GPIO2_IO_pin和seg_0_GPIO_IO_pin端口,如图:6.添加timer IP核:a.选择如图的IP核并双击,添加到工程:b.中断信号的连接结果如图所示:7.配置UCF文件:在UCF文件中修改如下所示配置,配置LED连接电路约束:NET "CLK" TNM_NET = sys_clk_pin;TIMESPEC TS_sys_clk_pin = PERIOD sys_clk_pin 100000 kHz;NET "CLK" LOC = "E3" | IOSTANDARD = "LVCMOS33";NET "RESET" LOC = "E16" | IOSTANDARD = "LVCMOS33";NET "RsRx" LOC = "C4" | IOSTANDARD = "LVCMOS33";NET "RsTx" LOC = "D4" | IOSTANDARD = "LVCMOS33";NET "seg_0_GPIO2_IO_pin<0>" LOC = "L3" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO2_IO_pin<1>" LOC = "N1" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO2_IO_pin<2>" LOC = "L5" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO2_IO_pin<3>" LOC = "L4" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO2_IO_pin<4>" LOC = "K3" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO2_IO_pin<5>" LOC = "M2" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO2_IO_pin<6>" LOC = "L6" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO2_IO_pin<7>" LOC = "M4" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO_IO_pin<0>" LOC = "N6" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO_IO_pin<1>" LOC = "M6" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO_IO_pin<2>" LOC = "M3" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO_IO_pin<3>" LOC = "N5" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO_IO_pin<4>" LOC = "N2" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO_IO_pin<5>" LOC = "N4" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO_IO_pin<6>" LOC = "L1" | IOSTANDARD = "LVCMOS33"; NET "seg_0_GPIO_IO_pin<7>" LOC = "M1" | IOSTANDARD = "LVCMOS33";8.创建工程过程完成后,a.在主界面下选择Hardware->Generate Netlist;b.在主界面下选择Hardware->Generate Bitstream;c.单击Graphical Design View,可以看到系统的连接图,如下:五、软件设计1.中断方式实现数码管滚动任意数字用户应用程序的设计包括定时器配置、启动中断系统、设计中断服务程序。

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

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

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

1. 实验目的。

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

2. 实验内容。

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

3. 实验步骤。

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

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

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

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

4. 实验结果。

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

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

实验二,接口技术实验。

1. 实验目的。

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

2. 实验内容。

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

3. 实验步骤。

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

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

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

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

4. 实验结果。

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

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

总结。

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

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

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

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

微机原理及接口技术实验报告一、实验目的本实验旨在通过掌握微机原理和接口技术的实验操作,实践相关理论知识,加深对微机原理和接口技术的理解。

二、实验设备和材料1.计算机主机2.操作系统3.接口卡4.编程软件三、实验原理微机原理是指通过学习微机的结构、功能和工作原理,从硬件层面掌握微机的基本知识。

接口技术是指连接不同设备之间的通信和数据交换技术,通过学习接口技术可以实现设备的互联和数据的传输。

四、实验步骤1.将接口卡插入计算机主机的扩展槽中。

2.启动计算机,并加载操作系统。

3.打开编程软件,编写实验程序。

4.将编写好的程序烧录到接口卡中。

5.连接外部设备和接口卡,并确认连接正确无误。

6.运行程序,并观察外部设备和接口卡之间的数据交互情况。

7.分析实验结果,并记录实验数据。

8.关闭程序和计算机。

五、实验结果及分析通过实验我们成功连接了外部设备和接口卡,并实现了数据的传输和交互。

在程序运行过程中,我们观察到外部设备正常工作,并且与接口卡之间的通信稳定可靠。

根据实验数据分析,我们可以得出接口卡的性能良好,并且能够满足实际应用需求。

六、实验心得通过这次实验,我对微机原理和接口技术有了更深入的理解。

实践操作让我加深了对硬件设备和软件编程的认识,掌握了实现设备互联和数据传输的基本方法。

在实验过程中,我遇到了一些问题,如接口卡的插入和连接问题,但通过查阅资料和请教老师同学,最终成功解决了这些问题。

我发现实验不仅帮助我巩固了理论知识,也提高了我的实践能力和解决问题的能力。

总结起来,微机原理和接口技术是计算机相关专业的基础课程之一,通过实验的方式学习可以更好地将理论知识与实际应用相结合。

我相信通过不断的实践和学习,我会在微机原理和接口技术方面有进一步的提高和发展。

华科_HUST_微机原理_类MIPS单周期微处理器设计_实验报告

华科_HUST_微机原理_类MIPS单周期微处理器设计_实验报告

微机原理实验报告学号姓名华中科技大学专业通信1301指导教师罗杰院(系、所)电信学院类MIPS单周期微处理器设计一.实验目的1.了解微处理器的基本结构。

2.掌握哈佛结构的计算机工作原理。

3.学会设计简单的微处理器。

4.了解软件控制硬件工作的基本原理。

二.实验任务利用HDL语言,基于Xilinx FPGA nexys4实验平台,设计一个能够执行以下MIPS指令集的单周期类MIPS处理器,要求完成所有支持指令的功能仿真,验证指令执行的正确性,要求编写汇编程序将本人学号的ASCII码存入RAM的连续内存区域。

(1)支持基本的算术逻辑运算如add,sub,and,or,slt,andi指令(2)支持基本的内存操作如lw,sw指令(3)支持基本的程序控制如beq,j指令三.各模块实现原理1.指令存储器设计指令存储器为ROM类型的存储器,为单一输出指令的存储器。

设置一个程序计数器指针PC指向指令存储器,当时钟上升沿到来时,取出PC所指的指令,当时钟的下降沿到来时,修改PC的值,使其指向下一条要执行的指令。

因此其对外的接口为clk、存储器地址输入信号(指令指针)以及数据输出信号(指令)。

在本实验中调用ISE提供的IP核进行设计,设定的指令存储器大小为128字。

指令存储器模块在顶层模块中被调用。

输入为指令指针(PC)与时钟信号(clkin),输出为32位的机器指令,并将输出的机器指令送到后续的寄存器组模块、控制器模块、立即数符号扩展模块进行相应的处理。

2.数据存储器设计数据存储器为RAM类型的存储器,并且需要独立的读写信号控制。

因此其对外的接口为clk、we、datain、addr;输出信号为dataout。

当时钟上升沿到来时,如果写信号(we)为真,根据addr所表示的地址找到对应的存储单元,并将输入的数据(datain)写到对应的存储单元中;如果写信号为假,则根据addr所表示的地址,将对应存储单元的数据送到输出端(dataout)。

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

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

微机原理与接口技术实验报告实验目的,通过本次实验,掌握微机原理与接口技术的基本知识,了解并掌握微机接口技术的应用方法。

实验仪器与设备,微机实验箱、接口卡、示波器、电源等。

实验原理,微机接口技术是指微机与外部设备进行数据交换的技术。

它是微机与外部设备之间的桥梁,通过接口技术可以实现微机与外部设备之间的数据传输和通信。

实验内容与步骤:1. 实验一,串行通信接口实验。

a. 将串行通信接口卡插入微机实验箱的接口槽中;b. 连接示波器和外部设备,并进行数据传输测试;c. 观察并记录数据传输的波形和数据传输情况。

2. 实验二,并行通信接口实验。

a. 将并行通信接口卡插入微机实验箱的接口槽中;b. 连接外部设备,并进行数据传输测试;c. 观察并记录数据传输的情况。

3. 实验三,AD转换接口实验。

a. 将AD转换接口卡插入微机实验箱的接口槽中;b. 连接外部模拟信号源,并进行模拟信号转换测试;c. 观察并记录模拟信号转换的波形和数据传输情况。

实验结果与分析:1. 串行通信接口实验结果分析:通过实验发现,在串行通信接口实验中,数据传输的波形稳定,数据传输速度较快,适用于对数据传输速度要求较高的应用场景。

2. 并行通信接口实验结果分析:在并行通信接口实验中,数据传输稳定,但数据传输速度相对较慢,适用于对数据传输速度要求不高的应用场景。

3. AD转换接口实验结果分析:经过实验发现,AD转换接口可以将模拟信号转换为数字信号,并且转换精度较高,适用于对信号转换精度要求较高的应用场景。

实验总结与展望:通过本次实验,我们深入了解了微机原理与接口技术的基本知识,掌握了串行通信接口、并行通信接口和AD转换接口的应用方法。

同时,也发现不同接口技术在数据传输速度、稳定性和精度方面各有优劣,需要根据实际应用场景进行选择。

未来,我们将继续深入学习和探索微机接口技术的应用,为实际工程项目提供更好的技术支持。

结语:通过本次实验,我们对微机原理与接口技术有了更深入的了解,实验结果也验证了接口技术在数据传输和信号转换方面的重要作用。

微机原理综合实验报告_nexys4_简易数字信号发生器_HUST_华中科技大学

微机原理综合实验报告_nexys4_简易数字信号发生器_HUST_华中科技大学
四、 项目操作说明……………………………………………………18 五、 附录………………………………………………………………19 六、 心得体会及建议…………………………………………………20
一、项目简介
1.设计思路
本次项目我们小组选择的是信号发生器,由于之前做过 D/A 显示锯齿波的实验,便 想到在该实验的基础上进行功能的扩充,这样思路比较清晰。首先我们想到在上次实验 的基础上加上方波、三角波和正弦波这几种常见波形,实现起来也与锯齿波较为类似, 只是在正弦波的显示上花了点功夫,最后决定通过 MATLAB 取值来实现,最后能正常 显示。而几种波形的切换我们则想到了开关,通过添加开关的 GPIO 核来获取开关的状 态,预留了三位用于波形的切换。仅仅几种波形的显示是远不够的,所以我们决定添加 频率的调节和幅度的调节部分,实现时发现幅度调节容易实现但频率调节有些难度,最 后从代码产生波形的原理上来分析想到通过改变取样的次数来调节频率的增减,而选择 用一位开关用于切换频率增加和减小,这样会节省资源。
Switch<2>---Switch<0>:选择波形 Switch<8>---Switch<3>:调节频率 Switch<9>:控制频率增加和减小 Switch<15>---Switch<10>:调节幅度 BTNU:增加占空比 BTND:减小占空比
1
二、项目构成及概要设计
1.硬件模块构成
本项目用到的硬件平台包括 SPI IP 核与 D/A 芯片构成数据的传输和数模转换的功能, 4 个 GPIO IP 核分别用于开关状态的读取,按钮状态的读取,LED 灯的显示,数码管的 段选和位选。一个 INTC IP 核用于接受来自于 SPI 和按钮的 GPIO 的中断,并将中断发 送给 microblaze 核来控制。

华科微机原理实验报告

华科微机原理实验报告

微机原理实验报告课程:微机原理指导老师姓名:学号:实验名称:Lab 02: MIPS处理器部件实现A微机原理实验报告一、实验目的本实验旨在实现MIPS处理器的部件—控制器和ALU,理解CPU控制器,理解ALU的原理,使用Verilog语言设计CPU控制器和ALU ,使用ISim进行行为仿真。

二、实验原理及说明MIPS的基本架构如图1所示,包括Control,ALU这样的组合逻辑单元,也包括如instruction memory,Data memory和Registers file存储单元。

本实验主要实现CPU Control和ALU两个部分。

(一)CPU控制器的实现CPU Control单元输入为指令的opCode字段,即操作码;以及R指令的funct编码。

操作码和Funct编码经过主控制单元的译码,给ALU,Data Memory,Registers ,Muxs等部件输出正确的控制信号。

图2. MIPS基本指令格式图: 控制模块的IO定义注:Jump指令编码是000010,Jump输出信号为1,其他输出信号都为0图3. OpCode与控制输出的编码关系图4. Funct,ALUOp与ALU Control编码关系(二) ALU的实现ALU是CPU核心的计算单元,实现诸如加,减,或,与等操作。

算术操作的编码三、实验verilog代码(一)CPU控制器的实现module Ctr(input [5:0] OpCode,input [5:0] Funct,output regRegDst,output regALUSrc,output regRegWrite,output regMemWrite,output regMemRead,output regMemtoReg,output reg Branch,output reg Jump,output reg [3:0] ALUControl);reg [1:0] ALUOp;always @(OpCode)begincase(OpCode)//R type6'b000000:beginRegDst=1; ALUSrc=0; RegWrite=1; MemWrite=0; MemRead=0; MemtoReg=0;Branch=0;ALUOp=2'b10; Jump=0;end//beq6'b000100:beginRegDst=1'bx; ALUSrc=0; RegWrite=0; MemWrite=0; MemRead=0; MemtoReg=1'bx; Branch=1;ALUOp=2'b01; Jump=0;end//lw6'b100011:beginRegDst=0; ALUSrc=1; RegWrite=1; MemWrite=0; MemRead=1; MemtoReg=1;Branch=0;ALUOp=2'b00; Jump=0;end//sw6'b101011:beginRegDst=1'bx;ALUSrc=1;RegWrite=0;MemWrite=1;MemRead=0;MemtoReg=1'bx;Branch=0;ALUOp=2'b00;Jump=0;end//Jump6'b000010:beginRegDst=0;ALUSrc=0;MemtoReg=0;RegWrite=0;MemRead=0;MemWrite=0;Branch=0;ALUOp=2'b00;Jump=1;endendcaseendalways @(ALUOp or Funct)begincasex({ALUOp,Funct})8'b00xxxxxx: ALUControl=4'b0010;8'b01xxxxxx: ALUControl=4'b0110;8'b1xxx0000: ALUControl=4'b0010;8'b1xxx0010: ALUControl=4'b0110;8'b1xxx0100: ALUControl=4'b0000;8'b1xxx0101: ALUControl=4'b0001;8'b1xxx1010: ALUControl=4'b0111;default: ALUControl=4'b0000;endcaseendendmodule(二) ALU的实现module ALU(input [31:0] SrcA,input [31:0] SrcB,input [3:0] ALUCtr,output Zero,output reg [31:0] ALURes);assign Zero=(ALURes==1'b0);always @(SrcA or SrcB or ALUCtr)begincase(ALUCtr)4'b0000: ALURes=SrcA&SrcB; //AND4'b0001: ALURes=SrcA | SrcB; //OR4'b0010: ALURes=SrcA + SrcB; //add4'b0110: ALURes=SrcA - SrcB; //substract4'b0111: ALURes=SrcA<SrcB ? 1:0; //set on less than 4'b1100: ALURes=~(SrcA | SrcB); //NORdefault ALURes=32'h0;endcaseendendmodule四、仿真测试1.代码(一)CPU控制器的实现module Ctr_tb;// Inputsreg [5:0] OpCode;reg [5:0] Funct;// Outputswire RegDst;wire ALUSrc;wire RegWrite;wire MemWrite;wire MemRead;wire MemtoReg;wire Branch;wire Jump;wire [3:0] ALUControl;// Instantiate the Unit Under Test (UUT)Ctruut (.OpCode(OpCode),.Funct(Funct),.RegDst(RegDst),.ALUSrc(ALUSrc),.RegWrite(RegWrite),.MemWrite(MemWrite),.MemRead(MemRead),.MemtoReg(MemtoReg),.Branch(Branch),.Jump(Jump),.ALUControl(ALUControl) );initial begin// R-type AddOpCode=6'b000000;Funct=6'b100000;// R-type Subtract#10;OpCode=6'b000000;Funct=6'b100010;// Lw#10;OpCode=6'b100011;Funct=6'bxxxxxx;// Sw#10;OpCode=6'b101011;Funct=6'bxxxxxx;// Beq#10;OpCode=6'b000100;Funct=6'bxxxxxx;// R-type AND#10;OpCode=6'b000000;Funct=6'b100100;// R-type OR#10;OpCode=6'b000000;Funct=6'b100101;// R-type set on less than#10;OpCode=6'b000000;Funct=6'b101010;// Jump#10;OpCode=6'b000010;endendmodule(二) ALU的实现module ALU_tb;// Inputsreg [31:0] SrcA;reg [31:0] SrcB;reg [3:0] ALUCtr;// Outputswire Zero;wire [31:0] ALURes;// Instantiate the Unit Under Test (UUT)ALU uut (.SrcA(SrcA),.SrcB(SrcB),.ALUCtr(ALUCtr),.Zero(Zero),.ALURes(ALURes));initial begin// ANDSrcA =32'hf0f0ffff;SrcB =32'h0000f0f0;ALUCtr =0;// OR#10;ALUCtr =4'b0001;// Add#10;ALUCtr =4'b0010;// Subtract#10;ALUCtr =4'b0110;// set on less than#10;ALUCtr =4'b0111;//NOR#10;ALUCtr =4'b1100;//Other situation#10;ALUCtr =4'b1111;endendmodule2.仿真截图(一)CPU控制器的实现(二) ALU的实现五、实验总结实验名称:Lab03: MIPS处理器部件实现B微机原理实验报告一、实验目的本实验旨在使读者实现MIPS处理器的部件—Data memory, Instruction memory和Registers 三大存储器件。

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

一、硬件实验环境的检测(一)硬件实验环境简介TD-PIT实验装置提供了多种常用接口及控制应用部件,如定时器/计数器8254、并行接口8255、键盘输入及LED显示、二进制开/关输入及发光管显示等接口单元电路。

TD-PIT实验装置还向PC机申请了接口实验所需的配置资源。

其中包括16M的存储地址空间、256字节的I/O地址空间和一条中断请求线。

中断请求线是映射到PC机内部的15条中断线的一个。

这些信号如下表1.1所示。

表1.1 TD-PIT实验装置的仿真ISA接口信号TD-PIT实验装置提供了四个I/O设备片选信号和两个存储器设备片选信号,片选信号与偏移地址空间对应关系如下表1.2所示。

表1.2 片选地址对应偏移地址范围(二)硬件实验环境的检测检测硬件环境的好坏是每次微机原理与接口实验之前的必需工作,防止试验中出现未知的bug而无从查起。

1. 检测方法运行检测程序,用示波器检测实验装置的所有信号是否正常。

如发现故障,应检查实验装置上该信号的连线是否开路,是否短路。

查出故障,予以排除。

2. 检测工具TD-PIT实验装置、示波器、连接线若干、PC机3. 检测程序若要在示波器上观测到实验装置上各种信号的波形,则必须执行循环程序,如果只执行几条语句而不构成循环,则输出的信号一闪而过,在示波器上就无法观测到信号的波形。

计算机执行无循环程序后无法退出,这种循环称为“死循环”。

为防止“死循环”,必须在循环语句中加入退出循环命令,一般采用11号功能调用来退出循环。

测试程序如下所示:Stck segment stack 'stack'dw 32 dup(?)stck endsdata segmentdata endscode segmentbegin proc farassume ss:stck,cs:code,ds:datapush dssub ax,axpush axmov ax,datamov ds,axAGN: MOV AL,0FHMOV DX,0E060H ;送端口地址IN AL,DX ;从给出端口输入数据MOV DX,0E067HOUT DX,AL ;从给出端口输出数据MOV AH,0BH ;11号功能调用INT 21H ;检测有无键盘输入CMP AL,0 ;AL=FFH,有输入;AL=00,无输入JZ AGNretbegin endpcode endsend begin4. 地址线、数据总线及有关信号控制的波形̅̅̅̅̅̅的信号(1)片选译码输出IOY0该信号应为负脉冲选通信号,如下图1.1所示。

图1.1 片选译码输出信号波形(2)地址线信号(XA4—XA0)各信号输出如下图所示。

图1.2 XA0—XA2、XA4—XA7地址信号波形图1.3 XA3地址信号波形(3)数据线信号(XD0—XD7)各信号波形如下图所示。

图1.4 XD0—XD3数据线信号波形图1.4 XD4—XD7数据线信号波形(4)I/O 写信号和I/O 读信号 脉冲波形如下图所示。

图1.5 IOW ̅̅̅̅̅̅或IOR̅̅̅̅̅信号波形 二、硬件实验过程总结(以I/O 实验为例)(一)设计前的准备及制定设计方案1. 了解I/O 接口实验的基本原理与实验要求。

该实验要求编制一个循环程序,将从74LS244的输入的数据从74LS273的输出发光二极管上对应起来。

具体实验原理图及实验内容见下文第三部分硬件大实验中I/O 接口实验。

2. 准备好相关芯片和芯片的引脚图,以及芯片的输入输出关系。

例如在I/O 接口实验中用到了下列芯片,引脚图如下所示。

图2.1 74LS244引脚图 图2.2 74LS273引脚图图2.3 74LS32引脚图3. 编写硬件调试程序实验环境测试程序将上文第一部分第3点,实验环境检测程序。

I/O接口硬件调试程序如下:stck segment stack 'stack'dw 32 dup(?)stck endsdata segmentdata endscode segmentbegin proc farassume ss:stck,cs:code,ds:datapush dssub ax,axpush axmov ax,datamov ds,axAGN: MOV DX,0E003HIN AL,DXMOV DX,0E004HOUT DX,ALMOV AH,0BHINT 21HCMP AL,0JZ AGNretbegin endpcode endsend begin(二)硬件电路的装配1. 运行硬件环境测试程序,检测关键点的输出是否正确以确定硬件实验环境的好坏。

首先根据实验测试程序的地址确实选通的片选地址,用示波器观察波形,选通片选信号的波形如下图2.4所示。

图2.4 片选译码输出信号波形再用示波器检测硬件环境的读、写信号等关键点的波形是否正确,具体实验波形见上文第一部分,实验硬件环境的检测。

2. 按照电路原理图,完成硬件电路的装配。

连线时应注意一下几点:微机中引脚悬空并非高电平,因此,集成块所以的输入引脚必须有确定的状态,不可悬空不接;高电平与低电平输入,低电平输入可直接接地,高电平输入应有电源加限流电阻方可,下文I/O接口实验原理图中,相应的限流电阻均有标出;连线应注意不可从集成块上跨过;布线整洁,不同类型的线路分别用不同的颜色。

(三)硬件电路的调试硬件电路调试一般采用分级调试,可以从前往后,亦可由后向前。

I/O接口实验联调内容及注意事项1. 检测译码器。

̅̅̅̅、Y1̅̅̅̅端口选通信号如下图运行上述硬件调试程序,译码器74LS138的Y02.5所示,其余没有选通的信号为高电平。

̅̅̅̅、Y1̅̅̅̅选通信号图2.5 Y074LS244读、写信号波形见上文第一部分硬件环境测试中读、写信号波形,联调时,读、写信号均是相应的负脉冲信号。

2. 分别执行输入指令和输出指令,检查74LS244输入数据和74LS273输出数据是否正常,正常时输入信号应该和连接的二进制开关信号一致,若不正常,则需排除软硬件故障。

3. 运行应用程序,改变74LS244输入端的开关状态,观察74LS273的输出端发光二极管的变化是否与输入端开关的状态对应。

(四)实验测试结果实验观察到的结果是,拨动相应的二进制开关,相应的发光二极管跟随亮灭。

如非此结果,可能硬件或软件存在问题。

若发光二极管的亮灭顺序和开关的拨动顺序不一致,可能是排针插反。

三、硬件大实验报告(I/O、ADC0809、8255)(一)I/O接口实验1. 实验目的掌握基本输入接口的设计方法;掌握基本输出接口的设计方法;掌握I/O地址译码的方法。

2. 实验设备PC微机一台、TD-PIT实验装置一台、面包板一块、74LS244、74LS273、74LS138、74LS32各一片。

3. 实验内容(1)当用74LS244、74LS273组成一个I/O 接口电路时,输入端口地址和输出端口地址可以是同一个地址。

未来区分数据时输入还是输出,可以由IOR ̅̅̅̅̅、IOW ̅̅̅̅̅̅和IOY3̅̅̅̅̅̅̅信号共同控制。

由IOY3̅̅̅̅̅̅̅和IOR ̅̅̅̅̅产生读选通信号,由IOY3̅̅̅̅̅̅̅和IOW̅̅̅̅̅̅产生写选通信号。

I/O 接口电路如下图3.1所示。

图3.1 I/O 接口电路(未译码)(2)74LS138译码器的使用74LS138有3个输入端,3个控制端及8个输出端,引线及功能如下图3.2、3.3所示。

图3.2 74LS138引脚图 图3.3 74LS138功能表(3)帯译码的接口电路设计与调试用74LS138译码器的输出作为74LS244和74LS273的控制信号,设计一个A B C G 1 G 2A G 2B Y 7̅ GNDI/O 接口电路,并进行安装、调试。

要求编制一个循环程序,将从74LS244的输入的数据从74LS273的输出发光二极管上对应起来。

将74LS138译码器的输出接74LS244的1G ̅̅̅̅、2G ̅̅̅̅和74LS273的CLK ,74LS244和74LS273都只有一个端口地址,接口电路如下图3.4所示。

图3.4 I/O 接口电路(帯译码)(4)程序设计及软硬件联调 编写程序如下所示: stck segment stack 'stack' dw 32 dup(?) stck endsdata segment data endscode segment begin proc farassume ss:stck,cs:code,ds:data push dssub ax,axpush axmov ax,datamov ds,axAGN: MOV DX,0E003HIN AL,DXMOV DX,0E004HOUT DX,ALMOV AH,0BHINT 21HCMP AL,0JZ AGNretbegin endpcode endsend begin(二)ADC0809模/数转换器实验1.实验目的掌握模/数转换的原理及接口实验;掌握8位A/D转换芯片ADC0809的使用方法;掌握延时、查询和中断数据传送方式。

2.实验设备PC微机一台、TD-PIT实验装置一台、面包板一块、ADC0809一片、74LS244,、74LS02、74LS32各一片。

3. 实验内容(1)ADC0809的结构与功能ADC0809片内含有8路模拟开关及地址锁存与译码电路,8位A/D转换和三态输出锁存缓存器。

引脚图如下图3.5所示。

图3.5 ADC0809引脚图各引脚信号含义如下。

a.IN0—IN7:8路模拟通道输入(由ADDA、ADDB、ADDC决定)。

b.ADDA、ADDB、ADDC:模拟通道选择选择信号如下如下表3.1所示。

表3.1 ADC0809模拟通道选择c. D0—D7:三态数据输出,由OE信号控制d. OE:输出允许。

当OE为“1”时,将三态缓冲器中的数字量放在D0—D7上。

e. ALE:地址锁存允许。

其上升沿将ADDA、ADDB和ADDC 3条引线的信号锁存。

f. START:转换启动信号。

当START端为正脉冲时,启动A/D转换。

g. EOC:转换结束信号。

EOC为“0”时,表示转换在进行中;当转换结束时,EOC为“1”。

h. REF(+)、REF(-):基准电压输入。

i. CLOCK:时钟输入(640KHZ)。

(2)ADC0809与微机的接口ADC0809与微机的接口可分为三种方式:a.延时方式:启动转换后等待100μS(ADC0809的转换时间),再读取转换结果。

b.中断方式:设计一个中断请求电路,将转换结束信号EOC送至中断请求IRQ9端。

当转换结束发出中断请求后,进入中断服务程序,从而读取转换结果。

相关文档
最新文档