您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 接口与通信实验报告陈启明
华北电力大学科技学院实验报告||实验名称:存储器扩展实验8255并行接口实验中断特性及8259应用编程实验8253定时/计数应用实验课程名称:接口与通信实验设计||专业班级:12级卓工班学生姓名:陈启明学号:121909020104成绩:指导教师:刘书刚实验日期:2015.4.17实验一、中断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显示。3、程序modeequ82h;8255工作方式pa8255equ8000h;8255PB口输出地址ctl8255equ8003hicw1equ00010011b;单片8259,上升沿中断,要写ICW4icw2equ00100000b;中断号为20Hicw4equ00000001b;工作在8086/88方式ocw1equ11111110b;只响应INT0中断cs8259aequ09000h;8259地址cs8259bequ09001hdatasegmentcntdb0dataendscodesegmentassumecs:code,ds:dataienterprocnearpushaxpushdxmovdx,pa8255inccntmoval,cntoutdx,almovdx,cs8259amoval,20houtdx,alpopdxpopaxiretienterendpllnitprocmovdx,cs8259amoval,icw1outdx,almovdx,cs8259bmoval,icw2outdx,almoval,icw4outdx,almoval,ocw1outdx,al;输出计数值retllnitendpstartprocnearmovdx,ctl8255moval,modeoutdx,alclimovax,0movds,axmovbx,4*icw2;中断号movax,codeshlax,4;×16addax,offsetienter;中断入口地址(段地址为0)mov[bx],ax;代码段地址为0movax,0incbxincbxmov[bx],axcallllnitmovax,datamovds,axmovcnt,0;计数值初始为0moval,cntmovdx,pa8255outdx,alstilp:nopjmplpstartendpcodeendsendstart4、实验电路图如下:四、实验结论与分析实验结果:通过按单脉冲,使之产生中断,LED将会对按下单脉冲的次数计数,转换成二进制在通过LED灯的明暗显示出来,亮表示1暗表示0;每按下一次,计数加1。五、实验心得在这次课程设计的过程中的收获是很大的。这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了中断8259应用。当然,这次实验,我也发现了自身的很多不足之处,比如,在完成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)。8255A的3种工作方式:(1)方式0:基本输入/输出方式(2)方式1:选通型输入/输出方式(3)方式2:双向数据传输方式2、实验内容设计程序让灯循环的亮,要求从左边依次循环亮起,LED从PA口输出。完成电路设计和程序的编制;1)程序设计:DATASSEGMENT;此处输入数据段代码DATASENDSSTACKSSEGMENT;此处输入堆栈段代码STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:MOVAX,DATASMOVDS,AXMOVDX,8003HMOVAL,80H;OUTDX,AL;L1:MOVAL,1H;MOVDX,8000H;NEXT:OUTDX,AL;点亮L1CALLDELAY1ROLAL,01H;循环左移JMPNEXTDELAY1:PUSHAX;延时程序PUSHCXMOVCX,0030HDELY2:CALLDELAY2LOOPDELY2POPCXPOPAXRETDELAY2:PUSHCXMOVCX,500HDELA1:LOOPDELA1POPCXRETMOVAH,4CHINT21HCODESENDSENDSTART2)硬件设计电路如图所示四、实验结论与分析错误分析:由于灯亮的停留时间太短,一开始以为程序有误,但发现单步调试有没有问题才发现的。实验结果:灯从左到右依次亮起,并且循环亮起。五、实验心得在这次课程设计的过程中的收获是很大的。这次课程设计我主要是应用老师教的相关知识及自己的一些想法,完成了并行接口8255应用问题。经过老师的指导,才做到了心中有数,我在此很想感谢给予我耐心解答的老师,同学们勤恳塌实,始终热情高涨,我感谢这种氛围。当然,这次实验,我也发现了自身的很多不足之处,在以后的学习中,我会不断的完善自我,不断进取,能使自己在这方面有一个大的发展,我真的很高兴有这次的锻炼机会。
本文标题:接口与通信实验报告陈启明
链接地址:https://www.777doc.com/doc-2377557 .html