资源描述:
《微机原理实验报告(数码显示)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验三8255并行接口实验一、实验目的1、学习并掌握8255的工作方式及其应用。2、学习在系统接口实验单元上构造实验电路。二、实验设备TDN86/51或TND86/88教学实验系统。三、实验内容与实验步骤1、基本输入输出实验。编写程序,使8255的A口为输入,B口为输出,完成波动开关到数据灯的数据传输。要求只要开关拨动,数据灯的显示就发生相应改变。实验原理:并行接口是以数据的字节为单位与I/O设备或被控制对象之间传递信息。8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基
2、本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。8255的内部结构及引脚如图3-1所示,8255工作方式控制字和C口按位置位/复位控制字格式如图3-2所示。 图3-18255的内部结构和外部引脚(a)工作方式控制字(b)c口按位置位/复位控制字图3-28255控制字格式 8255实验单元电路图如下图所示:图3-38255实验单元电路图实验步骤1.基本输入输出实验本实验使8255端口A工作在方式0并作为输入口,端口B工作在方式0并作为输出口。用一组开关信号接入端口A,端口B输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。 (1)按
3、图连接实验线路图;8255基本输入/输出实验接线图SSTACKSEGMENTSTACKDW64DUP(?)SSTACKENDSCODESEGMENTASSUMECS:CODESTART:MOVAL,82HOUT63H,ALA1:INAL,61HOUT60H,ALJMPA1CODEENDSENDSTART(2)编写实验程序,经编译、连接无误后装入系统;(3)运行程序,改变拨动开关,同时观察LED显示,验证程序功能。(4)点机“调试”下拉菜单中的“固定程序”项,将程序固化到系统存储器中。 实验二数制转换实验 一、实验目的1.掌握不同进制数及编码相互转换的程序设计方法,加深对数码转换
4、的理解。2.熟悉程序调试的方法。3.熟悉键盘使用方法二、实验设备TDN86/51或TND86/88教学实验系统。三、实验内容及步骤计算机输入设备输入的信息一般是由ASSII码或BCD码表示的数据或字符,CPU一般均用二进制数进行计算或其它信息处理,处理结果的输出又必须依照外设的要求变为ASCII码、BCD码或七段显示码等。因此,在应用软件中,各类数制的转换是必不可少的。计算机与外设间的数制转换关系如图所示。ASCII码ASCII码CRT显示键盘主机ASCII码打印机ASCII码光电机BCD码BCD码多段显示拨码开关二进制二进制位显示数据开关数制转换关系 1.将ASCII码表示的
5、十进制数转换为二进制数十进制表示为:Di代表十进制数0,1,2,…,9;上式转换为:由此可归纳十进制数转换为二进制数的方法:从十进制数的最高位Dn开始作乘10加次位的操作,依次类推,则可求出二进制数的结果。 参考流程: 实验程序:PUBLICSADDSSTACKSEGMENTSTACKDW64DUP(?)SSTACKENDSDATASEGMENTSADDDB30H,30H,32H,35H,36H;十进制数:00256DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVAX,OFFSETSADDMO
6、VSI,AXMOVBX,000AHMOVCX,0004HMOVAH,00HMOVAL,[SI]SUBAL,30HA1:IMULBXMOVDX,[SI+01]ANDDX,00FFHADCAX,DXSUBAL,30HINCSILOOPA1A2:JMPA2CODEENDSENDSTART 实验步骤:(1)编写实验程序,经编译、链接无误后装入系统;(2)待转换数据存放于数据段,根据自己要求输入;(3)用D3510(回车)查看结果C;(5)反复试几组数据,验证程序的正确性。实验截图如下: 2.编程实现如下功能:计算首地址为STR1的100个有符号字变量数组的平均值,并将它存在CX中。实验
7、程序:datasegmentstrdw1000h,2100h,3200dw1101h,2012hdataendscodesegmentassumecs:code,ds:datastart:movax,datamovds,axleabx,strmovcx,100movax,0movdx,0lp:addax,[bx]adcdx,0incbxincbxlooplpmovbx,100idivbxmovcx,axmovah,4chint21hcodeendsendstart实验步骤:(1)编写实验程序