《武大电气计算机与通信综合实验报告(90分精品)(共27页).docx》由会员分享,可在线阅读,更多相关《武大电气计算机与通信综合实验报告(90分精品)(共27页).docx(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上计算机与通信综合实验报告武汉大学电气工程学院XXX201XXXX目录专心-专注-专业计算机与通信综合实验硬件实验实验一 A/D转换实验一、实验目的 了解模/数转换基本原理,掌握ADC0809的使用方法。二、实验内容 利用实验系统上电位器提供的可调电压作为0809模拟信号的输入,编制程序,将模拟量转换为数字量,通过数码管显示出来。三、实验接线图 图1-1 实验一接线图四、程序流程图 图1-2 实验一程序流程图五、实验程序及运行界面 5.1程序指南(1)ADC0809的START端为A/D转换启动信号,ALE端为通道选择地址的锁存信号,实验电路中将其相连,以便同时锁存通道
2、地址并开始A/D采样转换,其输入控制信号为CS和WR,故启动A/D转换只须如下两条指令:MOV DX, ADPORT ; ADC0809端口地址OUT DX, AL ;发CS和WR信号并送通道地址(2)用延时方式等待A/D转换结果,使用下述指令读取A/D转换结果。MOV DX, ADPORT; ADC0809端口地址IN AL, DX(3)循环不断采样A/D转换的结果,边采样边显示A/D转换后的数字量。5.2实验程序CODE SEGMENT ;H0809.ASM ASSUME CS:CODEADPORT EQU 8000hPA EQU 0FF21H ;字位口PB EQU 0FF22H ;字形口
3、PC EQU 0FF23H ;键入口 ORG 1000HSTART: JMP START0BUF DB ?,?,?,?,?,?data1: db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h db 86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FHSTART0: CALL BUF1ADCON: MOV AX,00 MOV DX,ADPORT OUT DX,AL MOV CX,0500HDELAY: LOOP DELAY MOV DX,ADPORT IN AL,DX CA
4、LL CONVERS CALL DISP JMP ADCONCONVERS:MOV AH,AL AND AL,0FH MOV BX,OFFSET BUF MOV BX+5,AL MOV AL,AH AND AL,0F0H MOV CL,04H SHR AL,CL MOV BX+4,AL RETDISP: MOV AL,0FFH ;00H MOV DX,PA OUT DX,AL MOV CL,0DFH ;20H ;显示子程序 ,5ms MOV BX,OFFSET BUFDIS1: MOV AL,BX MOV AH,00H PUSH BX MOV BX,OFFSET DATA1 ADD BX,AX
5、 MOV AL,BX POP BX MOV DX,PB OUT DX,AL MOV AL,CL MOV DX,PA OUT DX,AL PUSH CXDIS2: MOV CX,00A0H LOOP $ POP CX CMP CL,0FEH ;01H JZ LX1 INC BX ROR CL,1 ;SHR CL,1 JMP DIS1LX1: MOV AL,0FFH MOV DX,PB OUT DX,AL RETBUF1: MOV BUF,00H MOV BUF+1,08H MOV BUF+2,00H MOV BUF+3,09H MOV BUF+4,00H MOV BUF+5,00H RETCOD
6、E ENDS END START5.3程序运行界面图1-3 实验一程序运行界面六、实验步骤 将0809 CS4插孔连到译码输出8000H插孔、连JX6JX17。将通道0模拟量输入端IN0连电位器W1的中心插头AOUT1(05V)插孔。运行实验程序如在PC机和实验系统联机状态下,运行该实验程序,可用鼠标左键单击菜单栏“文件”或工具栏“打开图标”,弹出“打开文件”的对话框,然后打开8kAsm文件夹,点击H0809.ASM文件,单击“确定”即可装入A/D转换实验源文件,再单击工具栏中编译,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“R运行”或工具图标运行,即开始运行程序。如果在没有P
7、C机的情况下,则在8086K系统显示监控提示符“P.”时,用户段地址固定为0000(省略输入),按SCAL键,输入起始偏移地址1000,按EXEC键,在系统上显示“0809 XX”。“XX”表示输入模拟量转换后的数字量。调节电位器Wl, 显示器上会不断显示新的转换结果。模拟量和数字量对应关系的典型值为:0V00H+2.5V80H+5VFFH按RST键退出。以上两种方式运行结果完全一致,因此,在下面的实验中,不管按何种方式均能运行实验程序。七、实验接线及运行结果 图1-4 实验一实物接线图图1-5 显示器上输出为00H的运行结果图1-6 显示器上输出为80H的运行结果图1-7 显示器上输出为FF
8、H的运行结果实验二 8255A并行口实验(一)一、实验目的 1.掌握8255A和微机接口方法。2.掌握8255A的工作方式和编程原理。二、实验内容 用8255PA口控制PB口。三、实验接线图 图2-1 实验二接线图四、程序流程图图2-2 实验二程序流程图五、实验程序及运行界面 5.1编程指南1.8255A芯片简介:8255A可编程外围接口芯片是INTEL公司生产的通用并行接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0:基本输入/ 输出方式方式l:选通输入/ 输出方式方式2:双向选通工作方式2.使8255A端口A工作在方式0并作为输入口,读取Kl-K8
9、个开关量,PB口工作在方式0作为输出口。5.2实验程序CODE SEGMENT ;H8255-1.ASM ASSUME CS:CODEIOCONPT EQU 0FF2BHIOBPT EQU 0FF29HIOAPT EQU 0FF28H ORG 11B0HSTART: MOV AL,90H MOV DX,IOCONPT OUT DX,AL NOP NOP NOPIOLED1: MOV DX,IOAPT IN AL,DX MOV DX,IOBPT OUT DX,AL MOV CX,0FFFFHDELAY: LOOP DELAY JMP IOLED1CODE ENDS END START5.3程序运
10、行界面图2-3 实验二程序运行界面六、实验步骤 在系统显示监控提示符“P.”时,按SCAL键,传送EPROM中的实验程序到内存中。 8255A芯片A口的PA0-PA7依次和开关量输入Kl-K8相连。8255A芯片B口的PB0-PB7依次接Ll-L8。 运行实验程序。在系统显示监控提示符“P.”时,输入11B0,按EXEC键,系统显示执行提示符“”拨动K1-K8, LI-L8会跟着亮灭。七、实验接线及运行结果 图2-4 实验二实物接线图图2-5 8盏灯全亮的运行结果图2-6 8盏灯全灭的运行结果图2-7 部分灯亮和暗的运行结果实验三 8255A并行口实验(二)一、实验目的 掌握通过8255A并行
11、口传输数据的方法,以控制发光二极管的亮与灭。二、实验内容 用8255做输出口,控制十二个发光管亮灭,模拟交通灯管理。三、实验接线图 图3-1 实验三接线图四、程序框图图3-2 实验三程序框图五、实验程序及运行界面 5.1编程指南(1)通过8255A控制发光二极管,PB4-PB7对应黄灯,PC0-PC3对应红灯,PC4-PC7对应绿灯, 以模拟交通路灯的管理。(2)要完成本实验,必须先了解交通路灯的亮灭规律,设有一个十字路口l、3为南北方向,2、4为东西方向,初始状态为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。延时一段时间后,l、3路口的绿灯熄灭,而l
12、、3路口的黄灯开始闪烁,闪烁若干次以后,l、3路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车,延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到l、3路口方向,之后,重复上述过程。(3)程序中设定好8255A的工作模式及三个端口均工作在方式0,并处于输出状态。(4)各发光二极管共阳极,使其点亮应使8255A相应端口的位清0。5.2实验程序CODE SEGMENT ;H8255-2.ASM ASSUME CS:CODEIOCONPT EQU 0FF2BHIOAPT EQU 0FF28HIOBPT EQU 0FF29HIOCPT EQU 0FF2AH ORG
13、11e0HSTART: MOV AL,82H MOV DX,IOCONPT OUT DX,AL MOV DX,IOBPT IN AL,DX MOV BYTE PTR DS:0601H,AL MOV DX,IOCONPT MOV AL,80H OUT DX,AL MOV DX,IOBPT MOV AL,DS:0601H OR AL,0F0H OUT DX,AL MOV DX,IOCPT MOV AL,0F0H OUT DX,AL CALL DELAY1IOLED0: MOV AL,B MOV DX,IOCPT OUT DX,AL CALL DELAY1 ALL DELAY1 OR AL,0F0H
14、 OUT DX,AL MOV CX,8HIOLED1: MOV DX,IOBPT MOV AL,DS:0601H AND AL,B OUT DX,AL CALL DELAY2 OR AL,B OUT DX,AL CALL DELAY2 LOOP IOLED1 MOV DX,IOCPT MOV AL,0F0H OUT DX,AL CALL DELAY2 MOV AL,B OUT DX,AL CALL DELAY1 CALL DELAY1 OR AL,0F0H OUT DX,AL MOV CX,8HIOLED2: MOV DX,IOBPT MOV AL,DS:0601H AND AL,B OUT
15、DX,AL CALL DELAY2 OR AL,B OUT DX,AL CALL DELAY2 LOOP IOLED2 MOV DX,IOCPT MOV AL,0F0H OUT DX,AL CALL DELAY2 JMP IOLED0DELAY1: PUSH AX PUSH CX MOV CX,0030HDELY2: CALL DELAY2 LOOP DELY2 POP CX POP AX RETDELAY2: PUSH CX MOV CX,8000HDELA1: LOOP DELA1 POP CX RETCODE ENDS END START5.3程序运行界面图3-3 实验三程序运行界面六、
16、实验步骤 1.在系统显示监控提示符“P.”时,按SCAL键。2.按图6-4连好实验线路8255A PC0L3 PC1L7 PC2L11 PC3L15 PC4L2 PC5L6 PC6L10 PC7L14 PB4L1 PB5L5 PB6L9 PB7L133在“P.”态时,输入11E0后,按EXEC键;系统显示执行符“”,同时Ll-Ll5发光二极管模拟交通灯显示。七、实验接线及运行结果图3-4 实验三实物接线图图3-5 1、3路口绿灯亮,2、4路口红灯亮运行结果图3-6 1、3路口黄灯闪烁,2、4路口红灯亮运行结果图3-7 1、3路口红灯亮,2、4路口绿灯亮运行结果图3-8 1、3路口红灯亮,2、4
17、路口黄灯闪烁运行结果计算机与通信综合实验软件实验3.若自STRING单元开始存放一个字符串,以$结尾,试编写程序,统计字符串中“Bin”序列的个数,并将结果存入COUNT单元。编写程序如下:DATA SEGMENTSTRING DB dsiahfkbinasdaskbinsadj$;数据定义COUNT DB 0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AX;设置代码段基址LEA SI,STRING;取STRING的偏移地址到SIMOV CL,0NEXT1: ;若当前字符是b,则转到NEXT3比较下一个
18、字符是否是iMOV AL,SICMP AL,bJZ NEXT3CMP AL,$;若当前字符是$,则转到NEXT6输出结果并结束程序JZ NEXT6NEXT2: INC SIJMP NEXT1NEXT3: ;若当前字符是否是i,则转到NEXT4比较下一个字符是否是nINC SIMOV AL,SICMP AL,iJZ NEXT4DEC SI;否则转到NEXT2重新比较当前字符是否是bJMP NEXT2NEXT4:;若当前字符是n,则转到NEXT5对COUNT进行加1INC SIMOV AL,SICMP AL,nJZ NEXT5DEC SI;否则转到NEXT2重新比较当前字符是否是bJMP NEXT
19、2NEXT5: INC CL;如果存在bin字符,则CL加1JMP NEXT2NEXT6: ;将CL存入COUNT中,并输出bin字符的出现次数MOV COUNT,CLADD CL,30H;将CL的值转换成ASCII码MOV DL,CLMOV AH,02HINT 21H MOV AH,4CH;结束程序INT 21HCODE ENDSEND START用RadASM软件进行汇编如下图:编译、构建和运行,得到如下的结果(图中红框标注部分就是bin字符出现的次数):实验感悟这次实验课程加深了我们对汇编语言指令的熟悉和理解。不仅巩固了书本所学的知识,还具有一定的灵活性,发挥了操作,加深了我们对硬件的熟
20、悉,锻炼了动手能力,发挥创造才能。通过这次实验课使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。微机这门课程可以阐明微处理器,汇编语言程序设计,计算机结构和操作系统等基本概念。详尽地论述了有关微处理器及其指令系统的概念和程序设计方法,介绍构成微型计算机的存储器,接口部件,总线等各项技术。汇编语言是一
21、个最基础最古老的计算机语言,依赖于计算机的低级程序设计语言。汇编语言是我们理解整个计算机系统的最佳起点和最有效途径。汇编是对寄存的地址,以及数据单元进行最直接的修改,而在某些时候,这种方法的确是最有效,也是最可靠的。然而有优点,自然也就有缺点,最重要的一点就是汇编语言很繁琐,对某个数据进行修改时,本来很简单一个操作会用很多条繁琐的语句来解决,而这些语句本身在执行和操作的过程中,占用大量的时间和成本。并有大量的程序和硬件设计类题目,使我们能够深入了解计算机的原理、结构和特点,以及如何运用这些知识来设计一个实用的微型计算机系统。具体来说,就是掌握Intel8086/8088微型计算机系统地组成原理
22、,熟练运用8086宏汇编语言进行程序设计,熟悉各种I/O接口芯片的配套使用技术,并通过一定的课程实验与实践,进一步提高系统设计的能力,使学生能够完成实用的微型计算机系统的软硬件设计。学习微机该门课程知识时,其思维方法也和其它课程不同,该课程偏重于工程思维,具体地说,在了解了微处理器各种芯片的功能和外部特性以后,剩下的是如何将它们用于实际系统中,其创造性劳动在于如何用计算机的有关技术和厂家提供的各种芯片,设计实用的电路和系统,再配上相应的应用程序,完成各种实际应用项目。本次课程设计的几个实验相对都比较简单,而且经过老师的讲解以及实验书上的指导,几乎把我们要用到的程序和实验台电路的接线方法都告诉我
23、们了,所以做起来很容易。这次实验并不是很难,主要的困难来自对程序的理解。我们最后对实验的原理有了清晰的认识。让我们知道了实验台上各个模块的用法;而且它还让我们对自己动手写程序来控制实验台的运作有了一定的基础。虽然实验台只是一个小型的模拟平台,但是通过对它的学习和操作,我们对有关接口的知识将会有一个更广泛的认识,而且它对我们以后的学习也会有帮助的。实验中个人的力量是不及群体的力量的,我们分工合作,做事的效率高了很多。虽然有时候会为了一些细节争论不休,但最后得出的总是最好的结论。而且实验也教会我们在团队中要善于与人相处,与人共事,不要一个人解决所有问题。总之,这次微机实验课让我收获颇多,我更加深入地理解了微机原理课程上讲到的各种芯片的功能,以及引脚的作用,同时加深了对于主要芯片的应用的认识,同时在试验室的环境里熟悉了汇编程序的编写过程和运行过程,最后还提高了自己的动手能力。