微机原理与接口技术实验指导 智能建筑和材料做6个实验234568.docx
- 文档编号:8850686
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:76
- 大小:921.43KB
微机原理与接口技术实验指导 智能建筑和材料做6个实验234568.docx
《微机原理与接口技术实验指导 智能建筑和材料做6个实验234568.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术实验指导 智能建筑和材料做6个实验234568.docx(76页珍藏版)》请在冰点文库上搜索。
微机原理与接口技术实验指导智能建筑和材料做6个实验234568
《微机原理及接口技术》
实验指导书
杨霞周林英编
长安大学电子与控制工程学院
2009年9月
实验仪器简介
STARES598PCI实验仪提供了几乎所有最实用、新颖的接口实验,提供详尽的C、汇编例子程序及其使用说明,不但可以满足各大专院校进行单片机课程的开放式实验教学,也可以让参加电子竞赛的学生熟悉各种类型的接口芯片,做各种实时控制实验,轻松面对电子竞赛;也可以让刚参加工作的电子工程师迅速成为高手。
STARES598PC提供实验仪与微机同步演示功能,方便老师教学和演示。
它提供了一个库文件,如果学生上机时间有限,只需编写最主要的程序,其它调用库文件即可;它布局合理、清晰明了,模块化设计,可以无限升级,让您的选择永不落伍;兼容性强,可以轻松升级,减少设备投资;使用方便,易于维护。
实验仪功能特点
◇集编辑器、项目管理、启动编译、连接、错误定位、下载、调试于一体,多种实验仪、仿真器、多类型CPU仿真全部集成在一个环境下,操作方法完全一样。
◇完全VC++风格。
支持C、PL/M、宏汇编:
同时支持Keil公司C51、Franklin公司C51、IAR/Archimedes公司的C51、IntelC96、Tasking的C196、Borland公司的TASM、TurboC。
◇支持ASM(汇编)、C、PLM语言,多种语言多模块混合调试,文件长度无限制。
◇支持BIN、HEX、OMF、AUBROF等文件格式。
可以直接转载ABS、OMF文件。
◇支持所有数据类型观察和修改。
自动收集变量于变量窗(自动、局部、模块、全局)。
◇无须点击的感应式鼠标提示功能。
◇功能强大的项目管理功能,含有调试该项目有关的仿真器、所有相关文件、编译软件、编译连接控制项等所有的硬软件信息,下次打开该项目,无须设置,即可调试
◇支持USB、并口、串口通信。
◇提供模拟调试器。
◇符合编程语言语法的彩色文本显示,所有窗口的字体、大小、颜色可以随意设置。
提供几十个实验的汇编、C版本的源文件。
提供一个库文件,如果学生上机时间有限,只需编写最主要的程序,其它调用库文件即可。
实验仪可提供以下软件实验:
十进制数加法,十进制数减法,四字节二进制数转十进制数,数据传送,冒泡排序,二分查找法,散转等。
星研集成环境软件的安装和使用
1软件安装
1.1安装星研集成环境软件
一.新用户安装步骤
使用光盘安装:
1.将仿真器、实验仪所配CD插入CD-ROM驱动器。
2.在“我的电脑”或“资源管理器”中选择CD-ROM驱动器\WIN32\星研,然后运行SETUP.EXE文件即可进入安装界面。
3.中文界面,用户只需按程序提示一步一步进行安装即可。
使用Internet下载文件的用户
1.运行下载文件(XingYan.exe),软件自动执行安装程序。
2.安装程序为中文显示,用户只需按程序提示一步一步进行安装即可。
二.已安装过低版本星研集成环境软件的用户的安装步骤:
1.首先将原来的低版本软件进行卸载,具体步骤请参考“软件卸载”部分的内容。
2.以后按新用户的安装步骤进行安装。
在安装过程中,如果用户没有指定安装目录,安装完成后会在C:
盘建立一个C:
\XINGYAN目录(文件夹),结构如下:
XingYan可执行文件、DLL文件、寄存器文件
EXAMPLES例子程
1.2软件卸载
1.进入控制面板,运行“添加/删除程序”。
2.进入“添加/删除程序”窗口,在“安装/卸载”页面上的列表中选择“星研集成环境软件”,按“删除”按钮,之后按自动卸载程序的说明一步一步地操作即可。
1.3USB驱动程序
1、USB驱动程序的安装
通过USB(通用串口总线)接口将微机与仿真器、实验仪相连,打开仿真器、实验仪电源。
仿真器、实验仪与微机的第一次连接引起驱动程序的安装会变得很简单,您只需等待安装过程的结束或按驱动程序的安装向导执行完即可。
驱动程序的安装会出现如下界面:
实际的界面可能有些差别,请等待该过程的结束。
驱动程序的安装过程中,请勿执行其它应用程序。
2、如何解决连接不上的情况
如果仿真器、实验仪与微机连接不上是由于未按正确步骤造成的,可根据以下步骤解决:
Window98/WindowMe:
重新安装星研集成环境软件,关闭仿真器电源,稍等几秒钟,再打开电源,等待操作系统安装新的驱动程序结束后,运行星研软件即可。
Windows2000/WinXP:
在仿真器电源打开的情况下,使用控制面板中的“设备管理器”,可以看到一个未安装好的USB设备:
上图中的“通用串行总线控制器”下有一个打问号的USB设备,选中后按鼠标右键,选择菜单中的“卸载”项。
重新安装星研集成环境软件,关闭仿真器、实验仪电源,稍等几秒钟,再打开电源,等待操作系统安装新的驱动程序结束后,运行星研软件即可。
注意:
必须先安装星研集成环境软件;在WinXP中,驱动程序的安装会有选项,按缺省的值选择即可。
1.4软件启动
运行Windows,进入桌面窗口。
鼠标单击“开始”按钮,在“程序”栏中打开“星研集成环境软件”菜单栏,在其中选择“星研(SUPER、STAR系列仿真器)”,开始启动星研集成环境软件。
注意:
当您使用低配置机器时,从星研集成环境软件退出后必须等待足够的时间,让系统完全退出(硬盘停止工作)后,方可再次启动星研集成环境软件。
1.5编译器
星研集成环境软件支持的编译器
MCS51
MCS96、MCS196
80X86
KeilA51、C51
FranklinA51、C51
IntelASM51、PL/M51
ArchimedesA8051、C-51
IntelASM96、PLM96、C96TaskingASM196、C196
TC、TASM
编译器请用户自备。
设置工作环境
您的编译器正确安装后,请设置星研集成环境软件的编译器工作环境。
打开[主菜单»项目»设置工作环境]:
例如:
您使用的编译器是TASM、TC,安装在C:
\xingyan\TASM,C:
\xingyan\TC,
TASM宏汇编路径:
C:
\xingyan\TASM;
TurboC路径:
C:
\xingyan\TC;
2如何使用星研集成环境软件
星研集成软件为用户提供了许多实用和方便的观察、调试及分析的功能,下边几节,通过实例介绍如何使用星研集成环境软件。
使用户体验该软件功能的强大和方便。
2.1数据传送程序(ASM)
星研集成环境软件推荐您使用项目为单位来管理您的程序。
如果您做一个简单的实验,或只希望看一个中间结果,您可以不建立项目文件,系统需要的各种设置,来源于“缺省项目”。
本节不使用项目文件。
本例旨在通过建立一个具体的程序来介绍星研集成软件的使用方法以及它的强大的调试功能。
使用户很快上手,体验到此软件功能的强大和方便。
本实例是将数据段中3000H~30FFH单元的内容传送给实验仪B4区的61C256的2000H~20FFH中;B4区的61C256在I/O设备区,使用
、
读写;再将它传送回数据段的6000H~60FFH中,程序是用汇编语言来编写。
下面介绍相应的操作步骤:
首先运行星研集成软件。
启动画面如图:
1、设置缺省项目
执行[主菜单»辅助»缺省项目],出现一个对话框:
选择“STARES8688仿真模块”。
点击进入下一步:
“选择语言”
您可以根据自己的需要以及程序的类型作相应的选择,本实例选择Borland公司的TurboC(3.0)、TASM(5.0)(请确定在选择语言之前已经安装好相应的编译软件)。
然后再点击进入下一步:
“编译、连接控制项”
实验仪提供64Kmemory空间,memorymodel请选择tiny,缩写为mt;如果需要源程序级别调试,必须使用-v–y控制项,为了支持多文件编译、连接,必须使用-c控制项。
一般不必改变TurboC的编译控制项。
如果需要源程序级别调试,必须使用/zi/l控制项。
一般不必改变Tasm的编译控制项。
如果需要源程序级别调试,必须使用/m/l/v控制项。
一般不必改变TLINK的连接控制项。
然后再点击进入下一步:
“存贮器出借方式”
仿真模块EMU598提供64K仿真RAM,作程序段(CS)、数据段(DS)、附加段(ES)、堆栈段(SS)使用。
2、建立源文件
下面我们建立源文件,执行[主菜单»文件»新建],(或者点击图标
)打开窗口如下:
首先选择存放源文件的目录,输入文件名,注意:
一定要输入文件名后缀。
对源文件编译、连接、生成代码文件时,系统会根据不同的扩展名启动相应的编译软件。
比如:
*.asm文件,使用TASM来对它编译。
本实例文件名为move.asm。
窗口如下:
按“确定”即可。
然后出现文件编辑窗口:
输入源程序,本实例的源程序如下:
.MODEL
TINY
;memorymode:
tiny
.STACK
100
;堆栈
.CODE
;开始程序段
START:
MOV
AX,@DATA
MOV
DS,AX
MOV
ES,AX
NOP
MOV
CX,100H
MOV
SI,3000H
MOV
DX,2000H
START1:
MOV
AL,[SI]
OUT
DX,AL
INC
SI
INC
DX
LOOP
START1
MOV
DI,6000H
MOV
DX,2000H
MOV
CX,100H
START2:
IN
DX,AL
MOV
[DI],AL
INC
DI
INC
DX
LOOP
START2
SJMP
$
Move
ENDP
END
START
输入源程序,如下图:
这样一个源文件就建立好了。
3.编译、连接文件
首先选择一个源文件,然后就可以编译、连接文件了。
对文件编译,如果没有错误,再与库文件连接,生成代码文件(DOB、EXE文件)。
编译、连接文件的方法有如下二种:
(1)使用[主菜单»项目»编译、连接]或[主菜单»项目»重新编译、连接]”。
(2)点击图标
或
来“编译、连接”或“重新编译连接”。
“编译连接”与“重新编译、连接”区别:
“重新编译、连接”不管源文件是否修改、编译软件是否变化、编译控制项有无修改,对源文件编译,如果没有错误,再与库文件连接,生成代码文件(DOB、EXE文件)。
编译、连接过程中产生的信息显示在信息窗的“建立”视中。
编译没有错误的信息如下:
若有错误则出现如下信息框:
有错误或警告信息,用鼠标左键双击错误、警告信息或将光标移到错误或警告信息上,回车,系统会自动打开对应的出错文件,并定位于出错行上。
如图:
这时用户可以作相应的修改,直到编译、连接文件通过。
4.调试
在进入调试状态以前,请正确设置通信口:
执行[主菜单»辅助»通信],对话框如下:
仿真器、实验仪配套的通信线可以与微机USB口相连,即为USB通信线,请选择USB。
对于最下面一行的校验,通常您不必选中它,可以提高传送DOB、HEX、BIN文件时的速度。
在进入调试状态以前,您还必须确定仿真器、实验仪与微机的正确连接,如果使用仿真器,仿真头正确地连接在仿真器上,电源接通,开关打开。
在软件中选择对应的仿真器、实验仪型号,具体设置如下:
执行[主菜单»辅助»仿真器、实验仪],对话框如下:
根据你所使用的机型作相应选择。
如果编译、连接正确后,可以开始调试程序。
进入调试状态方法有:
a)执行[主菜单»运行»进入调试状态]
b)点击工具条的
c)执行[主菜单»运行»装载DOB、HEX、BIN文件]
进入后的窗口如下:
在整个图片中我们可以看到相对应的窗口信息。
在“工作区窗”的“CommonRegister”中我们可以了解通用寄存器的信息。
中间的窗口为源程序窗口,用户可在此设置断点,设置光标的运行处,编辑程序等。
寄存器窗我们可以看到一些常用的寄存器的数值。
存贮窗1和存贮窗2显示相应的程序段(CS)、数据段(DS)、IO设备区的数据,还有变量窗,自动收集变量显示其中。
反汇编窗显示对程序反汇编的信息代码、机器码、对应的源文件。
在信息窗的“装载”视中,显示装载的代码文件,装载的字节数,装载完毕后,显示启始地址,结束地址。
这种船坞化的窗口比通常的窗口显示的内容更多,移动非常方便。
用鼠标左键点住窗口左边或上方的标题条,移动鼠标,将窗口移到您认为合适的位置;将鼠标移到窗口的边上,鼠标的图标变成可变化窗口时的形状,用鼠标左键点住,移动鼠标,变化一个或一组窗口的大小。
在调试过程中,可以根据您的需要,在[主菜单»查看]中打开:
寄存器窗、存贮器窗1、2、3、观察窗、变量窗、反汇编窗。
您也可以通过[主菜单»辅助»设置»格式],设置每一种窗口使用的字体、大小、颜色。
移动窗口到您喜欢的位置、大小。
首先在“种类”中选择一个窗口,然后选择“字体”、“大小”,在“颜色”中选择某一类,在“前景”、“背景”中选择您喜欢的颜色。
对于高级语言,在您的程序前有一段库文件提供的初始化代码,
(当前可执行标志)不会出现在您的文件行上,如果您使用C语言,可将光标移到main函数上,按F4功能键,让CPU全速运行到main行上后停下;如果您使用PL/M语言,按F7功能键,让CPU“单步进入”,运行到您的任何一个可执行行后停下。
您可以使用以下命令调试您的程序:
设置或清除断点(功能键为F2)
在当前光标行上设置或清除一个断点
单步进入(功能键F7)
单步执行当前行或当前指令,可进入函数或子程序。
连续单步进入(功能键Ctrl+F7)
连续执行“单步进入”,用鼠标点击
或按任意键后,停止运行。
单步(功能键F8)
单步执行当前行或当前指令,将函数或子程序作为一条指令来执行。
如果当前行中含有函数、子程序或发生中断,CPU将执行完整个函数、子程序或中断,停止于当前行或当前指令的下一有代码的行上。
连续单步(功能键Ctrl+F8)
连续执行“单步”,用鼠标点击
或按任意键后,停止运行。
运行到光标行(功能键F4)
从当前地址开始全速运行用户程序,碰到光标行、断点或用鼠标点击
,停止运行。
全速断点(功能键F9)
从当前地址开始全速运行用户程序,碰到断点或用鼠标点击
,停止运行。
全速运行(功能键Ctrl+F10)
从当前地址开始全速运行用户程序,此时,按用户系统的复位键,CPU从头开始执行用户程序,用鼠标点击
,停止运行。
全速运行时,屏蔽了所有断点,即不会响应任何断点。
停止运行
终止微机与仿真器之间通信(功能键ESC)。
5.调试的方法及技巧
一般来说,用户的程序或多或少的会有一些逻辑错误,而仿真器、实验仪和星研集成软件则可帮助用户快速定位,这样可很快查出相应的错误。
在调试状态的窗口中我们可以看到很多的窗口,用户只要熟练地应用这些窗口来观察、分析数据就会很快的调试好程序,达到事半功倍的效果。
进入调试界面后,由于我们本次操作需要观察三个数据块:
数据段3000H~30FFH,数据段6000H~60FFH,I/O区2000H~20FFH,可以打开二到三个存贮器窗口,具体操作是:
[主菜单»查看]
然后根据你的需要打开不同的窗口。
调整后的调试界面为:
由于本次操作主要是观察存贮器窗口,所以我们拉大了这两个存贮器窗口的大小。
每个窗口设置了4个分页项:
,我们可以在不同的分页项设置不同的观察数据空间以及地址范围。
在
中可以选择CS:
Memory,DS:
Memory,I/O,根据需要可以做不同的选择。
在
中可以直接输入地址,然后按回车,就可以直接转到我们输入的地址的窗口上面观察数据。
由于我们在此程序中的写入数据的RAM空间分别为DS:
3000H~30FFH、DS:
6000H~60FFH、I/O区2000H~20FFH,故我们建立的分页项如下:
存贮0分页项:
存贮1分页项:
存贮2分页项:
我们这样设置界面的目的就是当用户要观察不同地址段的数据时,只要切换一下分页项就行了。
由于本次程序需要同时观察DS:
3000~30FFH、I/O:
2000~20FFH和I/O:
2000H~20FFH、DS:
6000H~60FFH,所以打开二个存贮器窗。
如图:
软件中总共存在3个存贮器窗。
可以同时观察三个不同的地址。
存贮器窗口支持数据的直接修改功能。
本软件的所有窗口中的数据都支持直接修改功能。
用户可以根据自己的需要在窗口中直接修改数据。
比如:
执行程序前,将DS:
3000H~300FH中的数据改为11、22、33、44、55、66、77、88、99、AA、BB、CC、DD、EE、FF、00,在相对应的地址中直接输入数据即可。
如图:
一般刚刚写好的程序,在进入调试状态后,执行“单步”或者“单步进入”,我们推荐您能记住这些操作的相对应的功能键,这样您就在调试程序的过程中很方便。
在刚才的调试程序中我们多次执行“单步(F8)”命令,在工作区窗口的CommonRegister视中查看通用的寄存器:
我们可以观察到在本程序中所使用的一些寄存器的变化,比如AX、CX、DX、SI的数值的变化,每一次循环,CX减一,DX、SI加一,AX寄存器的低字节AL暂存从DS:
[SI]取出的数值:
11、22、33、44、55、66……。
我们可以看到存贮器窗口中的相对应的RAM的数据的变化。
比如
其中右边为相应数据的ASCII码。
切换分页项我们可以观察到其它地址的数据。
把光标移动到MOVDI,6000H行上,点击图标
(功能键F4),全速运行到光标行,检查IO:
2000H~20FFH内容,是否与DS:
3000H~30FFH相同,如果完全一样,说明以上程序没有任何问题。
切换分页项,存贮器窗显示DS:
6000H开始的单元内容,将光标移到JMP$行的左边,鼠标变为
,点击鼠标,在该行上设置了一个断点,也可以用鼠标点击该行,将光标移到鼠标处,点击图标
(功能键为F2),设置断点,重复操作,清除断点。
点击图标
(功能键F9),CPU全速断点运行到光标处停下,检查DS:
6000H~60FFH内容,与I/O:
2000H~20FFH内容是否一样,相同表示程序没问题;如果不相同,将光标移到MOVDI,6000H行上(具体操作是:
用鼠标点击该行,然后再点击图标
),使用单步进入命令F7或连续单步进入命令Ctrl+F7,检查结果,判断程序出错原因。
星研集成软件为用户提供了许多实用和方便的观察、调试、分析的功能,其他的一些功能我们会在后续的实例中作更详细的介绍。
用户也可以依此类推,发掘出更多更好的为自己调试程序方便的功能。
目录
实验一清零程序4
实验二拆字程序6
实验三数据区移动8
实验四多分支程序设计10
实验五多字节减法运算13
实验六显示程序16
实验七8251串口实验25
实验八步进电机控制29
附录一汇编语言的存储模型36
附录二8279键值显示程序37
实验一清零程序
一、实验目的
掌握8088汇编语言程序设计和调试方法。
二、实验设备
STAR系列实验仪一套、PC机一台。
三、实验内容
把RAM区内4000H-40FFH单元的内容清零。
四、程序框图
五、源程序清单
.MODELTINY
.STACK100
.DATA
.CODE
ORG0100H
START:
MOVBX,4000H
MOVAX,0000H
MOVCX,80H
L1:
MOV[BX],AX
INCBX
INCBX
LOOPL1
JMP$
ENDSTART
六、实验步骤
手动修改RAM区内4000H-40FFH的内容,连续或单步方式运行程序,检查4000-40FFH内容执行程序前后的变化。
七、思考
1、把4000H-40FFH中的内容改成FF,如何修改程序。
2、把4000H-40FFH中的内容改成00~FF,如何修改程序。
实验二拆字程序
一、实验目的
掌握汇编语言设计和调试方法。
二、实验设备
STAR系列实验仪一套、PC机一台。
三、实验内容
把4000H单元的内容拆开,高位送4001H低位,低位送4002H低位,4001H、4002H的高位清零,一般本程序用于把数据送显示缓冲区时用。
四、程序框图
五、源程序
.MODELTINY
.STACK
.DATA
.CODE
START:
MOVBX,4000H
MOVAL,[BX]
MOVAH,AL
MOVCL,4
SHRAH,CL
INCBX
MOV[BX],AH
ANDAL,0FH
INCBX
MOV[BX],AL
JMP$
六、实验步骤
手动修改4000H的内容,用连续或单步方式运行程序,检查4000H-4002H中内容变化情况。
七、思考
1.如何用断点方式调试本程序。
2.把4000H、4001H单元低位的内容合成一字送4002H单元。
实验三数据区移动
一、实验目的
掌握RAM中的数据操作。
二、实验设备
STAR系列实验仪一套、PC机一台。
三、实验内容
把4100H源RAM区首址内的16字节数据传送到4200H目标RAM区。
四、设计思想
程序要求把内存中某一数据区(称为源数据块)传送到另一存储区(称为目的数据块)。
源数据块和目的数据块在存储器中可能有三种情况,如下图:
对于两个数据块分离的情况,如图(a),数据的传送从数据块的首址开始,或者从数据块的末址开始均可。
但对于有部分重叠的情况,则要加以分析,否则重叠部分会因“搬移”而遭破坏。
可以得出以下结论:
当源数据首址>目的块首址时,从数据块首址开始传送数据。
当源数据块首址<目的块首址时,从数据块末地址开始传送数据。
五、程序框图
六、源程序清单
.MODELTINY
.STACK
.DATA
.CODE
ORG0100H
START0:
MOVCX,0010H
MOVSI,4100H
MOVDI,4200H
CMPSI,DI
JAA42
ADDSI,CX
ADDDI,CX
A41:
DECSI
DECDI
MOVAL,[SI]
MOV[DI],AL
LOOPA41
JMP$
A42:
MOVAL,[SI]
MOV[DI],AL
INCSI
INCDI
LOOPA42
JMP$
ENDSTART0
七、实验步骤
调试运行3060程序,检查4100-410FH中内容是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机原理与接口技术实验指导 智能建筑和材料做6个实验234568 微机 原理 接口 技术 实验 指导 智能建筑 材料 234568