微机原理实验报告_第1页
微机原理实验报告_第2页
微机原理实验报告_第3页
微机原理实验报告_第4页
微机原理实验报告_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

...wd......wd......wd...微型计算机原理及单片机实验报告班级:学号:姓名:实验一汇编语言程序设计1分支程序设计实验1.1.1实验目的1.掌握分支程序的构造。2.掌握分支程序的设计、调试方法。1.1.2实验设备PC机一台,TD-PITE实验装置一套。1.1.3实验内容设计一数据块间的搬移程序。设计思想:程序要求把内存中一数据区〔称为源数据块〕传送到另一存储区〔成为目的数据块〕。源数据块和目的数据块在存储中可能有三种情况,如图1.1所示。〔a〕〔b〕〔c〕图1.1源数据块与目的数据块在存储中的位置情况对于两个数据块别离的情况,如图1.1〔a〕,数据的传送从数据块的首地址开场,或从数据块的末地址开场均可。但是对于有重叠的情况,则要加以分析,否则重叠局部会因“搬移〞而遭到破坏,可有如下结论:当源数据块首地址<目的块首地址时,从数据块末地址开场传送数据,如图1.14〔b〕所示。当源数据块首地址>目的块首地址时,从数据块首地址开场传送数据,如图1.14〔c〕所示。实验程序流程图如图1.5所示。1.1.4实验程序如下SSTACKSEGMENTSTACKDW64DUP(?)SSTACKENDSCODESEGMENTASSUMECS:CODESTART:MOVCX,0010H图1.5程序流程图MOVSI,6000HMOVDI,7000HCMPSI,DIJAA2ADDSI,CXADDDI,CXDECSIDECDIA1:MOVAL,[SI]MOV[DI],ALDECSIDECDIDECCXJNEA1JMPA3A2:MOVAL,[SI]MOV[DI],ALINCSIINCDIDECCXJNEA2A3:JMPA3CODEENDSENDSTART1.1.5实验步骤1.按流程图编写实验程序,经编译、链接无误后装入系统。2.用E命令在以SI为起始地址的单元中填入16个数。3.运行程序,待程序运行停顿。4.通过D命令查看DI为起始地址的单元中的数据是否与SI单元中数据一样。5.通过改变SI、DI的值,观察在三种不同的数据块情况下程序的运行情况,并验证程序的功能。1.1.6实验结果图1图2图3图4图52.循环程序设计实验1.2.1实验目的1.加深对循环构造的理解。2.掌握循环构造程序设计的方法以及调试方法。1.2.2实验设备PC机一台,TD-PITE实验装置一套。1.2.3实验内容计算S=1+2×3+3×4+4×5+…+N〔N+1〕,直到N〔N+1〕项大于200为止。编写实验程序,计算上式的结果,参考流程图如图1.6所示。1.2.4实验程序SSTACKSEGMENTSTACKDW64DUP(?)图1.6程序流程图SSTACKENDSCODESEGMENTASSUMECS:CODESTART:MOVDX,0001HMOVBL,02HA1:MOVAL,BLINCBLMULBLADDDX,AX;结果存于DX中CMPAX,00C8H;判断N(N+1)与200的大小JNAA1A2:JMPA2CODEENDSENDSTART1.2.5实验步骤〔1〕编写实验程序,编译、链接无误后装入系统。〔2〕运行程序,待程序运行停顿。〔3〕运算结果存储在存放器DX中,查看结果是否正确。〔4〕可以改变N〔N+1〕的条件来验证程序功能是否正确,但要注意,结果假设大于0FFFFH将产生数据溢出。1.2.6实验结果实验二8255并行接口实验2.1实验目的1.学习并掌握8255的工作方式及其应用。2.掌握8255典型应用电路的接法。2.2实验设备PC机一台,TD-PITE实验装置一套。2.3实验内容查询式输入输出实验。编写程序,使8255的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输。要求将一开关设为总开关,由此开关来决定数据灯的显示是否随开关相应改变。2.4实验步骤查询输入输出实验本实验使8255端口A工作在方式0并作为输入口,端口B工作在方式0并作为输出口。用一组开关信号接入端口A,端口B输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入输出功能。具体实验步骤如下述:〔1〕实验接线图如图2.1所示,按图连接实验线路图。〔2〕编写实验程序,经编译、连接无误后装入系统。〔3〕运行程序,改变拨动开关,同时观察LED显示,验证程序功能。图2.18255根本输入输出实验接线图2.5实验程序SSTACKSEGMENTSTACKDW32DUP(?)SSTACKENDSCODESEGMENTASSUMECS:CODESTART:MOVDX,0646H;控制端口地址0646H送DX,因为8255的cs端口接I0Y1对应的编址空间是0640H—067FH,所以这里是0646H。MOVAL,90H;方式选择控制字送ALOUTDX,AL;方式选择控制字输给8255A的控制端口,完成端口A工作在方式0并作为输入口,端口B工作在方式0并作为输出口。AA1:MOVDX,0640H;控制端口A地址0640H送DXINAL,DX;将端口A连接的开关的对应状态送给ALTESTAL,80H;检测AL的最高位JZAA1;如果为0则跳到AA1CALLDELAYMOVDX,0642H;控制端口A地址0642H送DXOUTDX,AL;将AL的数据送到8255的端口B,从而使其连接的LED的灯发光JMPAA1DELAY:PUSHCXMOVCX,0F00HAA2:PUSHAXPOPAXLOOPAA2POPCXRETCODEENDSENDSTART2.6实验结果实验三.8254定时/计数器应用实验3.1实验目的1.掌握8254的工作方式及应用编程。2.掌握8254典型应用电路的接法。3.2实验设备PC机一台,TD-PITE实验装置一套。3.3实验内容计数应用实验。编写程序,应用8254的计数功能,使用单次脉冲模拟计数,使每当按动‘KK1+’5次后,产生一次计数中断,并在屏幕上显示学号末两位。3.4实验单元电路图8254实验单元电路图如以下列图所示:图3.18254实验电路原理图3.5实验程序实验程序清单〔A82541.ASM〕A8254EQU06C0HB8254EQU06C2HC8254EQU06C4HCON8254EQU06C6HSSTACK SEGMENTSTACK DW32DUP(?)SSTACK ENDSCODE SEGMENT ASSUMECS:CODE,SS:SSTACKSTART:PUSHDSMOVAX,0000HMOVDS,AXMOVAX,OFFSETIRQ7;取中断入口地址MOVSI,003CH ;中断矢量地址MOV[SI],AX ;填IRQ7的偏移矢量 MOVAX,CS ;段地址 MOVSI,003EH MOV[SI],AX ;填IRQ7的段地址矢量 CLI POPDS ;初始化主片8259 MOVAL,11H OUT20H,AL ;ICW1 MOVAL,08H OUT21H,AL ;ICW2 MOVAL,04H OUT21H,AL ;ICW3 MOVAL,01H OUT21H,AL ;ICW4 MOVAL,6FH ;OCW1 OUT21H,AL ;8254 MOVDX,CON8254 MOVAL,10H ;计数器0,方式0 OUTDX,AL MOVDX,A8254 MOVAL,04H OUTDX,AL STIAA1: JMPAA1IRQ7: MOVDX,A8254 MOVAL,04H OUTDX,AL MOVAX,014DH INT10H ;显示字符M MOVAX,0120H INT10H MOVAL,20H OUT20H,AL ;中断完毕命令 IRETCODE ENDS ENDSTART3.6实验结果实验四.数据采集实验4.1实验目的1.掌握8254的工作方式及应用编程。2.掌握8254典型应用电路的接法。4.2实验设备PC机一台,TD-PITE实验装置一套。4.3实验内容要求实现三角波的产生,并且用示波器查看波形。4.4硬件连线图4.5实验程序IOYOEQU0600HDA0832EQUIOYO+00H*2STACKSEGMENTSTACKDW32DUP(?)STACKENDSCODESEGMENTASSUMECS:CODE,SS:STACKSTART:MOVAX,00HMOVDX,DA0832moval,00hAA1:OUTDX,AL CALLDELAY INCAL CMPAL,0FFH JZAA2 JMPAA1AA2:OUTDX,AL CALLDELAY DECAL CMPAL,00H JZAA1 JMPAA2DELAY:PUSHCX MOVCX,03FFHAA3:PUSHAX POPAX LOOPAA3 POPCX RETCODEENDSENDSTART 4.6实验步骤4.7实验结果实验五.求和程序设计5.1实验目的熟悉KEIL的软件使用环境及单片机C51语言编程;掌握C51环境下内存地址的访问方法及循环程序的实现方法。5.2实验设备PC机一台5.3实验内容内容:编写十个字节求和程序。要求:十个加数在片内RAM区20H~29H单元;结果存放在片内RAM区30H,31H区。5.4实验程序#include<absacc>voidmain(){inti,sum=0;for(i=0;i<10;i++){sum+=DBYTE[0x20+i];}DBYTE[0x30]=sum/256;DBYTE[0x31]=sum%256;while(1);}5.5实验步骤开机启动KeilC51软件进入μVision2集成开发环境,确认89C51处于软件仿真状态。完成程序的设计、编辑、编译、连接。进入DEBUG方式,翻开存储器Memory1窗口,在窗口Address栏键入D:20H;点击鼠标右键,选择最后一项ModifyMemory,输入十个加数。调试和运行程序并记录存储器Memory1,D:30H窗口实验结果。5.6实验结果实验六.基于PROTEUS的60S倒计时器设计6.1实验目的1.熟悉PROTEUS的软件使用环境及单片机C51语言编程;2.掌握C51环境下定时中断、并行接口及LED的显示方法。6.2实验设备PC机一台6.3实验内容60S倒计时器,利用LED显示秒数。6.4实验电路图6.5实验程序#include<reg52.h>unsignedcharnum,t,n;unsignedcharcode;table[]={0xc0,0x90,0x80,0xf8,0x82,0x92,0x99,0xb0,0xa4,0xf9};unsignedcharcodetable1[]={0x92,0x99,0xb0,0xa4,0xf9,0xc0};voidmain(){num=0;t=0;TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;P2=0xc0;P0=0x82;while(1){if(t==10){t=0;num++;if(num==10)num=0;P2=table[num];if(num==1){P0=table1[n];n++;}}if(n==6){if(num==0)while(1);}}}voidexter0()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;t++;}6.6实验步骤开机启动KeilC51软件进入μVision2集成开发环境,确认89C51处于软件仿真状态。完成程序的设计、编辑、编译、连接、生成HEX文件。启动ISIS软件链接仿真电路图,下载HEX文件,进展仿真。6.7实验结果实验七.外中断实验7.1实验目的1.掌握外中断的工作方式及应用编程。2.掌握并行接口及LED显示器的典型应用电路。7.2实验设备PC机一台,TD-PITE实验装置一套。7.3实验内容要求实现外部按键一次〔利用KK1按键〕,LED显示器的值加1。7.4实验程序#include<absacc.h>#include<SST89x5x4.h>unsignedcharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};intnum=0;sbits1=P2^0;sbits2=P2^1;sbits3=P2^2;voiddelay();voiddisplay(intnum);voidmain(){IT0=1;EA=1;EX0=1;s3=1;while(1){ display(num);} }voiddelay() {unsignedcharj;for(j=0;j<60;j++); }voiddisplay(intnum){unsignedcharbitge,bitshi;intge,shi;shi=num%100/10;ge=num%10;bitshi=table[shi];bitge=table[ge];s1=0;s2=1;P1=bitshi;//10位delay();s1=1;s2=0; P1=bitge;//个位delay();}voidbreak_timer()interrupt0{num=num+1;}7.6实验步骤开机启动KeilC51软件进入μVision2集成开发环境,确认89C51处于软件仿真状态。完成程序的设计、编辑、编译、连接。进入DEBUG方式,按几次KK1按键,观察LED显示器的值。7.7实验结果实验八.静态

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论