实验一 MCS-51仿真调试软件伟福软件模拟器使用练习
- 格式:doc
- 大小:25.50 KB
- 文档页数:2
51仿真器使用说明初学51单片机或是业余玩玩单片机开发,每次总要不断的调试程序,如没有仿真器又不喜欢用软件仿真,那只有每次把编译好的程序烧录到芯片上,然后在应用电路或实验板上观察程序运行的结果,对于一些小程序这样的做好也可以很快找到程序上的错误,但是程序稍大,变量也会变的很多,系统调试就极为复杂,此时就需要有一台仿真器。
一台好的仿真器非常贵,这里介绍这种自制的51芯片仿真器。
这个仿真器的仿真CPU是使用SST公司的SST89C516RD2。
1.制作带串口的的最小应用板无论是EasyIAP还是仿真器,都需要用串行口使SST89C58芯片和PC上位机进行通讯传输数据,因此先要设计RS232/TTL转换电路。
由于现在的电脑多取消了普通串口,因此我们此处设计了一个usb转TTL的串口接口电路,使用的接口芯片是PL2303。
2.通过编程器烧写仿真监控程序接下来需要把仿真CPU的HEX文件烧到SST89C58里面,再把它插到上面的最小系统电路中就可以了。
因为SST89C58有两个程序存储区,在这里要注意的是在烧写时就把仿真监控程序烧到SST89C58的第二个存储区也就是的RB1。
烧写时要求用支持SST89C58的编程器。
3. 仿真器原理简介SST的MCU SoftICE通过PC的一个COM口与KEIL uVision2 Debugger 通讯它可以实时地调试目标程序,因此提供使用SST单片机的工程师简单有效和容易使用在板上调试程序。
尽管小而紧凑,SoftICE却提供高级仿真器的大部分功能与KEIL uVision2 Debugger 一起使用。
SoftICE提供以下特性:源代码调试支持汇编语言和C51高级语言单步执行STEP和STEP OVER断点调试做多到10个固定和1个临时断点全速运行显示修改变量读/写数据存储器读/写代码存储器读/写SFR特殊功能寄存器读/写P0-P3端口下载INTEL HEX文件对8051程序存储区的反汇编在线汇编SST MCU产品特有的IAP功能In Application ProgrammingSoftICE 用到的MCU 硬件资源SST的SoftICE用到的MCU硬件资源如下(1) 一个UART串口RXD TXD 用定时器2做为波特率发生器(2) 8个字节的堆栈空间(3) SoftICE监控程序占用5Kbyte程序空间对SST89E/V516RDX BLOCK1的4Kbyte 从0000h 到0FFFhBLOCK0的1Kbyte 从FC00h 到FFFFh其它部分的存储区域可以由用户的应用程序使用前面三点作为仿真器的简单了解仿真器的与PC机的连接使用见第四点4.仿真器连接KEIL进行仿真操作1)连接前需要给pc机安装Pl2303驱动,驱动程序在安装文件夹内,解压后即可安装。
实验一实验箱仿真器使用及单片机I/O口编程一、实验目的1.熟悉伟福单片机实验箱仿真器的使用方法。
2. 掌握单片机的指令系统及上机实验过程。
3.掌握源程序的程序调试方法(包括断点设置、单步执行、连续执行等)及通过相应的窗口查看寄存器、存储器内容等方法。
4.掌握单片机的I/O口的特点及应用,如P1口进行数据输入、输出的编程方法。
5.学习延时子程序的编写与使用。
二、实验属性(验证性)三、实验仪器设备及器材1.伟福Lab8000单片机实验仪一台; 2.PC机一台; 3. 连接导线十根。
四、实验原理及要求1.阅读所购实验指导书前置实验箱的硬件及附录A中相关部分资料,了解伟福单片机实验仪的键盘和软件调试环境的使用方法。
2.阅读相关程序,编写实验要求对应程序,调试运行观察实验运行结果。
五、实验内容及步骤实验内容内容1 输入给定的或自己编写的简单程序,通过软仿真学习汇编程序调试方法;内容2 实验箱的P1.0—P1.3口连接四个发光二极管,编写程序,开机后控制四个发光管循环点亮,规律如下图所示:O X X XX O X XX X O XX X X O 循环运行,间隔一秒变化一次,显示出闪烁效果。
内容3 P1.0—P1.3口连接四个发光二极管,P1.4—P1.7接四个拨码开关,编写程序,使得四个开关分别控制四个发光管:对应的开关推上去时发光管亮,对应的开关推下来时发光管灭。
实验步骤(实验内容2、3的程序须在实验前自己设计编写完成)1、PC机--实验箱(仿真器-目标板(用户板))的连接;认真阅读仿真器实验说明,了解仿真器、仿真头上插座、插头的用途及形状,跳线含义及设置,完成“PC机--实验箱(仿真器-目标板(用户板))的连接”。
2、安实验要求先连接插接线,然后再打开实验箱电源;3、进入开发试验软件环境,进行仿真器设置;4、汇编语言源程序输入(或打开已有 . ASM源文件)、编辑、运行、调试。
六、实验报告。
第1篇实验名称:仿真软件操作实验实验目的:1. 熟悉仿真软件的基本操作和界面布局。
2. 掌握仿真软件的基本功能,如建模、仿真、分析等。
3. 学会使用仿真软件解决实际问题。
实验时间:2023年X月X日实验地点:计算机实验室实验器材:1. 仿真软件:XXX2. 计算机一台3. 实验指导书实验内容:一、仿真软件基本操作1. 打开软件,熟悉界面布局。
2. 学习软件菜单栏、工具栏、状态栏等各个部分的功能。
3. 掌握文件操作,如新建、打开、保存、关闭等。
4. 熟悉软件的基本参数设置。
二、建模操作1. 学习如何创建仿真模型,包括实体、连接器、传感器等。
2. 掌握模型的修改、删除、复制等操作。
3. 学会使用软件提供的建模工具,如拉伸、旋转、镜像等。
三、仿真操作1. 设置仿真参数,如时间、步长、迭代次数等。
2. 学习如何进行仿真,包括启动、暂停、继续、终止等操作。
3. 观察仿真结果,包括数据、曲线、图表等。
四、分析操作1. 学习如何对仿真结果进行分析,包括数据统计、曲线拟合、图表绘制等。
2. 掌握仿真软件提供的分析工具,如方差分析、回归分析等。
3. 将仿真结果与实际数据或理论进行对比,验证仿真模型的准确性。
实验步骤:1. 打开仿真软件,创建一个新项目。
2. 在建模界面,根据实验需求创建仿真模型。
3. 设置仿真参数,启动仿真。
4. 观察仿真结果,进行数据分析。
5. 将仿真结果与实际数据或理论进行对比,验证仿真模型的准确性。
6. 完成实验报告。
实验结果与分析:1. 通过本次实验,掌握了仿真软件的基本操作,包括建模、仿真、分析等。
2. 在建模过程中,学会了创建实体、连接器、传感器等,并能够进行模型的修改、删除、复制等操作。
3. 在仿真过程中,成功设置了仿真参数,启动了仿真,并观察到了仿真结果。
4. 在分析过程中,运用了仿真软件提供的分析工具,对仿真结果进行了数据分析,并与实际数据或理论进行了对比,验证了仿真模型的准确性。
实验一软件仿真器Simulator的使用方法一、实验目的1、了解DSP开发系统平台的构成。
2、了解Code Composer Studio 3.3 的操作环境和基本功能。
了解DSP软件开发过程。
二、实验要求按照实验步骤熟练掌握CCS的使用方法。
三、实验设备PC一台;操作系统为Windows XP;安装Code Composer Studio 3.3四、实验原理开发TMS320C5000应用系统一般需要以下几个调试工具来完成:(1)软件集成开发环境(Code Composer Studio3.3):主要完成系统的软件开发和调试。
它提供一整套的程序编制、维护、编译、调试环境,能将汇编语言和C语言程序编译连接生成COFF格式的可执行文件,并能将程序下载到目标DSP上运行调试。
(2)开发系统(ICETEK 5100 USB):实现硬件仿真调试时与硬件系统的通信,控制和读取硬件系统的状态和数据。
(3)评估模块(ICETEK VC5416-A):提供软件运行和调试的平台和用户系统开发的参照。
五、实验步骤1、启动Code Composer Studio 3.3双击桌面“CCS3.3(C5000)”,启动Code Composer Studio 3.3;2、创建工程(1)创建新的工程文件选择菜单Project的“new…”项;在Project Creation 对话框中,在project项输入volume;单击location项末尾的浏览按钮,改变目录到C:\ICETEK-VC5416-EDULAB\Lab01-UseCC,单击OK;单击完成;这时建立的是一个空的工程,展开主窗口左侧工程管理窗口中Projects下新建立的“volume.pjt”,其中各项均为空。
(2)在工程文件中添加程序文件选择菜单Project的add files to project…项;在add files to project对话框中选择文件目录为C:\ICETEK-VC5416-EDULAB\Lab01-UseCC,改变文件类型为 C Source files(*.c;*.ccc),选择volume.c;重复上述各步骤,添加volume.cmd和c:\ti\c5400\cgtools\lib\rts.lib到工程文件。
伟福V5仿真器在Keil uVision3/ uVision4调试环境下使用指南
第一步:准备
使用前,必须先确认已经安装Keil C51调试环境(这里仅以安装MCS51系列驱动为例,其余驱动需要预先安装相应软件),建议将keil安装在默认路径c:\keil目录下。
第二步:安装V5仿真器在Keil下的驱动
1.从/download/Software/DLL_Inst.rar下载“伟福V系列仿真器嵌入keil驱动”安装程序,执行DLL_INST.exe,打开如图界面。
2.在上述界面中,选择“安装keil C51 驱动程序”,然后确认Keil路径,如不正确浏览到keil的安装路径,点击“安装”,安装成功后,将出现以下界面:
第三步:调试模式设置
在Keil 中打开项目,选择Project\Options for Target 'XXX'或点击如下图所示的图标:
出现如下的项目设置对话框:
如上图所示,切换到“Debug”选项卡,将默认的Use Simulator(使用软件模拟器)切换到Use...“XXX”,选择“伟福V系列仿真器”(若为uVision4版本显示位WAVE V series MCS51 Driver),然后将以下的两项都选中:Load Application at Startup,Run to main,
然后点击Settings,进入仿真器设置对话框,根据实际使用的仿真器,选择相应的仿真器和仿真头型号,如下图所示:
然后进入“仿真头设置”,如下图所示:
设置好以后两次确定,即完成了仿真器的设置,回到keil的Debug选项卡,再次确定完成项目设置。
2.3.1实验一伟福Sp51型仿真器及数据排列练习一、实验类型验证性实验。
二、实验目的1、掌握伟福Sp51型仿真器与主机的通信、仿真的连接方法;2、熟悉伟福仿真器源程序编辑及基本命令;3、熟悉89C51指令系统,掌握有关数据排列的基本方法。
三、实验内容及步骤1、编辑汇编和调试一个将50H~59H单元中的数据从小到大排列的数据排列程序;2、编辑汇编和调试找最大数程序;找最大数程序要求:将实验的数据表存入60H单元开始的内部RAM区,该表的长度存入70H单元,找出最大数并存在71H单元中,最大数的地址存在72H 中。
四、参考程序1、从小到大排列数据程序1 ORG 0000H2 AJMP MAIN3 ORG 0100H4 MAIN: MOV SP,#60H5 MOV R0,#50H6 MOV @R0,#6FH7 INC R08 MOV @R0,#6EH9 INC R010 MOV @R0,#6AH11 INC R012 MOV @R0,#6CH13 INC R014 MOV @R0,#6DH15 INC R016 MOV @R0,#6BH17 INC R018 MOV @R0,#67H19 INC R020 MOV @R0,#69H21 INC R022 MOV @R0,#68H23 INC R024 MOV @R0,#64H25 ACALL QUE26 HERE: AJMP HERE27 QUE: CLR 00H28 MOV R7,#09H29 MOV R0,#50H 30 MOV A,@R031 L2: INC R032 MOV R2,A33 SUBB A,@R034 MOV A,R235 JC L136 SETB 00H37 XCH A,@R038 DEC R039 XCH A,@R040 INC R041 L1: MOV A,@R042 DJNZ R7,L243 JB 00H,QUE44 RET2、找最大数程序1 ORG 0000H2 AJMP MAIN3 ORG 0200H4 MAIN: MOV SP,#30H5 MOV R0,#60H6 MOV R1,70H7 CLR A8 MOV R2,A9 LOOP: MOV A,@R010 CLR C11 SUBB A,R212 JC NEXT13 MOV A,@R014 MOV R2,A15 MOV 72H,R016 NEXT: INC R017 DJNZ R1,LOOP18 MOV 71H,R219 HERE: SJMP HERE20 END五、实验预习及思考题1、注意直接地址与立即数的区别。
MCS-51单片机软件实验通过这些实验程序的调试,使学生熟悉MCS-51 的指令系统,掌握软件仿真方法;了解单片机软件设计过程;掌握汇编语言设计方法,以及怎样用软件仿真提供的调试手段来排除软件错误。
实验一数据传送实验1.实验目的掌握8031 内部RAM 和外部RAM 之间的数据传送方法;掌握这两部分RAM 存贮器的特点与应用,掌握各种数据传送方法。
2.实验内容编写并调试一个数据传送程序,①将40~4FH 数据送到数据存贮器7E00~7E0FH 中,②将数据存贮器7E00~7E0FH 中的数据送到8031 内部RAM 50~5FH 中,③将以(R2,R3)为源RAM 区首地址内的(R6,R7)个字节数据,传送到以(R4,R5)为末地址的RAM 区。
3.实验程序参考图4.调试方法⑴打开仿真软件中内部数据空间和外部数据空间,在40~4Fh 数据单元中分别送数,例如:1,2,3,4,…等16 个数据。
⑵单步运行(断点设在BP2,程序运行至断点),检查外部RAM(7E00~7F0FH)数据是16 个数据传送到40~4F 单元(40)~(4FH)传送到7E00~7E0FH否与40~4FH数据一一对应。
⑶如果程序运行不能进入某一断点,则应单步、断点分段检查程序,排除错误直至正确为止。
5.思考试编写将外部的数据存贮区6030~607FH 的内容写入外部RAM 3030~307H 中。
实验二清零程序1.实验目的掌握汇编语言设计和调试方法,掌握清零程序编写方法。
2.实验内容将7000H~70FFH 的内容清零;将30H~7FH 的内容清零;将(R2,R3)源RAM 区首址内的(R6,R7)个单元中的内容清零。
3.实验程序框图4.调试方法单步运行程序到BP1,观察R0,7000H 两单元内容是否为0 ,单步运行到BP2,看DPTR,R0 是否加1,再单步运行,看是否跳转到BP1,若是,说明第一循环没错,然后全速运行程序,观察7000H-70FF 的内容应全为零,再用单元置数方法,将7000H-70FF 的内容改为不全为0,再运行一次,若全变为零,说明程序全对,同样,可调试后面两个程序。
实验一 MCS-51仿真调试软件伟福软件模拟器使用练习
一、实验目的
1.学习51系列仿真调试软件伟福6000软件模拟器的使用方法。
2.练习程序的录入、修改、编译方法。
3.练习程序的调试方法。
4.对程序进行模拟仿真运行。
二、实验设备
1.PC机(WINDOWS操作系统)。
2.HF-MC01单片机实验实训系统。
3. 伟福6000软件模拟器。
三、实验内容及步骤
1、运行WAVE
双击“WAVE”图标,进入仿真调试环境。
最上行为提示行:伟福6000 软件模拟器(8***) [C:\WAVE\SAMPLES\***.PRJ]- [***- C:\WAVE\SAMPLES\***.ASM],其中,8***为要仿真的芯片,后面的.PRJ文件是你要调试的项目,最后一项是录入的源程序。
(如果有项目文件,请点击菜单文件-关闭项目)
2、仿真器设置
使用语言设置:点击“仿真器——仿真器设置”
仿真器设置:点击“仿真器——仿真器设置——语言”,选择“伟福汇编器”“混合十、十六进制”;点击仿真器设置下的“仿真器”,选择 S51/S、 POD8X5X、8751(或AT89C51);在“使用伟福软件模拟器”选项上打“√”,点击“好”。
完成软件模拟仿真器环境设置。
3、程序录入
请完成下列程序的录入(SY1.ASM)。
(注意:录入源程序必须使用西文输入法)
录入源程序前先关闭项目,具体操作步骤是:点击“文件”——点击“关闭项目”;再按下述步骤进行录入操作。
录入步骤为:点击“文件”——点击“新建文件”,则显示器打开源程序录入窗口,文件名默认为NONAME1;将SY1.ASM录入并点击“文件”———点击“保存文件”。
特别注意:保存文件时必须加上扩展名“.ASM”,并记录保存的文件夹路径。
ORG 0000H
L1: MOV A,#02H
MOV P1,A
INC A
MOV R0,A
INC A
MOV R7,A
MOV 21H,A
MOV 25H,21H
SJMP L1
END
4、对录入的源程序SY1.ASM进行编译
编译步骤为:点击“项目———全部编译”
若编译完成,在左下角的“信息窗口”将显示生成两个文件SY1.HEX和SY1.BIN。
若源程序在格式上有错误,则在“信息窗口”中出现错误提示,请检查源程序,修改后
再进行编译,直至编译成功。
窗口最下一行显示:执行时间和PC、DPTR、A、PSW、SP的当前值。
5、窗口介绍与练习
(1)、左边窗口:为“项目窗口”和“观察窗口”:
Project: 项目窗口;
REG: 工作寄存器和部分特殊功能寄存器窗口。
SFR: 51系列单片机特殊功能寄存器窗口。
另:此窗口最右边显示的是某个特殊功能寄存器(点击选中左边的某个寄存器)的位及对应的二进制的值。
(2)、左下角为“信息窗口”。
(3)、右下角为CODE(程序存储器)窗口和XDATA(片外数据存储器)窗口。
(4)、点击主菜单的“窗口——CPU窗口”,在右部窗口显示PC值、机器码和源程序。
(5)、点击主菜单的“窗口——数据窗口——DATA”:显示片内RAM窗口。
6、调试程序
点击“执行——复位”:使程序指针指向第一条指令(CPU窗口指向0000H)
点击“执行——单步”:使程序单步执行。
7、观察R0、R7、21H、25H单元中的内容:
点击窗口——数据窗口- DATA: 可以观看片内RAM 00H 到 FFH 中的内容,
点击窗口——数据窗口- CODE: 可以观看程序存储器 0000H —— FFFFH 中的机器码。
点击窗口——数据窗口—— XDATA: 可以观看片外RAM 数据 0000H— FFFFH
点击窗口——数据窗口—— DATA: 可以观看RAM 数据00H— FFH
8、反复练习上述诸项并将分析结果和实际运行结果添在下面括弧内。
(前一个括弧添分析结果,逗号后的为执行结果)。
ORG 0000H
L1: MOV A,#02H ; PC=( ) A=( ) , A=( )
MOV P1,A ; PC=( ) P1=( ), P1=( )
INC A ; PC=( ) A=( ) , A=( )
MOV R0,A ; PC=( ) R0=( ), R0=( )
INC A ; PC=( ) A=( ) , A=( )
MOV R7,A ; PC=( ) R7=( ) , R7=( )
MOV 21H,A ; PC=( ) (21H)=( ), (21H)=( )
MOV 25H,21H ; PC=( ) (25H)=( ), (25H)=( )
SJMP L1
END
四、进一步练习
请参考附录自行练习,直至熟练掌握软件的使用方法。