微机原理及接口技术实验指导书.docx

上传人:b****3 文档编号:4869783 上传时间:2022-12-11 格式:DOCX 页数:32 大小:242.85KB
下载 相关 举报
微机原理及接口技术实验指导书.docx_第1页
第1页 / 共32页
微机原理及接口技术实验指导书.docx_第2页
第2页 / 共32页
微机原理及接口技术实验指导书.docx_第3页
第3页 / 共32页
微机原理及接口技术实验指导书.docx_第4页
第4页 / 共32页
微机原理及接口技术实验指导书.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

微机原理及接口技术实验指导书.docx

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

微机原理及接口技术实验指导书.docx

微机原理及接口技术实验指导书

 

微机原理及接口技术

实验指导书

 

书写实验名称时请按下表内容填写:

实验名称

实验类型

实验学时

实验一、熟悉实验运行环境实验

验证

2

实验二、分支程序设计

验证

2

实验三、循环程序设计

验证

2

实验四、8255A并行接口应用实验

验证

2

实验五、中断特性及8259应用编程

验证

2

实验六、定时器/计数器实验

验证

2

实验七、电子琴实验

综合

4

实验一、熟悉实验运行环境实验

一、实验目的

1、熟悉汇编语言程序的调试环境

2、掌握部分DEBUG命令

二、实验内容

编写一个汇编语言程序,计算1+2+3+…+99+100,并将结果存入SUM字单元。

通过调试程序熟悉汇编语言的上机操作过程及部分命令。

三、上机操作过程

1、建立ASM文件(编辑源程序)

使用编辑程序EDIT在磁盘上建立源程序EX.ASM

例如:

D:

\MASM>EDITEX.ASM

用MASM程序产生OBJ文件

源文件建立后,就要用汇编程序对源文件汇编,汇编后产生二进制的目标文件(OBJ文件)

例如:

D:

\MASM>MASMEX

3、用LINK程序产生EXE文件

汇编程序已产生出二进制的目标文件(OBJ),但OBJ文件并不是可执行文件,还必须使用连接程序(LINK)把目标文件转换为可执行的EXE文件

例如:

D:

\MASM>LINKEX

4、调试运行

在建立了EXE文件后,就可以直接从DOS执行程序。

如果用户程序有错误或者没有直接将结果在终端上显示出来,程序执行完之后无法看见正确的结果。

那么怎么知道程序执行的结果是正确的呢?

此外,大部分程序必须经过调试阶段才能纠正程序执行中的错误,得到正确的结果。

这里就要使用调试程序。

例如:

D:

\MASM>DEBUGEX.EXE

1R命令显示或修改寄存器中的内容

例如:

_RBX

BX0369

059E

不作修改,直接回车;否则键入修改内容,并回车

2U命令反汇编

a、_U[地址]从指定地址开始,反汇编32个字节。

如果地址省略,则从上一个U命令的最后一条指令的下一个单元开始显示32个字节

b、_U[范围]对指定范围的内存单元进行反汇编

例如:

_U04BA:

01000108

3T命令单步执行命令(一次执行一条指令)

例如:

从代码段的0000H处开始单步执行

_RIP

IPXXXX

0000

_T

4G命令执行命令(执行多条指令)

_G地址1地址2

表示从地址1开始执行指令到地址2结束

例如:

从代码段的0000H处开始连续执行指令,知道0013H处

_RIP

IPXXXX

:

0000

_G0013

5D命令显示内存单元的内容

a、_D地址b、_D范围

例如:

显示数据段中0000H开始的若干个字节单元的内容

_DDS:

0000

例如:

显示数据段中0000H到0010H各字节单元的内容

_DDS:

00000010

6E命令修改存储单元的内容

例如:

修改数据段0002H字节单元的内容为0FFH

_EDS:

0002

XXXX:

0002XXFF

7Q命令退出DEBUG程序

实验二、分支程序设计

一、实验目的

1、掌握分支程序的结构形式

2、掌握分支程序的设计方法

二、实验内容

1、计算分段函数,X为8位带符号数

2、算法分析

先将X的范围确定在-10≤x≤20之内,除此之外结果全为0,然后计算X+5,再根据结果的符号求绝对值。

三、流程图

实验三、循环程序设计

一、实验目的

1、掌握循环程序的结构形式

2、掌握循环程序的设计方法

3、进一步熟悉DEBUG的常用命令

二、实验内容

1、根据题意编写程序

若需对某单位职工人数中的男性和女性人数分别进行统计。

在人口属性统计表中,男性用‘0’表示,女性用‘1’表示。

假设人口属性统计表存放在BLOCK为首地址的内存中,该单位总人数为COUNT,统计出的男性总人数存入MAN字节单元,女性总人数存入WOMAN字节单元。

数据段定义如下:

DATASEGMENT

BLOCKDB1,0,0,1,0,1……0(长度为20)

MANDB?

WOMANDB?

COUNTEQU20

DATAENDS

2、算法分析

已知单位的总人数,首先明确可以使用计数器控制法。

使用一个变址寄存器指向人口属性统计表的首单元,然后判断该字节单元是“1”还是“0”,分别在相应计数器中加1。

直至判断完每个字节结束。

三、流程图

 

 

实验环境概述

⒈1实验系统主要特点

⒈采用主频为4.77MHZ的8088CPU为主CPU,并以最小工作方式构成系统。

⒉配有二片61C256静态RAM构成系统的64K基本内存,地址范围为00000H-0FFFFH,其中00000H-00FFFH监控占用。

另配一片W27C512(64K)EP1存放监控程序,地址范围F0000H-FFFFF。

还配有一片W27C512EP2存放实验程序,为实验系统独立运行时下载实验程序提供方便。

⒊ 自带键盘、显示器,能独立运行,为实验程序调试带来方便。

⒋ 配备Windows仿真调试软件,支持机器码、汇编、C等三种语言的开发和调试。

⒌提供标准RS232异步通讯口,以连接IBM-PC机。

⒍配有各种微机常用I/O接口芯片,定时/计数接口芯片8253、A/D转换接口芯片0809、D/A转换接口芯片0832、中断控制器8259、键盘显示接口8279、并行I/O接口芯片8255、通讯接口芯片8250、8251、485和DMA控制器8237等。

⒎ 配备键盘、数码显示、发光二极管显示、开关量、LED16×16、LCD12864、温度压力、步进电机、直流电机、扬声器等输入输出设备。

⒏ 带有脉冲发生器、计数器电路、单脉冲发生器等常用电路。

⒐ 可以单步、断点、全速调试各实验程序。

⒑ 内置开关电源,为实验提供+5V/3A、±l2V/0.5A直流稳压电源。

⒒ 使用环境:

环境温度0~+40℃,无明显潮湿,无明显振动碰撞。

⒓ 配备USB接口的电子实验演示装置,通过编制程序,对模拟控制对象进行实时控制。

⒈2实验系统资源分配

8088有1兆存储空间,系统提供用户使用的空间为00000H-0FFFFH,用于存放、调试实验程序。

具体分配如下:

⑴存贮器地址分配

⑵I/O地址分配

监控占用00004H-0000FH作为单步(T)、断点(INT3)、无条件暂停(NM1)中断矢量区,用户也可以更改这些矢量,指向用户的处理,但失去了相应的单步、断点、暂停等监控功能。

F0000H-FFFFFH监控程序区系统占用。

实验四8255A并行口实验

一、实验目的

掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。

二、实验内容

用8255做输出口,控制十二个发光管亮灭,模拟交通灯管理。

三、实验接线图

四、编程指南

⑴通过8255A控制发光二极管,PB4-PB7对应黄灯,PC0-PC3对应红灯,PC4-PC7对应绿灯,以模拟交通路灯的管理。

⑵要完成本实验,必须先了解交通路灯的亮灭规律,设有一个十字路口l、3为南北方向,2、4为东西方向,初始状态为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。

延时一段时间后,l、3路口的绿灯熄灭,而l、3路口的黄灯开始闪烁,闪烁若干次以后,l、3路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车,延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,再切换到l、3路口方向,之后,重复上述过程。

⑶程序中设定好8255A的工作模式及三个端口均工作在方式0,并处于输出状态。

⑷各发光二极管共阳极,使其点亮应使8255A相应端口的位清0。

五、实验程序框图

六、实验步骤

⒈ 在系统显示监控提示符“P.”时,按SCAL键。

⒉ 按图6-4连好实验线路

8255A PC0-L3 PC1-L6 PC2-L9 PC3-L12 

 PC4-L2 PC5-L5 PC6-L8 PC7-L11

 PB4-L1 PB5-L4 PB6-L7 PB7-L10

⒊在“P.”态时,输入11E0后,按EXEC键;系统显示执行符“┌”,同时Ll-Ll5发光二极管模拟交通灯显示。

七、实验程序

CODESEGMENT;H8255-2.ASM

ASSUMECS:

CODE

IOCONPTEQU0FF2BH

IOAPTEQU0FF28H

IOBPTEQU0FF29H

IOCPTEQU0FF2AH

ORG11e0H

START:

MOVAL,82H

MOVDX,IOCONPT

OUTDX,AL

MOVDX,IOBPT

INAL,DX

MOVBYTEPTRDS:

[0601H],AL

MOVDX,IOCONPT

MOVAL,80H

OUTDX,AL

MOVDX,IOBPT

MOVAL,DS:

[0601H]

ORAL,0F0H

OUTDX,AL

MOVDX,IOCPT

MOVAL,0F0H

OUTDX,AL

CALLDELAY1

IOLED0:

MOVAL,10100101B

MOVDX,IOCPT

OUTDX,AL

CALLDELAY1

CALLDELAY1

ORAL,0F0H

OUTDX,AL

MOVCX,8H

IOLED1:

MOVDX,IOBPT

MOVAL,DS:

[0601H]

ANDAL,10101111B

OUTDX,AL

CALLDELAY2

ORAL,01010000B

OUTDX,AL

CALLDELAY2

LOOPIOLED1

MOVDX,IOCPT

MOVAL,0F0H

OUTDX,AL

CALLDELAY2

MOVAL,01011010B

OUTDX,AL

CALLDELAY1

CALLDELAY1

ORAL,0F0H

OUTDX,AL

MOVCX,8H

IOLED2:

MOVDX,IOBPT

MOVAL,DS:

[0601H]

ANDAL,01011111B

OUTDX,AL

CALLDELAY2

ORAL,10100000B

OUTDX,AL

CALLDELAY2

LOOPIOLED2

MOVDX,IOCPT

MOVAL,0F0H

OUTDX,AL

CALLDELAY2

JMPIOLED0

DELAY1:

PUSHAX

PUSHCX

MOVCX,0030H

DELY2:

CALLDELAY2

LOOPDELY2

POPCX

POPAX

RET

DELAY2:

PUSHCX

MOVCX,8000H

DELA1:

LOOPDELA1

POPCX

RET

CODEENDS

ENDSTART

 

实验五 中断特性及8259应用编程实验

一、实验目的

⒈ 掌握8259中断控制器的接口方法。

⒉ 掌握8259中断控制器的应用编程。

二、实验内容

利用8259实现对外部中断的响应和处理,要求程序对每次中断进行计数,并将计数结果送数码显示。

三、实验接线图

四、编程指南

⑴ 8259芯片介绍

中断控制器8259A是专为控制优先级中断而设计的芯片。

它将中断源优先级排队、辨别中断源以及提供中断矢量的电路集于一片中。

因此无需附加任何电路,只需对8259A进行编程,就可以管理8级中断,并选择优先模式和中断请求方式。

即中断结构可以由用户编程来设定。

同时,在不需要增加其它电路的情况下,通过多片8259A的级联,能构成多达64级的矢量中断系统。

⑵ 本实验中使用3号中断源IR3,“

”插孔和IR3相连,中断方式为边沿触发方式,每拨二次AN开关产生一次中断,满5次中断,显示“8259——good”。

如果中断源电平信号不符合规定要求,则自动转到7号中断,显示“Err”。

五、实验程序框图

IR3中断服务程序:

IR7中断服务程序:

六、实验步骤

1、按图5-6连好实验线路图。

⑴8259的INT连8088的INTR(Xl5);⑵8259的INTA连8088的INTA(Xl2);⑶“

”插孔和8259的3号中断IR3插孔相连,“

”端初始为低电平;⑷8259的CS端接EX1;⑸连JX4→JX17。

2、运行实验程序,在系统处于命令提示符“P.”状态下,按SCAL键,输入12D0,按EXEC键,系统显示8259-1。

3、拨动AN开关按钮,按满l0次显示good。

七、实验程序

CODESEGMENT;H8259.ASM

ASSUMECS:

CODE

INTPORT1EQU0060H

INTPORT2EQU0061H

INTQ3EQUINTREEUP3

INTQ7EQUINTREEUP7

PAEQU0FF21H;字位口

PBEQU0FF22H;字形口

PCEQU0FF23H;键入口

ORG12D0H

START:

JMPSTART0

BUFDB?

?

?

?

?

?

int.tdb?

data1:

db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h

db86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH

START0:

CLD

CALLBUF1

CALLWRINTVER;WRITEINTRRUPT

MOVAL,13H

MOVDX,INTPORT1

OUTDX,AL

MOVAL,08H

MOVDX,INTPORT2

OUTDX,AL

MOVAL,09H

OUTDX,AL

MOVAL,0F7H

OUTDX,AL

MOVint.t,01H;TIME=1

STI

WATING:

CALLDISP;DISP8259-1

JMPWATING

WRINTVER:

MOVAX,0H

MOVES,AX

MOVDI,002CH

LEAAX,INTQ3

STOSW

MOVAX,0000h

STOSW

MOVDI,003CH

LEAAX,INTQ7

STOSW

MOVAX,0000h

STOSW

RET

INTREEUP3:

CLI

MOVAL,INT.T

CALLCONVERS

MOVBX,OFFSETBUF

MOVAL,10H

MOVCX,05H

INTRE0:

MOV[BX],AL

INCBX

LOOPINTRE0

MOVAL,20H

MOVDX,INTPORT1

OUTDX,AL

ADDINT.T,01H

CMPINT.T,06H

JNAINTRE2

CALLBUF2;DISP:

good

INTRE1:

CALLDISP

JMPINTRE1

CONVERS:

ANDAL,0FH

MOVBX,offsetbufMOV[BX+5],AL

RET

INTRE2:

MOVAL,20H

MOVDX,INTPORT1

OUTDX,AL

STI

IRET

INTREEUP7:

CLI

MOVAL,20H

MOVDX,INTPORT1

OUTDX,AL

callbuf3;disp:

err

INTRE3:

CALLDISP

JMPINTRE3

DISP:

MOVAL,0FFH;00H

MOVDX,PA

OUTDX,AL

MOVCL,0DFH;MOVBX,OFFSETBUF

DIS1:

MOVAL,[BX]

MOVAH,00H

PUSHBX

MOVBX,OFFSETDATA1

ADDBX,AX

MOVAL,[BX]

POPBX

MOVDX,PB

OUTDX,AL

MOVAL,CL

MOVDX,PA

OUTDX,AL

PUSHCX

DIS2:

MOVCX,00A0H

LOOP$

POPCX

CMPCL,0FEH;01H

JZLX1

INCBX

RORCL,1;SHRCL,1

JMPDIS1

LX1:

MOVAL,0FFH

MOVDX,PB

OUTDX,AL

RET

BUF1:

MOVBUF,08H

MOVBUF+1,02H

MOVBUF+2,05H

MOVBUF+3,09H

MOVBUF+4,17H

MOVBUF+5,01H

RET

BUF2:

MOVBUF,09H

MOVBUF+1,00H

MOVBUF+2,00H

MOVBUF+3,0dH

MOVBUF+4,10H

MOVBUF+5,10H

RET

BUF3:

MOVBUF,0eH

MOVBUF+1,18H

MOVBUF+2,18H

MOVBUF+3,10H

MOVBUF+4,10H

MOVBUF+5,10H

RET

CODEENDS

ENDSTART

 

实验六 定时器/计数器实验

一、实验目的

⒈ 学会8253芯片和微机接口的原理和方法。

⒉. 掌握8253定时器/计数器的工作方式和编程原理。

二、实验内容

用8253的0通道工作在方式3,产生方波。

三、实验接线图

四、编程指南

⒈ 8253芯片介绍

8253是一种可编程定时/计数器,有三个十六位计数器,其计数频率范围为0-2MHz,用+5V单电源供电。

8253的功能用途:

⑴ 延时中断⑸ 实时时钟

⑵ 可编程频率发生器⑹ 数字单稳

⑶ 事件计数器⑺ 复杂的电机控制器

⑷ 二进制倍频器

8253的六种工作方式:

⑴ 方式0:

计数结束中断 ⑷ 方式3:

方波频率发生器

⑵ 方式l:

可编程频率发生 ⑸ 方式4:

软件触发的选通信号

 ⑶ 方式2:

频率发生器 ⑹ 方式5:

硬件触发的选通信号

五、实验程序框图

六、实验步骤

⒈ 按图6-5连好实验线路

⑴ 8253的GATE0接+5V。

⑵ 8253的CLK0插孔接分频器74LS393(左下方)的T2插孔,分频器的频率源为8.0MHZ,

(3)T→8.0MHZ。

⒉运行实验程序

在系统处于提示符“P.”状态下,按SCAL键,输入1290,按EXEC键。

⒊用示波器测量8253的OUT0输出插孔有方波产生。

七、实验程序

CODESEGMENT;H8253.ASM

ASSUMECS:

CODE

ORG1290H

START:

JMPTCONT

TCONTROEQU0043H

TCON0EQU0040H

TCONT:

MOVDX,TCONTRO

MOVAL,36H

OUTDX,AL

MOVDX,TCON0

MOVAL,00H

OUTDX,AL

MOVAL,04H

OUTDX,AL

MOVDX,TCONTRO

MOVAL,36H

OUTDX,AL

MOVDX,TCON0

MOVAL,00H

OUTDX,AL

MOVAL,02H

OUTDX,AL

JMP$

CODEENDS

ENDSTART

 

实验七 电子琴实验

一、实验目的

l、进一步掌握定时器编程和应用。

2、了解微机利用定时器产生音乐的基本方法。

二、实验内容

利用实验仪键盘,使数字键1、2、3、4、5、6、7作为电子琴键,按下数字键发出相应的音调,PB0作为定时器门控信号,OUT1发出音频信号,驱动喇叭。

三、实验接线图

图6-11

四、编程指南

1、根据音阶频率表,利用定时器可以产生相应频率的脉冲信号,不同频率的脉冲信号经驱动电路放大后,就会发生不同的音调。

2、对于每个按键的音调发音时间由软件延时控制,如键一直按下,就会连续发音各音阶标称频率值:

五、实验程序框图

六、实验步骤

⑴8253的CLK1接分频输出端T2。

⑵GATE1接PB0。

⑶OUT1接VIN。

⑷8M→T。

⑸JP→+5V(ON)。

⑹在P.态,按SCAL键,输入18F0,按EXEC键,显P.,按1、2……7键,依次发出1、2……7音调声。

CODESEGMENT;DZQ.ASM

ASSUMECS:

CODE,ds:

code

CONTROLequ43h

COUNT0equ40h

COUNT1equ41h

COUNT2equ42h

IOCONPTEQU0FF2BH

IOBPTEQU0FF29H

IOAPTEQU0FF28H

PAEQU0FF21H;字位口

PBEQU0FF22H;字形口

PCEQU0FF23H;键入口

ORG18F0H

START:

JMPSTART0

BUFDB?

?

?

?

?

?

KZDB?

ltimedb?

lkeydb?

ZPDW?

data1:

db0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h,88h,83h,0c6h,0a1h

db86h,8eh,0ffh,0ch,89h,0deh,0c7h,8ch,0f3h,0bfh,8FH,0F1H

data3:

dw2273,2024,1805,1704

dw1517,1353,1205,1

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

当前位置:首页 > 法律文书 > 调解书

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

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