北航微机原理实验报告(3).doc

北航微机原理实验报告(3).doc

ID:57907572

大小:29.38 KB

页数:4页

时间:2020-04-03

北航微机原理实验报告(3).doc_第1页
北航微机原理实验报告(3).doc_第2页
北航微机原理实验报告(3).doc_第3页
北航微机原理实验报告(3).doc_第4页
资源描述:

《北航微机原理实验报告(3).doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、微机原理实验报告(3)一、实验名称七段数码显示二、实验目的掌握接口芯片的编址方法,掌握8255的初始化设置,及数码管显示原理,掌握段控及位控的概念。三、实验内容连接地址译码器与8255的连线及8255与数码管的连线;在数据段中存放0到9的字型码;从微机键盘键入2个数字的ASCII码,在输入过程中检查如非数字则重新输入;然后将输入的ASCII码变成相应的数字,再利用换码指令XLAT查表得到相应的字型码;将字型码送到8255输出口所接的数码管上显示。四、程序流程图:(见末页)五、实验结论:符合预期,输入2个数字,七段数码管显示这两个

2、数字。六、实验心得七段数码显示作为第一次硬件实验,虽然程序不难,但是在实验过程中还是遇到了不少这样或者那样的问题。主要问题还是集中在硬件方面。程序方面,上机之前我已经完成了程序的编写,在实验室用了大概20分钟进行了调试,消除了7个编程中的错误。但是进行编译运行后,数码管始终无法显示正确的数字。在确定程序无误后,我只能逐一排查运行失败的原因。我首先检查了硬件连线,并且将优盘从主机上拔下,将影响因素尽量消除,但是仍然无法得到正确的结果。接着我换来了已经完成实验的同学的实验箱,重新编译运行,数码管依旧无法正确显示。最后不得已,我又换了

3、一台电脑,编译运行同样的程序用同一个实验箱,终于获得了正确的结果。实验后我思考了一下问什么会出现这种问题,我觉得可能是用于计算机与实验箱相连的扁平接线有问题才导致数码管始终无法正常工作。这次实验过后,对于微机原理知识来说我并没有太多的收获,毕竟做到第三次实验,编写程序和软件的应用都已经轻车熟路了。但是通过遇到上述的这个问题,我在分析问题、解决问题方面的能力有所提高。这就是我这次最大的收获。七、实验程序:INPORTAEQU0EF00H-280H+288HINPORTBEQU0EF00H-280H+289HINPORTCEQU0E

4、F00H-280H+28AHINPORTCRLEQU0EF00H-280H+28BHSTACKSEGMENTSTACKDW100DUP(?)STACKENDSDATASEGMENTFIGUREDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHXDB2DUP(?)STRINGDB'PLEASEENTERTWONUMBERS:',0DH,0AH,'$'DATAENDSCODESEGMENTASSUMECS:CODE,SS:STACK,DS:DATAMAINPROCMOVAX,DATAMOVDS,AXM

5、OVSI,OFFSETXMOVDX,OFFSETSTRINGMOVAH,9INT21HCALLKEYINANDDL,0FHMOV[SI],DLINCSICALLKEYINANDDL,0FHMOV[SI],DLMOVDX,INPORTCRLMOVAL,10000010BOUTDX,ALMOVBX,OFFSETFIGURENEXT1:MOVDX,INPORTAMOVSI,OFFSETXMOVAL,[SI+1]XLATOUTDX,ALMOVDX,INPORTCMOVAL,01B;PC1=0,PC0=1OUTDX,ALCALLDELAY

6、MOVDX,INPORTAMOVSI,OFFSETXMOVAL,[SI]XLATOUTDX,ALMOVDX,INPORTCMOVAL,10B;PC1=1,PC0=0OUTDX,ALCALLDELAYMOVDL,0FFHMOVAH,6INT21HJZNEXT1MOVAH,4CHINT21HMAINENDPKEYINPROCAGAIN:MOVAH,8INT21HCMPAL,30HJBAGAINCMPAL,39HJAAGAINMOVDL,ALMOVAH,2INT21HRETKEYINENDPDELAYPROCPUSHBXPUSHCXM

7、OVBX,100MOVCX,0NEXT2:LOOPNEXT2DECBXJNZNEXT2POPCXPOPBXRETDELAYENDPCODEENDSENDMAIN流程图:开始将数码管的字型码存入数据段从键盘输入2个数字输入数字存入数据段N设置8255控制字Y取数据段取个位数字偏移地址送入AL寄存器设置8255A口工作方式:将字型码输出至A口利用XLAT指令查得该数字所对应的字型码判断输入是否为2个数字Y初始化设置8255C口工作方式:使PC1置0,PC0置1调用延时子程序取数据段取十位数字偏移地址送入AL寄存器设置8255A口工作

8、方式:将字型码输出至A口设置8255C口工作方式:使PC1置1,PC0置0检查是否有键按下调用延时子程序返回DOSNY

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。