计算机原理与接口技术实验.docx

上传人:b****6 文档编号:8606651 上传时间:2023-02-01 格式:DOCX 页数:12 大小:48.23KB
下载 相关 举报
计算机原理与接口技术实验.docx_第1页
第1页 / 共12页
计算机原理与接口技术实验.docx_第2页
第2页 / 共12页
计算机原理与接口技术实验.docx_第3页
第3页 / 共12页
计算机原理与接口技术实验.docx_第4页
第4页 / 共12页
计算机原理与接口技术实验.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

计算机原理与接口技术实验.docx

《计算机原理与接口技术实验.docx》由会员分享,可在线阅读,更多相关《计算机原理与接口技术实验.docx(12页珍藏版)》请在冰豆网上搜索。

计算机原理与接口技术实验.docx

计算机原理与接口技术实验

计算机原理与接口技术实验

实验一 传送指令编程调试

一.实验目的

1.掌握指令系统传送指令的汇编语言程序设计和调试方法;

2.熟悉运用MCS-51软件在线仿真调试设计的程序的方法。

二.实验设备

EL-Ⅱ型实验箱,8051CPU板

三.实验内容

  1.编写多字节数据的传送程序,把内部RAM的30H--37H单元置为10H-17H,然后传送到外部的RAM的4200H--4207H单元;再将4200H--4207H单元逐一求反后送到内部RAM的30H--37H单元。

  2.程序结构采用循环结构,程序用R0作内部RAM指针,用DPTR作外部RAM指针,R7作为计数初值N,本实验N=8。

1.在xp窗口中启动MCS51应用软件,用MCS-51汇编软件对输入程序、进行汇编,产生目标代码文件,调试。

程序输入、汇编和调试的具体步骤

1)xp窗口中建一个名字是由3~5个英文字母组合的文件夹。

2)在MCS51集成开发环境的主菜单中选择新建文件分支命令M51后,按实验系统复位键RST后,实验系统部分显示‘C’,计算机屏幕显示为可编辑状态,既可进行源程序的输入。

3)程序输入结束,必须通过主菜单中文件分支的保存命令将其保存在WIN98窗口中新建的文件夹中,注意:

文件名也必须是由3~5个英文字母组合,后缀为.asm。

4)点击主菜单中编译分支的汇编命令对输入的程序进行汇编,在窗口的左下方显示编译结果。

通过观察其内容可以了解程序的指令运用和输入的正确与否。

当编译正确时,软件将自动将生成的目标文件下载到EL-Ⅱ型实验箱的RAM中,可以进入下一个内容——调试的操作。

否则必须将程序中的错误修改正确,再经过存盘和编译的过程,方可以做调试的工作。

当编辑结果有错误时,首先将51窗口最小化,在WIN98窗口中新建的文件夹中找到*.lst打开查看编译结果,然后必须关闭该显示文件,再回到51窗口中做修改、存盘和编译工作工作。

调试程序的步骤

(1)点击主菜单调试中的启动调试命令。

(2)打开主菜单查看命令的寄存器窗口、内部数据存储器窗口和外部数据存储器窗口(通过它们可以查看程序的执行情况。

注意:

寄存器窗口的的内容是EL-Ⅱ型实验箱复位后的初态,内部数据存储器窗口和外部数据存储器窗口地址和内容可修改。

地址的改写方法:

(3)点击主菜单调试中的调试命令,对程序进行调试。

4.参考程序

CSEGAT0000H

LJMP4000H;转入程序

CSEGAT4000H;内部RAM传送到外部RAM

START:

MOVR0,#30H;指向低字节

MOVDPTR,#4200H

MOVR7,#08H

LOOP:

MOVA,@R0

MOVX@DPTR,A

INCR0

INCDPTR

DJNZR7,LOOP;外部RAM逐一求反传送到内部RAM

MOVR0,#38H

MOVDPTR,#4200H

MOVR7,#08H

LOOP1:

MOVXA,@DPTR

CPLA;求反

MOV@R0,A

INCR0

INCDPTR

DJNZR7,LOOP1

HERE:

AJMPHERE;程序结束

END

5.通过EL-Ⅱ型实验箱调试

(1)用单步执行,记下执行指令后表格中相应寄存器的数值:

执行指令

A

R0

DPTR(

R7

MOVR7,#08H

第一次循环

MOVX@DPTR,A

第二次循环

MOVX@DPTR,A

第三次循环

MOVX@DPTR,A

第四次循环

MOVX@DPTR,A

第五次循环

MOVX@DPTR,A

第六次循环

MOVX@DPTR,A

第七次循环

MOVX@DPTR,A

第八次循环

MOVX@DPTR,A

第一次循环

MOVA,@R0

第二次循环

MOVA,@R0

第三次循环

MOVA,@R0

第四次循环

MOVA,@R0

第五次循环

MOVA,@R0

第六次循环

MOVA,@R0

第七次循环

MOVA,@R0

第八次循环

MOVA,@R0

(2)同时观察相关存储器的变化情况,记录结果。

(3)运用执行到光标行命令,实现连续执行的操作。

四.实验报告

1.写出本程序调试过程和运行结果。

  2.独立编程实现内部RAM的30H--37H单元的数据传送到内部RAM的38H—3FH单元中的功能并调试,运行。

  3.如何修改程序,可把外部RAM的4100H—410FH单元中的数据传送到外部RAM的4110-411FH单元,调试,运行程序。

4.如何修改程序实现把外部ROM的4100H—410FH单元中的数据传送到内部RAM的30H-3FH单元中?

 

实验二 分支和循环程序的设计

一.实验目的

1.掌握MCS-51汇编语言程序设计;

2.进一步熟悉掌握程序设计和运用EL-Ⅱ型实验箱调试的方法;

二.实验设备

EL-Ⅱ型实验箱,8051CPU板

三.实验内容

1.编写三字节无符号加法程序,加数693B68H放在52H,51H,50H,被加数3AE409H放在42H,41H,40H,“和”放在42H,41H,40H。

  2.程序结构采用主程序和子程序结构

主程序用R0,R1作指针,R7作为加法字节计数值N,本实验N=3;子程序完成一个字节的加法。

3.用文本编辑软件如EDIT编写源程序,用MCS51软件对程序进行汇编,产生目标代码文件并调试程序。

4.参考程序

    主程序

   源程序注释

CSEGAT0000H

LJMP4000H;转入程序

CSEGAT4000H

MAIN:

MOVR0,#40H;指向低字节

MOVR1,#50H

MOVR7,#03H

CLRC;清进位位

LOOP:

ACALLADDSUB;调用字节加法子程序

DJNZR7,LOOP

HERE:

AJMPHERE;程序结束

子程序

CSEGAT4100H

ADDSUB:

MOVA,@R0;取被加数

ADDCA,@R1;A和加数相加

MOV@R0,A;保存和

INCR0;指针加1

INCR1

RET;返回

END

5.用MCS51软件和EL-Ⅱ型实验箱仿真机联机调试

用单步执行或断点连续执行,记下执行指令后表格中相应寄存器的数值:

 

执行指令

A

R0

R1

R7

CLRC

第一次调用后

ACALLADDSUB

DJNZR7,LOOP

第二次调用后

ACALLADDSUB

DJNZR7,LOOP

第三次调用后

ACALLADDSUB

DJNZR7,LOOP

6.按上述方法题,编写程序并进行上机调试

四.实验报告

1.写出本程序调试过程和运行结果.

2.本程序题意修改为无符号十进制数相加,应增加DAA指令,加在程序的何位置?

修改后用BCD码135790和246801相加,调试过程并运行。

3.独立编写和调试程序。

(要求在《新编微机原理及接口技术》教材P196页的11~16题中任选3题)

实验三P1口实验一

一、实验目的:

1.学习P1口的使用方法。

2.学习延时子程序的编写和使用。

二、实验设备:

EL-Ⅱ型实验箱,8051CPU板。

三、实验内容:

1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。

2.P1口做输入口,接八个按纽开关,以实验箱上74LS273做输出口,编写程序读取开关状态,在发光二极管上显示出来。

四、实验原理:

P1口为准双向口,P1口的每一位都能独立地定义为输入位或输出位。

作为输入位时,必须向锁存器相应位写入“1”,该位才能作为输入。

8031中所有口锁存器在复位时均置为“1”,如果后来在口锁存器写过“0”,在需要时应写入一个“1”,使它成为一个输入。

可以用第二个实验做一下实验。

先按要求编好程序并调试成功后,可将P1口锁存器中置“0”,此时将P1做输入口,会有什么结果。

再来看一下延时程序的实现。

现常用的有两种方法,一是用定时器中断来实现,一是用指令循环来实现。

在系统时间允许的情况下可以采用后一种方法。

本实验系统晶振为6.144MHZ,则一个机器周期为12÷6.144us即1÷0.512us。

现要写一个延时0.1s的程序,可大致写出如下:

MOVR7,#X

(1)

DEL1:

MOVR6,#200

(2)

DEL2:

DJNZR6,DEL2(3)

DJNZR7,DEL1(4)

上面MOV、DJNZ指令均需两个机器周期,所以每执行一条指令需要1÷0.256us,现求出X值:

1÷0.256+X(1÷0.256+200×1÷0.256+1÷0.256)=0.1×10⁶

指令

(1)指令

(2)指令(3)指令(4)

所需时间所需时间所需时间所需时间

X=(0.1××10⁶-1÷0.256)/(1÷0.256+200×1÷0.256+1÷0.256)=127D=7FH

经计算得X=127。

代入上式可知实际延时时间约为0.100215s,已经很精确了。

五、实验原理图:

 

P1口输出实验

六、实验步骤:

执行程序1时:

P1.0~P1.7接发光二极管L1~L8。

执行程序2时:

P1.0~P1.7接按纽开关K1~K8;74LS273的SO0~SO7接发光二极管L1~L8;74LS273的片选端CS273接CS0(由程序所选择的入口地址而定,与CSO~CS7相应的片选地址请查看第一部分系统资源,以后不赘述)。

 

实验四简单I/O口扩展实验

一、实验目的:

1.学习在单片机系统中扩展简单I/O口的方法。

2.学习数据输入,输出程序的编制方法。

二、实验设备:

EL-Ⅱ型实验箱,8051CPU板

三、实验原理:

MCS-51外部扩展空间很大,但数据总线口和控制信号线的负载能力是有限的。

若需要扩展的芯片较多,则MCS-51总线口的负载过重,74LS244是一个扩展输入口,同时也是一个单向驱动器,以减轻总线口的负担。

程序中加了一段延时程序,以减少总线口读写的频繁程度。

延时时间约为0.01秒,不会影响显示的稳定。

四、实验内容:

利用74LS244做为输入口,读取开关状态,并将此状态通过发光二极管显示出来。

五、实验原理图:

简单I/O实验2

六、实验步骤:

1.74LS244的SI0~SI7接开关的K1~K8,片选信号CS244接CS1。

2.74LS273的SO0~SO7接发光二极管的L1~L8,片选信号CS273接CS2。

3.编程、全速执行。

4.拨动开关K1~K8,观察发光二极管状态的变化。

 

实验五中断、定时器实验

———循环彩灯实验

一.实验目的:

1.学习8031内部计数器的使用和编程方法。

2.进一步掌握中断处理程序的编写方法。

二.实验设备:

EL-Ⅱ型实验箱,8051CPU板

三.实验原理:

1.定时常数的确定

定时器/计数器的输入脉冲周期与机器周期一样,为振荡频率的1/12。

本实验中时钟频率为6.0MHZ,现要采用中断方法来实现0.5秒延时,要在定时器1中设置一个时间常数,使其每隔0.1秒产生一次中断,CPU响应中断后将R0中计数值减一,令R0=05H,即可实现0.5秒延时。

时间常数可按下述方法确定:

机器周期=12÷晶振频率=12/(6×10⁶)=2us

设计数初值为X,则(2e+16-X)×2×

=0.1,可求得X=15535

化为十六进制则X=3CAFH,故初始值为TH1=3CH,TL1=AFH

2.初始化程序

包括定时器初始化和中断系统初始化,主要是对IP、IE、TCON、TMOD的相应位进行

正确的设置,并将时间常数送入定时器中。

由于只有定时器中断,IP便不必设置。

3.设计中断服务程序和主程序

中断服务程序除了要完成计数减一工作外,还要将时间常数重新送入定时器中,为下一次中断做准备。

主程序则用来控制发光二极管按要求顺序燃灭。

四.实验题目

由8031内部定时器1按方式1工作,即作为16位定时器使用,每0.1秒钟T1溢出中断一次。

P1口的P1.0~P1.7分别接发光二极管的L1~L8。

要求编写程序模拟一循环彩灯。

彩灯变化花样可自行设计。

例程给出的变化花样为:

①L1、L2、…L8依次点亮;②L1、L2、…L8依次熄灭;③L1、L2、…L8全亮、全灭。

各时序间隔为1秒。

让发光二极管按以上规律循环显示下去。

五.实验步骤:

用导线将P1.0~P1.7连接接发光二极管L1~L8即可。

ORG0000H

LJMPMAIN

ORG001BH

LJMPTCOS

ORG1000H

MAIN:

MOVTMOD,#10H

MOVTH1,#3CH

MOVTL1,#0B0H

SETBEA

SETBET1

MOVR7,#20

MOVA,#0FEH

MOVP1,A

SETBTR1

SJMP$

ORG1200H

TCOS:

DJNZR7,LOOP1

RLA

MOVP1,A

MOVR7,#20

LOOP1:

MOVTH1,#3CH

MOVTL1,#0B0H

RETI

END

 

实验六8255A可编程并行接口实验

一、实验目的:

1.了解8255A芯片的结构及编程方法。

2.掌握通过8255A并行口读取开关数据的方法。

二、实验设备:

EL-Ⅱ型实验箱,8051CPU板

三、实验原理:

设置好8255A各端口的工作模式。

实验中应当使三个端口都工作于方式0,并使A口为输出口,B口为输入口。

四、实验内容:

利用8255A可编程并行接口芯片,重复实验四的内容。

实验可用B通道作为开关量输入口,A通道作为显示输出口。

五、实验电路:

六、实验步骤:

8255A的PA0~PA7接发光二极管L1~L8;PB0~PB7接开关K1~K8;片选信号8255CS接CS0。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1