微机接口实验报告qxf.docx

上传人:b****0 文档编号:10118956 上传时间:2023-05-23 格式:DOCX 页数:13 大小:130.60KB
下载 相关 举报
微机接口实验报告qxf.docx_第1页
第1页 / 共13页
微机接口实验报告qxf.docx_第2页
第2页 / 共13页
微机接口实验报告qxf.docx_第3页
第3页 / 共13页
微机接口实验报告qxf.docx_第4页
第4页 / 共13页
微机接口实验报告qxf.docx_第5页
第5页 / 共13页
微机接口实验报告qxf.docx_第6页
第6页 / 共13页
微机接口实验报告qxf.docx_第7页
第7页 / 共13页
微机接口实验报告qxf.docx_第8页
第8页 / 共13页
微机接口实验报告qxf.docx_第9页
第9页 / 共13页
微机接口实验报告qxf.docx_第10页
第10页 / 共13页
微机接口实验报告qxf.docx_第11页
第11页 / 共13页
微机接口实验报告qxf.docx_第12页
第12页 / 共13页
微机接口实验报告qxf.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

微机接口实验报告qxf.docx

《微机接口实验报告qxf.docx》由会员分享,可在线阅读,更多相关《微机接口实验报告qxf.docx(13页珍藏版)》请在冰点文库上搜索。

微机接口实验报告qxf.docx

微机接口实验报告qxf

 

微机接口技术

实验报告

 

目录

实验一PCI总线中断应用实验日志2

实验二定时/计数器应用实验日志3

实验三并行接口应用实验日志5

实验四综合应用设计实验报告7

实验目的:

8

实验内容:

8

设计思路:

8

流程图:

9

详细设计:

9

遇到的问题及解决方案:

11

心得体会:

11

 

实验一PCI总线中断应用实验日志

实验目的:

1.掌握使用PCI中断的方法。

2.了解操作PCI设备I/O端口的方法。

3.进一步掌握8259中断控制器的工作原理、编程方法以及PC机如何通过8259A实现对外部可屏蔽硬件中断源的管理。

4.进一步掌握中断服务程序的设计方法。

实验内容:

1.【示例】编写一实验程序,利用实验装置提供的中断源,完成每按动一次脉冲开关,产生一次中断,向显示器输出字符“7”。

2.修改示例程序,控制中断响应次数为10次,即当第11次以后按动脉冲开关,屏幕上不再显示“7”。

解答:

修改示例程序的A1程序段如下,完成中断响应次数控制

MOVCX,10

A1:

NOP

CALLBREAK

LOOPA1

运行结果:

1.编译运行第一题后,每次按动KK1,屏幕输出字符为“7”

2.第二题经过示例程序再修改后,通过按动KK1,只能输出10个字符,此后不再响应,程序结束

遇到的问题及解决方案:

由于程序示例本身比较完整,在改写程序完成题目二时基本没有遇到什么困难,但是在实际操作工程中,对试验箱的存储单元的初始化的理解有些许困惑。

这主要是对汇编语言的学习才刚刚起步,第一次面对相对比较复杂的程序,有了畏惧心理。

心得体会:

通过此次实验,我初步了解了微机接口实验系统和TD-PIT-B实验系统微机接口试验系统开发环境,

并学会了对该环境的简单操作。

对I/O地址译码的内容与工作原理有了深一步的理解。

更重要的是,通过本次试验,我对汇编程序的理解和编写得到了锻炼。

实验二定时/计数器应用实验日志

实验目的:

1.掌握8254的工作方式及应用编程。

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

3.学习8254在PC系统中的典型应用方法。

实验内容:

1.【示例】计数应用实验:

编写程序,应用8254的计数功能,用开关模拟计数。

使每当按动开关KK1五次后,产生中断,并在屏幕上显示一个字符“M”。

编写程序,将8254的计数器0设置为方式3,计数值为十进制5,用微动开关KK1作为CLK0时钟,OUT0连接IRQ,每当KK1按动5次后产生中断请求实验步骤如下:

初始化8254为:

MOVDX,MY8254_MODE;CLK=KK1

MOVAL,17H;设置计数器0,方式3,只读低字节,二进制计数

OUTDX,AL

MOVDX,MY8254_COUNT0

MOVAL,5;写入初值5

OUTDX,AL

2.定时应用:

自己编写程序,应用8254的定时功能,将屏幕设计为一个秒表。

设计思想:

每计时1秒,描述时间的变量就应加1,并且每计时60秒自动归零。

因此,可利用8254的计数器0设置为方式2,用实验箱提供的信号源10KHZ作为CLK0时钟,计数值为十进制0(即最大计数值10000),这样每隔1秒就会在OUT0端产生0到1的跃变,该信号接IRQ作为中断请求。

在中断服务程序中完成对时钟的修改及显示。

初始化:

MOVDX,MY8254_MODE;CLK=10K

MOVAL,35H;设置00110101计数器0,双字节,方式2,二进制计数

OUTDX,AL

MOVDX,MY8254_COUNT0

MOVAL,0;计数初值0

OUTDX,AL;先写低字节

OUTDX,AL;写高字节

3.电子发声:

自己编写程序让实验装置上的扬声器和PC机上的扬声器唱歌。

设计思想:

向扬声器传送不同频率的方波,就能驱动小喇叭发出不同音符的音响。

因此,设置8254的工作方式为方式3——方波频率发生器,改变8254计数通道i的计数初值,就可改变OUTi输出信号的频率,从而改变扬声器发出的音调。

但每个音调发声的时间长短可以通过延时程序来控制。

运行结果:

题目1:

每按动开关KK1五次后,在屏幕上显示一个字符“M”

题目2:

运行开始,屏幕上即按顺序出现不断跳动的自然数字1-60,改变clk线路的频率,快慢发生变化

题目3:

运行8254-3后,试验箱发出声音。

稍加改动OuTi的频率,声音发生变化

遇到的问题及解决方案:

此实验的关键是正确的写入8254控制字,以及前面所学知识中断的应用。

在原有代码的前提上进行修改看似不难,实际上却是工作量比较大,因为需要改写整个中断处理程序。

在实验室只试着修改了题目二既是时钟的模拟,题目3则是阅读调试了电脑中的示例程序。

心得体会:

我在做这个实验的同时加强了对课本知识的巩固和加强,由于课本上的知识太多,平时课间的学习并不能很好的理解和运用各个元件的功能,所以在这次实验过程中,我们了解了很多元件的功能,并且对于其在电路中的使用有了更多的认识。

在实验过程中,经常会遇到这样那样的情况,就是心里想老着这样的接法可以行得通,但实际接上电路,总是实现不了,因此耗费在这上面的时间用去很多。

虽然对8254控制字比较了解,也能够正确写出8254的初始化程序,但仅仅如此却不能融会贯通的应用于大程序中,我想主要是对中断处理的不熟悉。

 

实验三并行接口应用实验日志

实验目的:

1.了解8255的基本结构和工作原理

2.掌握8255的工作方式及应用编程

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

实验内容:

1.【示例】基本输入/输出实验:

本实验希望实现将一组开关信号通过8255芯片传送到发光二极管上显示。

MOVDX,MY8255_MODE

MOVAL,82H;设置方式命令字,AB组工作在方式0,A组输出,B组输入

OUTDX,AL

A1:

MOVDX,MY8255_B

INAL,DX

MOVDX,MY8255_A

OUTDX,AL;将B的值通过A组输出

CALLBREAK

JMPA1

2.流水灯显示实验:

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

按照图重新搭建实验线路。

初始化:

MOVDX,MY8255_MODE

MOVAL,80H

OUTDX,AL;设置方式命令字,AB组工作在方式0,A组输出,B组输出

MOVDX,MY8255_A

MOVAL,7FH;使PA0-7输出高电平

OUTDX,AL

MOVLA,AL

MOVDX,MY8255_B

MOVAL,0FEH;使PB0-7输出高电平

OUTDX,AL

通过循环不断修改PA和PB的值实现流水灯显示

3.修改第一个实验,选择8255的A口为基本的输出端接发光二极管,B口为选通输入端接拨动开关。

要求当B口数据准备就绪后,通过发STBB信号请求CPU读取B口数据,才送端口A输出显示。

分别采用:

(1)查询方式编程,设计相应的实验电路及程序。

(2)中断方式编程,设计相应的实验电路及程序。

初始化:

MOVDX,MY8255_MODE

MOVAL,81H

OUTDX,AL;设置方式命令字,A组方式0输出,B组方式1输出,PC下半部输入

(1)查询方式MOVDX,MY8255_MODE

MOVAL,00000100B;PB口禁止中断

OUTDX,AL

(2)中断方式MOVDX,MY8255_MODE

MOVAL,00000101B;PB口允许中断

OUTDX,AL

运行结果:

第一题:

基本输入/输出实验,运行后,开关置位与二极管的亮灭情况一致

第二题:

16个二极管依次发出亮光,而且每次只有一个灯亮

第三题:

没有能够完整的做出第三题。

遇到的问题及解决方案:

在做第三题时,一致认为A组方式0输出,B组方式1输出,PC下半部输入,但是结果不对。

同时对查询方式编程和中断方式编程不熟悉。

看见示例程序中如此多的跳转指令,对程序流程和结构都不太清楚。

通过同学的讲解,才勉强读懂了程序。

但是又由于线路搭接的问题,没有能够运行成功。

心得体会:

通过本次实验,我系统的了解8255的各种应用的设计流程,尤其是硬、软件的设计方法,掌握了显示电路的基本功能及编程方法,掌握了显示电路的一般原理,也进一步掌握了8255接口芯片的使用和编程方法。

开拓了思路,锻炼了实践动手能力,提高了分析问题,解决问题的能力,达到了本次实验的目的。

我知道8255的几种工作方式,上电复位有哪些个方法及怎么实现、8255各个管脚的使用注意事项及实现的功能、8255编程软件再到硬件的一系列过程的操作等;

同时在老师的悉心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力。

使我们认识到课程的重要性,同时也感受理论与实践之间的差距,使我们对8255的应用和汇编语言有了更加深刻的认

实验四综合应用设计实验报告

实验目的:

1.掌握通过8254实现准确定时的方法。

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

3.进一步掌握8259A可编程控制器的使用方法。

实验内容:

随堂测试,规定时间了独立编写程序。

编写程序,利用8254定时/计数器,使8255的A口、B口均为输出,实现16位数据灯每隔1秒相对循环显示。

设计思路:

在本实验中要求我们用8255的A口和B口做为输出,接16个发光二极管,从而实现16位流水灯的显示效果,。

在C口的低位接开关,实现扩展功能的控制。

①基本流水灯显示电路

A和B两个端口不能同时赋值,从而在实验中我们可以用BX进行需要赋值的数据的存储,因为BX可以分从BH.BL两部分进行独立的操作,在本次实验中我们用BH对A口进行赋值,用BL对B口进行赋值,通过延时一段时间再对BH,BL进行移位和输出,实现了流水灯的效果。

流程图:

  

     图B 主程序                图C 延时程序

详细设计:

MY8255_AEQU9C60H

MY8255_BEQU9C61H

MY8255_CEQU9C62H

MY8255_MODEEQU9C63H

MY8254_COUNT0EQU9C40H

MY8254_COUNT1EQU9C41H

MY8254_COUNT2EQU9C42H

MY8254_MODEEQU9C43H

DATASEGMENT

LADB?

LBDB?

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVDX,MY8254_MODE;CLK=10K

MOVAL,11H

OUTDX,AL

MOVDX,MY8255_MODE

MOVAL,81H

OUTDX,AL

MOVDX,MY8255_A

MOVAL,7FH

OUTDX,AL

MOVLA,AL

MOVDX,MY8255_B

MOVAL,0FEH

OUTDX,AL

MOVLB,AL

CALLDALLY

A1:

MOVAL,LA

RORAL,1

MOVLA,AL

MOVDX,MY8255_A

OUTDX,AL

MOVAL,LB

ROLAL,1

MOVLB,AL

MOVDX,MY8255_B

OUTDX,AL

CALLDALLY

CALLBREAK

JMPA1

DALLY:

MOVDX,MY8254_COUNT0

MOVAL,0

OUTDX,AL

D1:

CALLBREAK

MOVDX,MY8255_C

INAL,DX

ANDAL,1H

CMPAL,1

JNZD1

RET

BREAKPROCNEAR

MOVAH,06H

MOVDL,0FFH

INT21H

JERETURN

MOVAX,4C00H

INT21H

RETURN:

RET

BREAKENDP

CODEENDS

ENDSTART

遇到的问题及解决方案:

做这个综合实验对于我来说的确很难,在课堂上没有能够完成。

程序编译能通过,但只能实现最基本的流水灯显示,对于开关的控制没有反应。

最后是利用课余时间,完成的程序的设计,但是由于缺乏实验器材,没有进行验证。

心得体会:

这是本学期最后一次微机接口实验课,实验课结束,从中领悟到不少东西了. 首先,万事开头难,要勇敢的迈出第一步,不要老是给自己找接口。

从最简单的程序入手。

其次是要把知识活学活用,微机接口是注重理论和实践的,光看书不动手,是学不会的。

比如8254,8255,8259的各种初始化和使用方法,书上都是长篇累赘的叙述了,但是不自己亲手编程实现,最后还是会很快忘记。

最后就是要学会调试程序,在实验中写好代码,一运行却出问题,由于不会调试就等于白忙一场。

想单步运行,下断点,跟踪这些常用的调试方法需要熟悉。

通过这几次实验我对接口技术设计的芯片有了具体形象的认识,同时提高了汇编的编写能力。

感谢老师的悉心指导。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2