xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx

上传人:b****2 文档编号:4421499 上传时间:2023-05-03 格式:DOCX 页数:28 大小:343.04KB
下载 相关 举报
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第1页
第1页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第2页
第2页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第3页
第3页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第4页
第4页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第5页
第5页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第6页
第6页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第7页
第7页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第8页
第8页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第9页
第9页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第10页
第10页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第11页
第11页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第12页
第12页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第13页
第13页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第14页
第14页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第15页
第15页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第16页
第16页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第17页
第17页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第18页
第18页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第19页
第19页 / 共28页
xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx

《xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx(28页珍藏版)》请在冰点文库上搜索。

xs微机原理与接口技术实验指导书测控专业Word格式文档下载.docx

将会显示DEBUG可用的命令

3.用DEBUG的R命令查看、改变CPU寄存器的内容;

1)用R命令查看各寄存器的内容并纪录;

-R

2)用R命令修改寄存器BX、SI、BP的值。

-RBX;

查看BX

BX0000;

已经是0

00ff;

修改寄存器BX为00ff

-R;

注意BX的内容已经改为00ff

4.用DEBUG的E命令改写内存中的内容;

用E命令将内存1000:

0—1000:

9单元中的内容改写为0、1、2、3、4、5、6、7、8、9,并用D命令进行验证。

-E1000:

0000;

修改内存1000:

0000

1000:

0000D0.0009.01;

用空格在将下一单元内容改为01….

-D1000:

0000;

显示内存1000:

0000的内容

5.用DEBUG的U命令将内存中的机器指令翻译成汇编指令;

用E命令从1000:

0单元开始写入如下机器码,然后用U命令将内存中的机器指令翻译成汇编指令,并分析实验结果各部分的含义。

机器码对应的汇编指令

b80100MOVAX,0001

b90200MOVCX,0002

01c8ADDAX,CX

0;

用E命令从1000:

0单元写入机器码

0000D0.b809.01

0;

显示1000:

-U1000:

6.用DEBUG的T命令执行机器指令;

用T命令单步执行上题程序段的每条指令并纪录AX,CX寄存器的执行结果。

-T=1000:

注意cs,ip寄存器内容

-T

7.用DEBUG的A命令以汇编指令的格式在内存中写入一条机器指令。

用A命令将下面的程序段写入内存,用U命令翻译成机器指令,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。

MOVAX,4E20H

ADDAX,1416H

MOVBX,2000H

ADDAX,BX

MOVBX,AX

MOVAX,001AH

MOVBX,0026H

ADDAL,BL

ADDAH,BL

ADDBH,AL

MOVAH,0

ADDAL,9CH

-a;

在所提示的逻辑地址下输入上面程序段,注意立即数不用加H,不输回车将结束程序的输入,

-u段地址:

EA;

-t=段地址:

EA;

(二).简单程序设计——数据传送实验

HQFC集成操作软件使用

HQFC软件是集编辑(Edit.exe)、编译(Tasm.exe)、连接(Link.exe)和调试(TD.exe)等多个功能于一体,为用户提供了一个学习微机原理的实验平台。

1.运行程序/“HQFC集成开发环境.EXE”软件

2、选择接口类型

选择USB接口,进入USB微机接口开发环境。

3、程序的编辑

1.新建一个源程序

在当前运行环境下,选择菜单栏中的“文件”菜单,菜单下拉后选择“新建”,或是在工具栏中单击“新建”快捷按钮,会出现源程序编辑窗口,建议用“另存为”为文件取名保存后,就新建一个“.asm”文件。

2.编辑源程序

本软件提供了基本的编辑功能,并实现了实时的语法高亮,在编辑菜单栏可实现剪切、复制、粘贴、删除、查找、替换等操作。

输入数据传送实验的程序,参见程序清单。

3.保存源程序

当前运行环境下,选择菜单栏中的“文件”菜单,菜单下拉后选择“保存”,如果是无标题文档,用户需在提示下输入文档的名称及选择保存的路径,单击确定后保存;

否则程序自动保存当前文档显示区域中显示的文档。

或者选择菜单栏中的“文件”菜单,菜单下拉后选择“另存为”,并在提示下输入文档的名称及选择保存的路径,单击确定后保存。

建议存盘为TEST.ASM

4、编译源程序

编译(编译)

在当前运行环境下,选择菜单栏中的“ASM文件编译”菜单,选择编译选项则程序对当前ASM源文件进行编译,编译调试窗口中输出汇编的结果,若程序汇编有错,则详细报告错误信息。

双击输出错误,集成开发环境会自动将错误所在行代码显示。

构建(汇编+链接)

在当前运行环境下,选择菜单栏中的“ASM文件编译”菜单,选择汇编+链接选项则程序对当前ASM源文件进行汇编与链接,编译调试窗口中输出汇编与链接的结果,若程序汇编或链接有错,则详细报告错误信息。

重构运行(汇编+链接+执行)

在当前运行环境下,选择菜单栏中的“ASM文件编译”菜单,选择汇编+链接+执行选项则程序对当前ASM源文件执行,程序自动运行。

5、程序的调试和运行

1).ASM程序的调试

寄存器窗口

在当前运行环境下,寄存器窗口中显示主要的寄存器名称及其在当前程序中的对应值,若值为红色,即表示当前寄存器的值。

调试时,单步执行,寄存器会随每次单步运行改变其输出值,同样以红色显示。

开始调试

编译和链接成功之后,在“ASM文件调试”菜单中,选择“开始调试”,然也可以在工具栏中选择“开始调试”。

即可开始进行程序的调试。

设置/清除断点

在ASM的调试状态下,对程序代码所在某一行前最左边的灰色列条单击鼠标,即对此行前设置了断点,如果清除断点,只需再在此行前的灰色列条上的断点单击鼠标,此断点标记将被清除。

箭头所指的行为当前单步执行到的所在行。

设置/清除断点如图所示:

连续运行

在ASM的调试状态下,选择“ASM文件调试”菜单栏中的“连续运行”菜单或F5,则程序连续运行,直至碰到断点或程序运行结束。

单步

在ASM的调试状态下,选择“ASM文件调试”菜单栏中的“单步执行”菜单或F11,则程序往后运行一条语句。

退出调试

在ASM的调试状态下,选择“ASM文件调试”菜单栏中的“结束调试”菜单或F8,程序则退出ASM的调试状态。

五、参考程序清单

数据传送实验,采用相对寻址方式

DDATA 

SEGMENT;

定义源数据段

MSR 

 

DB"

HELLO,WORLD!

$"

LENEQU$-MSR

ENDS

EXDASEGMENT;

定义附加数据段

MSD 

DBLENDUP(?

EXDAENDS

MYSTACK 

SEGMENTSTACK;

定义堆栈段

DW20DUP(?

MYSTACK 

CODESEGMENT;

定义代码段

ASSUMECS:

CODE,DS:

DDATA,ES:

EXDA

START:

MOVAX,DDATA

MOV 

DS,AX 

装载数据段寄存器

AX,EXDA

ES,AX 

装载附加数据段寄存器

SI,OFFSETMSR

MOVDI,OFFSETMSD

CX,LEN

MOVBX,0

NEXT:

MOVAL,MSR[BX] 

开始传输数据

MOVES:

MSD[BX],AL

INCBX

LOOP 

NEXT

PUSH 

ES

POP 

DS 

将附加段寄存器指向的段值赋给数据段寄存器

DX,OFFSETMSD

AH,9

INT21H;

显示字符串

AH,4CH

返回DOS状态

CODE 

ENDS

ENDSTART

六、思考题

1.修改参考程序,采用字符串传送指令完成。

实验二汇编程序设计和DOS功能调用

一.实验目的

1.掌握子程序设计及调用方法

2.进一步掌握汇编语言程序设计和调试方法。

二.实验设备

三. 

实验内容

1、现有多个有符号数23、-120、36、780、600、-2000,请编制程序,找出最大值并放至指定的MAX存储单元中,并要求把数据23、-120、36、780、600、-2000显示出来。

2、假设某字符串为WERFGHUJKI,以回车符(CRodh)结束,请编制程序,从头搜索字符串,统计字符串字符的个数,并在显示器上显示字符串长度(以16进制显示)(选作)。

四.实验步骤

1.运行HQFC软件,选择新建ASM项编写实验程序

2.使用编译、构建对实验程序进行汇编、连接,生成执行文件。

3.使用重构运行运行程序,观察运行结果。

4.使用开始调试调试程序。

观察构成分支条件的各标志的变化情况及相关寄存器内容。

5.更改数据区中的数据,考察程序的正确性。

(一)最大值程序

DATASEGMENT

BUFFERDW200,-12,45,500,-1000

COUNTEQU($-BUFFER)/2

MAXDW?

用于存放最大值

MES1DB‘200,-12,45,78,500,-1000’,0AH,0DH,’$’

DATAENDS

STACKSEGMENT

DB64DUP(?

TOPEQU$-STACK;

计算出堆栈指针数值

STACKENDS

CODESEGMENT

ASSUMECS:

DATA,SS:

STACK

BEGIN:

MOVAX,SEGDATA

MOVDS,AX

MOVAX,SEGSTACK

MOVSS,AX

MOVSP,TOP

MOVCX,COUNT

LEABX,BUFFER

MOVAX,[BX]

INCBX

INCBX

DECCX

AGAIN:

CMPAX,[BX]

JGENEXT

MOVAX,[BX]

INCBX

LOOPAGAIN

MOVMAX,AX

MOVAH,9

LEADX,MES1

INT21H

QQ1:

MOVAH,1

INT16H

JZQQ1

MOVAH,4C

CODEENDS

ENDBEGIN

(二)字符串程序

;

namelength_of_stringanddisplay

STRINGDB‘abcduvwxyz’,0DH

L1DB?

CREQU0DH

DATAENDS

STACKSEGMENTPARASTACK‘STACK’

S1DB100DUP(?

CODESEGMENT

DATA,ES:

MOVEAX,DATA

MOVES,AX

LEADI,STRING;

设串的地址指针

MOVDL,0;

置串长度的初值为0

MOVAL,CR;

串标志送入AL

CLD;

清DF=0,使地址自动增量

SCASB;

搜索串

JEDONE;

找到结束标志,停止

INCDL;

串长度加1

JMPAGAIN

DONE:

LEABX,L1

MOV[BX],DL;

存串长度

MOVDH,DL;

串长暂存

MOVCL,4

SHRDL,CL;

取串长高4位

MOVAL,DL

CALLCHANGE;

将高4位转换成ASCII码放入AL

MOVDL,AL

MOVAH,2

INT21H;

显示高4位

MOVAL,DH;

取暂存串长

ANDAL,0FH;

取串长低4位

CALLCHANGE

MOVDL,AL

显示串长低位

MOVDL,’H’

显示H

MOVAH,4CH

INT21H

CHANGEPROC;

过程或子程序

CMPAL,10

JLADD30;

小于转

ADDAL,37H

JMPP1

ADD30:

ADDAL,30H

P1:

RET

CHANGEENDP

ENDBEGIN

实验三中断、定时器应用实验

一、实验目的

1.掌握PC机中断处理处理系统的基本原理

2.掌握PC机编写中断服务程序的方法

3.掌握8254的工作方式及应用编程方法

4.掌握8254的典型应用方法

二、实验原理

PC机用户可使用的硬件中断只有可屏蔽中断,由8259中断控制器管理。

中断控制器用于接收外部的中断请求信号,经过优先级判别等处理后向CPU发出可屏蔽中断请求。

IBMPC、PC/XT机内有一片8259中断控制器对外可以提供8个中断源:

中断源中断类型号中断功能

IRQ008H时钟

IRQ109H键盘

IRQ20AH保留

IRQ3OBH串行口2

IRQ40CH串行口1

IRQ50DH硬盘

IRQ60EH软盘

IRQ70FH并行打印机

8个中断源的中断请求信号线IRQ0~IRQ7在主机的62线ISA总线插座中可以引出,系统已设定中断请求信号为“边沿触发”,普通结束方式。

对于PC/AT及286以上微机内又扩展了一片8259中断控制,IRQ2用于两片8259之间级连,对外可以提供16个中断源:

中断源中断类型号中断功能

IRQ8070H实时时钟

IRQ9071H用户中断

IRQ10072H保留

IRQ11O73H保留

IRQ12074H保留

IRQ13075H协处理器

IRQ14076H硬盘

IRQ15077H保留

USB实验板上,固定的接到了3号中断IRQ3上,即进行中断实验时,所用中断类型号为0BH。

1.在实验箱上设计并连接单脉冲KK1+到8254的CLK0端,8254的OUT0连接IRQ3,定义8254的计数器0为方式0,计数值为5,每当KK1+按动5次后产生中断请求,实现在屏幕上显示字符“5”。

要求:

主机按任意键停止显示返回DOS。

(必做)

2.直接用手动产单脉冲作为中断请求信号(只需连接一根导线)。

要求每按一次开关产生一次中断,在屏幕上显示一次“TPCAInterrupt!

”,中断10次后程序退出。

3.将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

4.将计数器0、计数器1分别设置为方式3,计数初值设为1000,用逻辑笔观察OUT1输出电平的变化(频率1HZ)。

1.设计实验线路图并连接实验线路。

接线:

1)、CS/8254接Y0/IO地址

GATE0/8254接+5V

CLK0/8254接单脉冲

OUT0/8254接非门接IRQ/系统总线

D0~D7/系统总线接D0~D7/8254

IOW/系统总线接WR/8254

IOR/系统总线接RD/8254

A1A0/系统总线接A1A0/8254

2)、IRQ/系统总线接单脉冲

3)、CS/8254接Y0/IO地址

A1A0/系统总线接A1A0/8255

4)、CS/8254接Y0/IO地址

CLK0/8254接1M时钟

OUT0/8254接CLK1/8254

GATE1/8254接+5V

2.根据实验内容要求编写相应实验程序

3.编译、连接实验程序,对错误进行调试

4.运行程序,观察实验结果是否正确。

五、硬件参考电路

实验内容1电路图

实验内容2电路图

实验内容3电路图

实验内容4电路图

实验四数码管显示、键盘扫描识别实验

1.掌握8255A的接口方法。

2.掌握8255A的工作方式和编程原理。

3.掌握一组七段LED数据管动态显示的编程方法

4.掌握非编码键盘的使用及编程识别按键的方法

5.掌握利用8255完成一组七段LED数据管的显示原理及接口方法

6.掌握利用8255完成行列式键盘的工作原理及接口方法

1.1.在实验箱上设计并连接8255,将8255的PB口和PA口分别与数码管显示电路的段选端和位选段相接,使其显示3000H、3001H、3002H和3003H单元中的数据。

(必做)

2.在实验箱上设计并连接,使用8255扫描4*4键盘,并将识别出的键值依次显示在4位数码管上。

三、实验步骤

1.设计实验线路图并连接实验线路。

1)、CS/8255接Y1/IO地址

D0~D7/系统总线接D0~D7/8255

IOW/系统总线接WR/8255

IOR/系统总线接RD/8255

PB7~PB0/8255接DP~A/数码管

PA3~A0/8255接S3~S0/数码管

2)、原接线不变

PC0~PC3/8255接列3~列0/键盘

PC7~PC4/8255接行3~行0/键盘

2.根据实验内容要求编写相应实验程序

4.运行程序,观察实验结果是否正确。

四、硬件参考电路

实验五数/模、模/数转换实验

1.通过实验加深对A/D和D/A转换器使用及中断的认识,初步掌握编写主程序及中断服务程序的区别

2.设计并调试由0832构成的波形发生器,由0809构成的数据采集电路

3.了解数/模、模/数转换的基本原理,掌握ADC0809和DAC0832芯片的使用方法。

1.在实验箱上设计并连接ADC0809芯片的接线,按延时方式对单通道模拟量进行A/D转换。

A/D转换结果送入PC机后,再由PC机送至DAC0832进行D/A转换,结果送至示波器,与原信号进行对比观察。

模拟信号源:

由电位器中心抽头可以得到一个可调节的直流电压0~5V。

电位器一端接地,另一端接+5V。

1)、CS/AD0809接290H~297H/IO地址

A、B、C/AD0809接A0~A3/系统总线

IN0/AD0809接0~5V/直流信号

CLK/AD0809接1MHZ/系统总线

D0~D7/系统总线接D0~D7/AD0809

IOW/系统总线接WR/AD0809

IOR/系统总线接RD/AD0809

CS/AD0832接298H~29FH/IO地址

Ua/AD0832接L0/LED灯

D0~D7/系统总线接D0~D7/AD0832

IOW/系统总线接WR1、WR2/AD0832

四、实验参考电路

调试程序DUBUG

DEBUG.COM是专为汇编语言设计的一种调试工具,是汇编语言程序设计者必须掌握的。

它具有显示、修改、动态跟踪等功能,使用它可以对.COM、.ExE文件进行动态跟踪。

DUBUG可以显示和修改内存与寄存器内容,以便在调试中检查程序、查找与改正错误;

它还支持小汇编,直接对小段程序进行汇编;

也可对磁盘进行读写操作。

在接口应用中,可直接用输入输出指令对硬件端口进行读/写操作。

DUBUG.COM基本上是面向.COM文件的。

DEBUG可以装入和运行.EXE文件,并可以对它进行调试和修改。

但是调试好的.EXE文件却不能用DEBUG的命令写回磁盘,因为DEBUG不保存.EXE文件的原头部信息块,也不能再重新产生重定位信息。

当被调试的文件是.EXE文件时,需要注意一系列问题,因此,一般的做法是用DEBIJG发现错误,再用编辑程序修改源程序,然后再重新汇编和连接,得到正确的可执行程序。

DEBUG.COM程序被装入内存后,系统的控制权由DOS转交给它,此时屏幕上会出现提示符“—”。

表1列出了DEBUG命令一览表。

表1DEBUG命令一览表

名字

格式

简要说明

显示

D地址

D范围

D

显示从指定地址开始的80字节的内存内容

显示指定范围的内存内容

从上次D命令结束位置接着显示

修改

E地址表

E地址

用表中内容代

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2