您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 能源与动力工程 > 华北电力大学_接口实验报告
华北电力大学实验报告||实验名称实验一开发器的使用与设计实验实验二中断8259应用、定时/计数器8253应用实验三并行接口8255应用实验四存储器拓展实验实验五A/D转换结果送数码管显示课程名称接口与通信课程设计||专业班级:计科1202学生姓名:谷玉虎学号:201209010205成绩:指导教师:张少敏实验日期:2015-6-1华北电力大学实验报告第页共页实验一、数据转换实验一、实验目的1、初步掌握在PC机上建立、汇编、链接和运行8086/88汇编语言程序的过程。2、通过对两个验证性实验的阅读、调试,掌握不同进制数及编码相互转换的程序设计方法。3、完成程序设计题,加深对数码转换的理解,了解简单程序设计方法。二、实验条件一台计算机三、实验内容与步骤1)设二字节十六进制数存放于起始地址为3500H的内存单元中,把他们转换成ASCII码后,再分别存入起始地址为350AH的四个内存单元。从书上ASCII码表中可知十六进制数加30H即可得到0H~9H的ASCII码,而要得到AH~FH的ASCII码,则需再加7H。2)参考程序如下:CODESEGMENTASSUMECS:CODESTART:MOVAX,0MOVDS,AXMOVCX,0004HMOVDI,3500HMOVDX,[DI]A1:MOVAX,DX华北电力大学实验报告第页共页ANDAX,000FHCMPAL,0AHJBA2ADDAL,07HA2:ADDAL,30HMOV[DI+0AH],ALINCDIPUSHCXMOVCL,04HSHRDX,CLPOPCXLOOPA1MOVAH,4CHINT21HCODEENDSENDSTART四、实验结论与分析实验结果:在调试运行后350AH的内存单元中会显示3500H中所转换的对应的ASCII码。分析:本次实验的重要之处在于能够先对输入的ASI码进行判断然后根据条件进行处理,最后写入的位置要依照题目要求。五、实验心得本次实验中,出错并后来改正的地方是:(1)ASM文件后面在保存后必须要以ASM标记。(2)参考书上的代码有错,修改了写入位置才行。(3)首次实验时,没有将内存信息拉倒3500H位置,导致以为实验失败,后来改正。华北电力大学实验报告第页共页实验二、接收小写字母转换成大写字母并显示一、实验目的通过阅读并调试示例程序,完成程序设计题,掌握利用DOS中断的调用来实现人机对话的编程方法。二、实验条件一台计算机三、实验内容与步骤1)从键盘上接收一串小写字母存入内存单元,经过转换后在屏幕上显示其大写字母。设计思路:利用DOS中断的01号子功能接收键盘输入的一串字符串并存入内存单元,当接收到回车键时,将小写字母的ASCII码转换为大写字母的ASCII码,利用DOS功能的02号子功能将其显示在屏幕上。2)参考程序如下:DATASEGMENTBUFDB200DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVSI,OFFSETBUFMOVCL,00HA1:MOVAH,01HINT21HCMPAL,0DH华北电力大学实验报告第页共页JZA2SUBAL,20HMOV[SI],ALINCSIINCCLJMPA1A2:MOVDL,0AHMOVAH,02HINT21HMOVDL,ODHINT21HMOVSI,OFFSETBUFMOVCH,00HA3:MOVDL,[SI]MOVAH,02HINT21HINCSILOOPA3MOVAH,4CHINT21HCODESEGMENTENDSTART四、实验结论与分析华北电力大学实验报告第页共页实验结论:在CMD命令行中,找到当前文件所在的位置,打开.exe文件,输入小写字母按回车键相应的会输出大写的字母。分析:本次实验中首先考虑人机交互,读入用户输入的数据。在内部进行处理然后输出。将小写字母转化为大写字母。五、实验心得本次实验首先要了解DOS调用功能:01号和02号子功能,输入输出功能。试验中出现一个问题就是无法运行程序,找不到合适的方式打开EXE文件,浪费了不少时间。后来采取CMD命令行中找到EXE文件位置打开文件,运行程序。实验三、中断8259应用一、实验目的1、通过阅读并调试示例程序,学习8088/86与8259A的连接与控制方法,掌握8259A中断控制器的工作原理。2、完成程序设计题,学会编写中断服务程序。二、实验条件一台计算机,8259A可编程中断控制器,仿真软件三、实验内容与步骤1、实验原理8259A是一种可编程中断控制器,与8088/86微机兼容,能处理8级向量优先权中断,亦可以通过级联构成64级向量优先权中断系统。具有可编程控制中断方式,并能分别屏蔽各个中断请求。通过4个初始化命令字(icw1~icw4)及3个操作命令字(ocw1~ocw3)使用8259A可编程程序中断控制器。2、实验内容用8088/86控制8259可编程中断控制器,实现对外部中断的响应和处理。要求程序对每次中断进行计数,并将计数结果用8255的PA口输出到LED显示。修改参考书中程序,使每中断10次计数器加1,并将技术结果从8255的PB口输出到LED显示。实验重点放在思考题上。华北电力大学实验报告第页共页3、参考流程图及程序modeequ80hpa8255equ8000hpb8255equ8001hctl8255equ8003hicw1equ00010011bicw2equ00100000bicw4equ01hocw1equ11111110bcs8259aequ09000hcs8259bequ09001hdatasegmentcntdb0cndb0dataendscodesegmentassumecs:code,ds:dataienterprocnearpushaxpushdxmovdx,pb8255inccntcmpcnt,0ah华北电力大学实验报告第页共页jnzP1movcnt,0inccnmoval,cnoutdx,alP1:movdx,cs8259amoval,20houtdx,alpopdxpopaxiretienterendpinitprocnearmovdx,cs8259amoval,icw1outdx,almovdx,cs8259bmoval,icw2outdx,almoval,icw4outdx,almoval,ocw1outdx,al华北电力大学实验报告第页共页retinitendpstartprocnearmovdx,ctl8255moval,modeoutdx,alclimovax,0movds,axmovbx,4*icw2movax,offsetientermov[bx],axmovax,codeincbxincbxmov[bx],axcallinitmovax,datamovds,axmovcn,0moval,cnmovdx,pb8255outdx,al华北电力大学实验报告第页共页stilp:nopjmplpstartendpcodeendsendstart四、实验结论与分析实验结果:通过按单脉冲,使之产生中断,然后再LED显示按下的次数就是中断的次数。思考题:通过单脉冲,但是连续10次脉冲,才能产生一次中断,然后再LED显示按下的次数就是中断的次数分析:本次实验,连线是一个重要问题。同时选择合适的插口进行连接比较重要。本次实验由单脉冲作为触发源,当8259设置好中断模式后,在中断函数中写入触发次数,同时将数据传给8255,给其计数显示。五、实验心得本实验中遇到一些问题,(1)首先遇到就是插线问题,由于实验牵扯到8259,8255,单脉冲,地址分配和地址插线就显得尤为重要。(2)代码编写过程中,设定好中断模式后,如何在中断函数中将中断次数传给8255,让其进行保持显示,成为一个问题。后来在参考同学代码思路的情况下,配置了8255,并且进行显示。(3)实验中,由于用到了多个cpu地址线,本来按照帮助文档上的连线来接,发现并不出效果。后来查看连线和代码,发现多个地址线和代码中规定的地址线不同。后来改正,完成了实验。实验四、定时/计数器8253应用一、实验目的通过阅读并调试示例程序,完成程序设计题,掌握8253的基本工作原理和编程方法,熟悉8253在系统中的典型接法。二、实验条件华北电力大学实验报告第页共页一台计算机,8253可编程定时/计数器三、实验内容与步骤1、实验原理8253可编程定时/计数器是Intel公司生产的统一外围接口芯片它有3个独立的16位计数方式和操作方式都通过编程控制。2、实验内容利用8088/86外接8253可编程定时/计数器,可以实现对外部事件进行计数,且可以设置断点读回计数器的值。本实验中计数器按方式0工作,即十六位二进制计数器。当计数设置好后,计数器就开始计数。如果要读入计数器的值,要先锁存计数值,才能读到计数值。本实验所设计数值为五,也就是每5个外部脉冲,计数器值加1.同时out脚输出一个高电平。实验时,可以将out0接到LED上,观察计数器是否工作。思考题:编程实现LED指示灯以1s的时间间隔闪烁。本次实验报告重点放在思考题上。3、流程图及参考程序CONTROLEQU08003HCOUNT0EQU08000HCOUNT1EQU08001HCOUNT2EQU08002HPORTBEQU09001HPORTAEQU09000HMODEEQU082HCADDREQU9003HCODESEGMENTASSUMECS:CODESTARTPROCNEARMOVAL,MODEMOVDX,CADDROUTDX,ALMOVAL,36HMOVDX,CONTROLOUTDX,ALMOVAX,10000MOVDX,COUNT0OUTDX,ALMOVAL,AHOUTDX,AL华北电力大学实验报告第页共页MOVAL,76HMOVDX,CONTROLOUTDX,ALMOVAX,100MOVDX,COUNT1OUTDX,ALMOVAL,0OUTDX,ALAGAIN:MOVDX,PORTBINAL,DXANDAL,01HMOVDX,PORTAOUTDX,ALMOVAL,00000000BMOVDX,CONTROLOUTDX,ALMOVDX,COUNT0INAL,DXMOVBL,ALINAL,DXMOVAH,ALMOVAL,BLJMPAGAINSTARTENDPCODEENDSENDSTART四、实验结论与分析参考书例程实验结果:自动脉冲5下,LED灯就会显示。思考题结果:LED灯以1s的时间间隔显示。分析:首先是完成参考书中的单脉冲5下,LED灯显示。再通过8253定时,1HZ自动脉冲条件下,LED灯显示。本次实验重点放在后者。同样,设定芯片8253、8259工作模式,使得1HZ的脉冲能够触发中断,然后点亮LED。五、实验心得本实验中遇到一些问题,(1)首先遇到就是插线问题,8253在设定模式下,定时信息的传输依靠连线进行,这就要求8253必须合适端口进行相连。(2)代码编写过程中,设定华北电力大学实验报告第页共页好定时周期,设定好中断模式后,如何将定时脉冲作为中断源触发中断成为一个问题。后来在参考同学代码思路的情况下,配置了8253/8259,并且进行显示。实验五、并行接口8255应用一、实验目的1、通过阅读并调试示例程序,掌握8255A可编程并行接口的工作原理;2、完成程序设计题,学会并行接口电路的设计,及编写输入输出控制程序。二、实验条件一台计算机,8255A可编程控制芯片,LED灯的电路板三、实验内容与步骤1、实验原理8255A是可编程的通用并行输入输出接口芯片,因通用性强,使用灵活,可直接与cpu总线相连,应用非常广泛。8255A芯片内部有3个8位的输入输出端口,即A口、B口、C口。从内部控制的角度来讲,可分为两组:A组和B组。A组控制模块管理A口和C口的高4位(pc7~PC4),B组控制模块管理B口和C口的低4位(pc3~pc0)。思考题:跑马灯程序设计,要求K0=0,从左向右跑马灯;K1=0
本文标题:华北电力大学_接口实验报告
链接地址:https://www.777doc.com/doc-2591190 .html