KEIL51仿真器监控自制方法
- 格式:doc
- 大小:180.00 KB
- 文档页数:3
Keil Monitor-51仿真板的制作与使用摘要: 介绍支持Keil C51的Monitor-51仿真板硬件电路及监控程序的生成方法,对使用中常出现的问题给出了解决方法。
关键词: 单片机 C语言仿真板监控程序MCS-51单片机在我国应用最为广泛、经久不衰。
以往单片机应用程序主要用汇编语言编写。
由于汇编语言程序的可读性和可移植性都较差,采用汇编语言编写单片机应用程序不但周期长,而且调试和排错也比较困难。
为了提高编制单片机应用程序的效率,改善程序的可读性和可移植性,采用高级语言无疑是一种最好的选择。
C语言是一种通用的计算机程序设计语言,既具有一般高级语言的特点,又能直接对计算机的硬件进行操作,表达和运算能力也较强,许多以往只能采用汇编语言来解决的问题现在都可以改用C语言解决。
德国Keil Software公司多年来致力于单片机C语言编译器的研究。
该公司开发的Keil C51是一种专为8051单片机设计的高效率C语言编译器,符合ANSI标准,生成的程序代码运行速度极高,所需要的存储器空间极小,完全可以与汇编语言相媲美。
近年来,Keil C51不断升级,目前最高版本为V6.20。
高版本的Keil C51编译器,尤其是Keil μVision2 (基于Windows的C51集成编译环境)以其性能优越、使用方便,受到了众多单片机爱好者的欢迎。
Keil C51以软件包的形式向用户提供主要包括C51交叉编译器、A51宏汇编器、BL连接定位器等一系列工具和μVision2、软件仿真器dScope51等开发平台。
C51具有丰富的函数库,包含100多种功能函数,为用户编程提供了极大的方便。
C51程序可以实现与汇编语言的接口,两者相互之间的调用十分方便。
但目前支持高版本Keil C51编程的仿真器不多,且价格较高。
为此Keil C51提供了Monitor-51仿真板的制作方法,但无完整的硬件电路图,软件设置也比较繁琐。
自制51芯片仿真器完全手册初学51单片机或是业余玩玩单片机开发,每次总要不断的调试程序,如没有仿真器又不喜欢用软件仿真,那只有每次把编译好的程序烧录到芯片上,然后在应用电路或实验板上观察程序运行的结果,对于一些小程序这样的做好也可以很快找到程序上的错误,但是程序大了,变量也会变的很多,而直接烧片就很难看到这些变量的值了,在修改程序时还要不断的烧片实验,确实很麻烦,这时如果有一台仿真器就会变得很好方便了。
但一台好的仿真器对于业余爱好者来说确实有一些贵,在这里介绍这种易于自制的51芯片仿真器虽然有一些地方不够完善,但还是非常适于初学51单片机的朋友和经济能力不是很好的业余爱好者。
这个仿真器的仿真CPU是使用SST公司的SST89C58或SST89C54(其它相容的芯片也可,这里主要讲述SST89C58),对于没有可以烧写SST89C58芯片的朋友应该选用CA版本的SST89C58芯片,这个CA型号的芯片出厂时已内置了BSL1.1E的固件程序。
那什么是BSL呢?BSL就是英文BOOT-Strap Loader,意思就是可引导装载,形象来说就像电脑用DOS起动盘起动后可以装载应用程序并运行。
只不过SST89C58是用串口来输入程序资料的。
为了能把编译好的单片机程序HEX或BIN文件下载到SST89C58芯片上,SST 公司还提供了一种叫EasyIAP的软件,IAP为In-ApplicationProgramming,有了这个软件就可以把SST89C54变为在线下载的实验器。
在这里不详述EasyIAP的使用,只讲述如何利用它去把SST89C58升级为带SoftICE固件程序的51仿真器。
图1SST89C58一、制作带串口的的最小化应用板无论是EasyIAP还是仿真器,都需要用串行口使SST89C58芯片和PC上位机进行通讯传输数据,因此我们先要制作一个带RS232/TTL转换的应用板,如果你的51实验电路板或目标电路板已带有这样的电路那么你就可以跳过这一段了。
SilanEMU_0907用户使用手册地址:杭州市黄姑山路4号 邮编:310012电话:+86-0571-******** Http :// 传真:+86-0571-******** Email :silan@士兰保留说明书的更改权,恕不另行通知!产品提升永无止境,我公司将竭诚为客户提供更优秀的产品!EMU_0907杭州士兰微电子股份有限公司目录1概述 (2)2开发工具 (3)2.1开发工具清单 (3)2.2EMU_0907仿真头说明 (5)2.3KEIL µV3软件说明 (8)2.4EMU_0907在线调试 (14)3注意事项 (20)4附录 (21)5附 (22)1概述本套开发工具是针对MCU0907系列芯片设计的专用开发工具,可实现在线调试功能。
在线调试是通过Keil软件来实现硬件仿真,可以进行单步运行、全速运行、程序复位和停止程序运行等操作。
在线调试主要用于产品开发阶段,方便用户调试程序,提高开发效率。
程序下载用另外的下载器。
2 开发工具2.1 开发工具清单开发工具包括硬件和软件两类,详见表1。
表1 开发工具清单工具类型 工具名称数量 单位 备注软件工具Keil µV3集成开发软件1 套 用户自备 硬件工具PC 机1 台 用户自备 EMU_0907仿真头 1 套 - DEV_0907开发板 1 套 用户自备 USB 电缆1根-每个工具的功能简述如下:Keil µV3集成开发软件:用于程序编译和在线调试。
PC 机: Keil µV3集成开发环境的运行平台。
EMU_0907:仿真头,仿真MCU0907芯片。
USB 串行电缆:用于连接仿真头和PC 机; 开发工具实物图:图2.1-1 EMU_0907仿真头图2.1-2 USB电缆2.2 EMU_0907仿真头说明EMU仿真头实物图EMU_0907仿真头(仿真板)可以通过USB口直接与PC连接,可以采用USB供电。
介绍利用Keil的软件仿真功能来实现51单片机串口调试用户程序的方法在单片机系统中,串口(UART,通用异步收发接口)是一个非常重要的组成部分。
通常使用单片机串口通过RS232/RS485电平转换芯片与上位机连接,以进行上位机与下位机的数据交换、参数设置、组成网络以及各种外部设备的连接等。
RS232/RS485串行接口总线具有成本低、简单可靠、容易使用等特点,加上其历史悠久,所以目前应用仍然非常广泛;特别对于数据量不是很大的场合,串口通信仍然是很好的选择,有着广阔的使用前景。
在单片机编程中,串口占了很重要的地位。
传统方式串口程序的调试,往往是利用专用的单片机硬件仿真器。
在编写好程序后,利用仿真器来设置断点,观察变量和程序的流程,逐步对程序进行调试,修正错误。
使用硬件仿真器的确是很有效的方法,但是也有一些缺点:很多仿真器不能做到完全硬件仿真,因而会造成仿真时正常,而实际运行时出现错误的情况;也有仿真不能通过,但是实际运行正常的情况。
对于一些较新的芯片或者是表面贴装的芯片,要么没有合适的仿真器或仿真头;要么就是硬件仿真器非常昂贵,且不容易买到。
有时由于设备内部结构空间的限制,仿真头不方便接入。
有的仿真器属于简单的在线仿真型,仿真时有很多限制。
例如速度不高,实时性或稳定性不好,对断点有限制等,造成仿真起来不太方便。
1、调试前的准备工作下面介绍一种利用Keil的软件仿真功能来实现51单片机串口调试用户程序的方法。
使用这种方法,无需任何硬件仿真器,甚至都不需要用户电路板。
所需的只是:①硬件。
1台普通计算机(需要带有2个标准串口)和1根串口线(两头都是母头,连线关系如图1所示)。
②串口软件可以是自己编写的专用调试或上下位机通信软件,也可以是通用的串口软件(如串口助手、串口调试等),主要用来收发数据。
如果没有合适的串口调试软件,则可使。
仿真机复位按键1.首先将附配的232 DB9Ping连接线接入学习板的232端口,将另一端接入PC机的232端口,再将附配的USB连接线接入学习板的USB端口,将另一端插入PC机的USB端口,完成学习板向PC机取电的工作,是仿真机工作,先不要按下学习 板上的电源开关.3.点击上图画了红色圆圈的图标按钮,会弹出下面的窗口:4.出现如上图的窗口,再点击"调试"按钮,出现如下图的选择框:21如果你要在目标板上看到程序全速运行的结果,那么此项目必须选择,否则程序只是调试,程序将不能加载到仿真器中,就在目标板上看不到运行效果!35.按照上图红色的表识的进行设置,然后点击"确定"按钮,此时按下学习板的电源开关,使仿真机供电,再将坊真机的 复位按钮按一下,是仿真机先复位(注意每次启动仿真机都要复位)复位按键在第一个图片画红色圆圈的那个按键哦6.再点击上图画红色圆圈"调试"7.出现上图画红色方框的字样,则表示Keil软件已经识别到仿真机型号和版本,现在你可以在线调试你的设计程序了 而不需要每次都下载到单片机上,才知道程序是否能正常运行.能即时发现程序哪里出错,并能立即修改和运行. 现在你可以开始你的程序在线仿真了!8.如果你在连接仿真机进行仿真的时候,出现下图的提示,你要检查学习板上的电源开关有没有按下,板上的电源指示灯有没有亮,40Ping专用仿真线有没有插反.上图红色圆圈的三角形位置,不可接反,否则会损坏仿真机!特别注意例:现在以教程中“APW-C51学习板实验程序带源码语句”文件夹中的“流水灯实验(C语言,汇编)” 子文件夹中“LED流水灯(汇编)”的文件为例,介绍仿真器的使用方法:1.首先启动"Keil uVision2"软件,如下图点击 建立一个设计工程,选择"N新建工程",如下图:文件名:就写"流水灯实验"吧!然后选择CPU(就是单片机型号),我们以AT89C51为例,点击"确定".在点击 新建一个程序文件,本例就直接将文件复制过来,"LED流水灯(汇编)"文件中的将源码语句如上图所示复制到新建文档中,再点击 将文件保存起来,保存名字假如为:写好文件名,就点击"保存"按钮,再点击 此图的加号,如下图所示:将鼠标移动到 此文件上,点击右键,选择"增中文件到组Source Group1"出现下图:选择之前保存过的文件 选择文件后如下图所示:点击"Add"选择文件,如下图所示,表示添加成功.然后编译文件点击 会出现如下图所示:然后就按照最初的仿真器与KEIL软件的设置,点击 选择"开始调试"开始调试仿真程序,如下图所示:点击 你会看见,程序在学习板上运行,你可以开始调试仿真了,不但可以在本学习板上实现仿真,也其他的目标板上运行,只需要将仿真线的另一头接到你的目标板上就可以了,可以选择不同的频率晶体,进行仿真超频.注意每次使用前和使用后都要将仿真器复位(按一下复位开关)。
Keil Monitor-51 仿真板的制作与使用
陈红仙;陈小平
【期刊名称】《电子技术应用》
【年(卷),期】2002(028)007
【摘要】介绍支持Keil C51的Monitor-51仿真板硬件电路及监控程序的生成方法,对使用中常出现的问题给出了解决方法.
【总页数】3页(P8-10)
【作者】陈红仙;陈小平
【作者单位】苏州大学通信与电子工程系,215021;苏州大学通信与电子工程系,215021
【正文语种】中文
【中图分类】TP3
【相关文献】
1.印制电路板传输线的制作工艺仿真 [J], 康晓斌
2.直流12V输入的卫视接收机通用电源板的使用制作系列之二便携式收视一体化卫星接收机的制作(上) [J], Stanley Jing
3.基于Keil的实验仿真板在现代交通设备设计中的应用 [J], 肖传恩;舒利平
4.电子制作读者服务部精品套件优惠大酬宾之六:PROG-103仿真用户板 [J], 无
5.虚拟仿真技在电路板制作实验教学中的应用与实践 [J], 许才顼;贺杰;郭慧;黄河;吕美妮
因版权原因,仅展示原文概要,查看原文内容请购买。
基于keil5的嵌入式电压监控系统设计实验
嵌入式电压监控系统可以用于检测和监视电压的变化,以确保电路或设备工作正常和安全。
以下是基于keil5的嵌入式电压监控系统设计实验的步骤:
步骤1:准备硬件
1. 根据系统要求选择合适的微控制器和其他必要的硬件组件,例如电压传感器和显示器。
2. 连接电压传感器到微控制器的模拟输入引脚,并连接显示器到微控制器的数码输出引脚。
步骤2:编写代码
1. 打开keil5软件,创建一个新的工程。
2. 在工程中创建一个C文件,并编写代码来读取模拟输入引脚的电压值。
3. 使用ADC模块来获取模拟输入引脚的电压值。
根据微控制器的型号和规格,具体实现方式可能会有所不同。
4. 将读取到的电压值与预设的阈值进行比较,并在显示器上显示电压的状态。
可以使用数码输出引脚来控制显示器上的LED等指示灯。
步骤3:编译和下载代码
1. 确保代码中的语法没有错误,并且配置了正确的目标设备和编译器选项。
2. 编译代码并生成目标文件。
3. 将目标文件下载到目标设备上进行测试。
步骤4:测试系统
1. 将系统连接到电源,并确保电压传感器与待测电路或设备正确连接。
2. 监视显示器上的电压状态。
如果电压超过或低于设定的阈值,相应的指示灯将会亮起。
3. 通过改变待测电路或设备的电压,测试系统的响应和准确性。
这些步骤将帮助你设计和实现基于keil5的嵌入式电压监控系统实验。
请根据你的具体需求和系统规格进行调整和修改。
为确保系统功能和性能,建议在实验开始之前进行充分的测试和验证。
K51U/Keil_CPU单片机仿真机使用说明K51U/Keil_CPU是一个支持keil c51 设计软件的软件断点仿真机。
使用一片SST89C58 单片机和一片AT90S8515 单片机来实现仿真功能(主CPU 和用户CPU),两片CPU 之间通过一根I/O 引脚通讯(通讯速率在33 兆晶振时约100KBPS),主CPU 负责跟keil c51 通讯,用户CPU 只跟主CPU 通讯.结构框图:一,主要功能和特性:1 支持串口的仿真功能2 串口中断用户可以使用3 不占用定时器24 完全仿真p0 p2 口5 支持89C52 等嵌入式CPU 仿真6 占用1 条I/O : P3.57 ISP 在线编程,在线下载8 仿真频率最高33 兆9 支持同时最多10 个断点10 支持单步,断点,全速运行11 支持汇编,c 语言,混合调试12 支持KEIL C51 的IDE 开发仿真环境UV1 UV2(V5.20 V6.02 V6.10 V6.12 V6.14)13 单步执行时间(60 毫秒)14 程序代码载入(可以重复装载,无需预先擦除用户程序空间)15 SFR 读取速度(128 个)200 毫秒16 跟踪记录(trace record)256 条17 可以仿真标准的89c51 89c52 89c58 等51 内核的单片机仿真二,如何使用:1 如何接仿真机的接线把K51U/Keil_CPU按CPU正视方向插入用户板CPU/实验仪CPU插卡区。
系统通信口:要接到你的电脑的串口,这是跟keil c51 进行通讯的接口,keil c51 通过这个串口发命令到仿真机。
(实验仪通信开关:KB6->51)用户通信口:是连接到你的仿真CPU 的串口的,用来监视你的CPU 的串口发出的数据的.如果你的程序没有用到串口,就不用接到电脑的串口. 如果你想看你的单片机的串口发出的数据,就要连接到你的电脑的串口(这时需要使用你的电脑的两个串口.)2 如何设置Keil C51 仿真机的工作参数?这里拿keil c51 V6.14 来说明keil c51,v6.02,v6.10,v6.12 的设置跟v6.14是一样的.1.先打开一个工程文件,如果你没有工程文件就要先建立一个,这里拿keil c51提供的hello.prj 为例子说明用鼠标点击菜单的project 选择open project 如图:2.选择keil\c51\examples\hello\hello,点击打开如图:3 选择菜单的Project->Option for Target 'Simulator',如图:3.1,选择C51 栏的设置如图:删掉define:里的MONITOR51 这几个字母,如果define 栏是空的可以跳过这一步:删掉MONTOR51 之后的设置如下图,不要点击确定,因为还要进行其他设置:附注:3.1 的步骤是调试keil 提供的这个Hello 工程才需要做的,对你自己建立的工程不需要这个设置,你自己的工程可以跳过这步,直接进行下一个设置.在这里用红色来写这个说明,是需要引起用户注意,一些用户买回仿真机之后,然后说调试到第二步就死机了.把仿真机退回换一个新的,结果还是这样,我检查了退回的仿真机,仿真机没有问题.而是忽略了要做这一步的设置.这是我的说明文件漏掉了这一步的说明,特此更正.4 选择debug 栏的设置项目Us e:Keil Monitor-51 DriverLoad Application at Star t:选择这项之后keil 才会自动装载你的程序代码Go till mai n:调试c 语言程序时可以选择这一项,pc会自动运行到main 程序处点击上图的Settings,打开新的窗口,Port:设置你的串口号为仿真机的串口连接线所连接的串口Baudrate:设置为57600 仿真机固定使用57600bps 跟keil 通讯Serial Interrupt:选中它Cache Options: 可以选也可以不选,推荐选它这样仿真机会运行的快一点,最后点击ok 和确定关闭你的设置5 编译你的程序选择Project -> Rebuild all target files6.编译完毕之后选择Debug->Start/Stop Debug Session,就进入仿真了7 装载代码之后在左下角显示如图Connected to Monitor-51 V1.0表示连接到仿真机仿真机的版本号为1.0 这是我的第一个版本Load "C:\\Keil\\C51\EXAMPLES\\HELLO\\HELLO"表示代码装载成功8 其他的调试方法跟软件仿真是一样的三,K51U/Keil_CPU开关设置1,如何使用用户板的晶振答:板上有一个拨码开关是8 路的默认的设置如上图设置的位置如下1 ON2 OFF3 OFF4 OFF5 OFF6 OFF7 OFF8 ON拨码开关拨到右边为ON, 左边为OFF其中的123 路拨码开关是设置使用仿真板的晶振还是用用户板的晶振默认是用仿真板上的晶振为11059200 hz 的要使用用户板的晶振请将123 路设置为1 OFF2 ON3 ON2,如何使用用户板的复位其中的第4 路拨码开关是设置使用仿真板的复位RESET 还是用用户板的复位(RESET),默认是用仿真板上的复位,就是SST89C58 的RESET 脚不连到用户板,要使用用户板的复位就是SST89C58 的RESET 脚连到用户板,请将第4 路设置:4 ON使用看门狗复位时最好设置为OFF .3,如何在仿真板脱机运行用户程序1 ON2 OFF3 OFF4 OFF5 OFF6 OFF7 ON8 ON4,如何使用板上的电平转换电路其中的第5 6 路拨码开关是设置使用仿真板的MAX232 做为电平转换还是用用户板的电平转换,默认是用用户板上的转换,要使用仿真板的串口将第5 6 路设置为5 ON6 ON这时才可以通过我提供的第二条串口线来查看串口的输入输出5, 我的程序可以使用P3.5 吗答:由于监控系统要使用P3.5 来进行通讯,最好不要使用。
实验一KeilC51集成开发环境的使用练习、仿真与调试实验一Keil C51集成开发环境的使用练习、仿真与调试一、实验目的1、熟悉Keil C51集成开发环境的使用方法2、熟悉Keil C51集成开发环境调试功能的使用和DP-51PROC单片机综合仿真实验仪的使用。
二、实验设备及器件IBM PC机一台DP-51PROC单片机综合仿真实验仪一台三、实验内容1、进行Keil C51集成开发环境的安装和使用练习。
然后按照以下内容建立文件并编译产生HEX文件。
ORG 0000HLJMP MainORG 00F0HMain:MOV R7, #0Loop:MOV R6, #0DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R7, LoopCPL P1.0 ; P 1 .0 取反CPL P1.1 ; P 1 .1 取反CPL P1.2 ; P 1 .2 取反CPL P1.4 ; P 1 .4 取反CPL P1.5 ; P 1 .5 取反CPL P1.6 ; P 1 .6 取反CPL P1.7 ; P 1 .7 取反SJMP Main;END2、进行Keil C51集成开发环境的仿真调试练习。
然后按照以下内容建立文件并编译仿真调试。
ORG 8000HLJMP MainORG 80F0HMain:MOV R7, #0Loop:MOV R6, #0DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R7, LoopCPL P1.0 ; P 1 .0 取反CPL P1.1 ; P 1 .1 取反CPL P1.2 ; P 1 .2 取反CPL P1.3 ; P 1 .3 取反CPL P1.4 ; P 1 .4 取反CPL P1.5 ; P 1 .5 取反CPL P1.6 ; P 1 .6 取反SJMP MainEND四、实验要求1、熟练掌握Keil C51集成开发环境的工程建立、编辑与编译功能。
单片机实验和开发中最重要的一个环节就是程序的调试,在业余条件下大部分人都采用烧写芯片直接到目标板上试验的方法,但是这样做在程序出现问题时比较麻烦,有时候也很难找到程序的问题出在那里。
另外也可以采用软件仿真的方式调试程序,但是这种方式也有局限性,软件仿真有时候并不能完全代替实际使用环境。
因此单片机仿真器成了程序调试中一个重要的设备。
但是在业余条件下很少有人使用价格比较高的仿真器。
为解决这一问题,本文介绍一种用SST公司的单片机SST89E516RD做的基于MCS-51架构的简易51单片机仿真器,它支持与MCS-51架构兼容的芯片,成本只有20多元,很适合业余爱好者制作和使用。
一、单片机SST89E516RD简介SST89E516RD是8位集成存储器的51系列兼容单片机,和51系列单片机软件兼容、开发工具兼容、管脚也兼容。
SST89E516RD片内有两块SuperFlash EEPROM,分为64K主块(Block0)和8K次块(Block1)。
Block0的地址范围是0000h~ffffh;Block1的地址范围是10000h~11fffh。
做仿真器时Block1存储区烧写SoftICE仿真监控程序。
SST89E516RD具有在应用可编程(IAP)和在系统可编程(ISP)的功能,其中IAP是通过串口实现的。
仿真器就是利用了SST89E516RD的IAP功能。
由于SST89E516RD具有两块独立的SuperFlash程序存储区,当监控程序在Block1存储区中运行时可以改写Block0程序存储区中的程序,这就是仿真器的基本特性。
SST89E516RD的引脚图见图1。
更详细的资料见本期配刊光盘。
二、仿真器电路和工作原理仿真器的电路见图2。
仿真器通过计算机的一个串口与KeilμVision2集成开发环境进行通信。
VTl、VT2、VD1、VD2、R1~R5等组成电平转换电路,其中发光二极管VD2作串口通信信号指示。
键盘左右键可以进行前后翻页操作自制Monitor-51仿真器自制Monitor-51仿真器51单片机是很适合初学单片机的人学习的,一则其结构和原理相对于其他单片机而言要简单些,二则现在国内关于51的书籍等学习资源也是很丰富的。
初学单片机的人可以在动手自己制作的过程中得到到动手能力的锻炼,而且往往动手过程要比只坐在那里写程序而言更为有趣味些。
尤其是这个过程中往往多少经历些失败挫折最终获得成功。
学单片机呢,仿真器往往是最为让人着迷的了,因为它可以帮助人更好理解和学习程序知晓程序的运行程序的结构,并能从中获得更多成功的喜悦---亲眼一步一步地看到自己程序的运行,而自制仿真器也是一件很有挑战和好玩的事了。
自己也亲手做过51和AVR单片机的仿真器,这里先介绍51单片机的Moniter-51仿真器,能在Keil编译环境中对51单片机仿真。
下图为用万用板焊的Monitor-51仿真器,由于不是做板焊的,多少看起来是有点粗糙了。
Monitor-51制作的资料包括电路图和调试程序等。
其实光是焊好还并不代表好使,之后的软件配置和烧写过程还颇费些力气的。
下面就介绍在XP系统中利用Keil编译器的仿真器配置文件INSTALL.BAT来生成自己做的仿真器所需要的配置文件。
这个文件在\Keil\C51\MON51中,同意文件夹下还有INSTALL.A51和MON_BANK.A51,这两个文件是Moniter-51的资源配置文件,用户需要修改相关的参数后才能使得仿真器正常运行。
首先由“开始”-->“运行”-->“CMD”进入XP系统的DOS状态,在进入提示界面光标闪烁处键入“CD C:\Keil\C51\MON51 ”(其中C:\为Keil所在的硬盘,可以根据你自己的电脑所安装的路径修改)然后敲”回车“进入MON51所在的文件夹。
然后在下一行的光标闪烁处键入”install.bat 0 7f 0"再敲回车,中途按提示按一次任意键就OK 了(其中参数0 7f 0 是可更改的,需要根据自己的仿真器的电路来设置。
基于Keil C51 集成开发环境的仿真与调试一.实验目的熟悉Keil C51 集成开发环境调试功能的使用和DP-51PRO 单片机综合仿真实验仪的使用。
二.实验设备及器件IBM PC 机一台DP-51PRO 单片机综合仿真实验仪一台三.实验内容调试仿真功能是指DP-51PRO 单片机综合仿真实验仪运行单片机P87C52X2 内部的MON51 监控程序,把用户的应用程序装载到外部SRAM 中,从而实现运用Keil C51 集成开发环境所提供的所有调试命令来调试用户的应用程序或仿真用户的应用系统,然后按照以下内容建立文件并编译仿真调试。
ORG 8000HLJMP MainORG 80F0HMain:MOV R7, #0Loop:MOV R6, #0DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R6, $DJNZ R7, Loop ;延时CPL P1.0 ; P 1 .0 取反CPL P1.1 ; P 1 .1 取反CPL P1.2 ; P 1 .2 取反CPL P1.3 ; P 1 .3 取反CPL P1.4 ; P 1 .4 取反CPL P1.5 ; P 1 .5 取反CPL P1.6 ; P 1 .6 取反CPL P1.7 ; P 1 .7 取反SJMP Main;END四.实验要求熟练掌握结合DP-51PRO 单片机综合仿真实验仪和Keil C51 集成开发环境进行仿真调试。
五.实验步骤1.用40 针排线把DP-51PRO 实验仪上的A1 区J76 接口和A2 区J79 接口相连,然后使用导线把A2 区的J61 接口与D1 区的J52 接口相连。
2.对DP-51PRO 实验仪上电,首先,在A1 区,把JP13 中的SRAM_E 和FLASH_E 两个跳线座的短路器拔走(即不短接),把MOD_SW1 开关拨到LOAD 模式,即在下载状态下,用户应将本实验仪所提供的专用仿真调试芯片P87C52X2插入到DP-51PRO单片机综合仿真实验仪的U13锁紧座上;然后ISP 跳线JP14 跳开(即不短接),短接JP15 的1、2 两个跳线(TXD、RXD),然后按下复位按键“RESET”。
使用监控程序的Keil调试环境的构建一、安装keil软件正常安装Keil软件。
二、生成Moni51监控程序1、安装Keil软件后,进入Keil安装目录,在Keil\C51\MON51目录下以记录本方式打开INSTALL.A51文件。
修改其中两条语句为:INT_ADR_OFF EQU 2000H;DEF_PC_VAL EQU 2000H;2、点击Windows开始按钮,打开“运行”窗口,键入cmd命令,打开命令符提示窗口。
进入Keil\C51\MON51目录(利用cd命令即可),输入命令:INSTALL 0 7F 00按回车键执行该命令,在执行过程中,对所提示内容,一律选Y执行。
如图1所示。
图1 运行安装监控程序命令三、配置工程属性1、打开Keil软件,在所建立的工程中,单击菜单栏上的Project项,在弹出的下拉菜单中选择Option for target ‘target1’项。
在Target标签中,Off-chip Code memory的Eprom的Starat和Size中分别填上0x2000和0x4000,如图2所示。
图22、Output选项卡下,勾上“Creat Hex File”选项。
如3图所示。
图33、C51选项卡中,勾中Interrupte V ector at 选项,设置为0x2000,如同4所示。
图44、在Debug选项卡中,选择USE:Keil Monitor-51 Driver,如同5所示。
图5四、修改STARTUP.A51文件在创建工程时,加载STARTUP.A51文件,在该文件中将“CSEG A T XXX”段修改为“GSEG A T 0x2000”。
如图6所示。
图6五、下载将开发板的下载线与PC机的9针串口相连。
开发板上电。
对所编写程序进行编译、链接。
编译通过后,按下载调试按钮,即可完成下载,进行调试,如图7所示。
若下载出现问题,按开发板的复位按键后,重新下载即可。
图7。
邮局订阅号:82-946360元/年技术创新单片机开发与应用《变频器与软启动器应用200例》您的论文得到两院院士关注KEILC51单片机仿真器的设计ImplementationofKeilC51MCUEmulatorbasedonSST89C54/58(陕西科技大学)陈晓莉张俊涛Chen,XiaoliZhang,Juntao摘要:SST89C54/58是美国SST公司推出的具有20KB/36KBFlash程序存储器的FlashFlex51系列单片机,通过对Flash的分区实现IAP的功能。
本文介绍SST89C54/58程序存储器的结构特点以及基于SST89C54/58的KEILC51单片机仿真器的设计。
关键词:单片机;存储;仿真器;设计中图分类号:TP368.1文献标识码:AAbstract:SST89C54/58isFlashFlex51familymicrocontrollerwith20KB/36KBFlashEEPROMbySiliconStorageTechnology,IAPisimplementedbasedonitsFLASHpartition.MainfeaturesofprogrammemoryorganizationofSST89C54/58arepresentedandoneofitsapplicationsasKeilC51emulatorisintroduced.Keywords:Microcontroller,Memory,Emulator,Design文章编号:1008-0570(2006)02-2-0019-021概述SST89C54/58(简称89C54/58)是美国SST(SiliconStorageTechnology)公司推出的多用途FlashFlex51系列单片机,片内集成了20KB/36KB的SuperFlashEEPROM程序存储器,分为BLOCK0(16KB/32KB)和BLOCK1(4KB)两块。
串口下载SOFTICE监控代码
由于SST的MCU在出厂时已经将BOOT LOADER的下载监控程序写入到芯片中因此无需编程器就可通过SST BOOT-STRAP LOADER软件工具将原来的MCU内部的下载监控程序转换为SoftICE的监控程序从而实现SOFTICE的仿真功能。
执行SSTEasyIAP11F.exe软件运行SST Boot-Strap Loader 在内部模式下检测到对应器件的型号后SoftICE固件通过按SoftICE菜单下Download SoftICE 选项下载便将SoftICE固件下载到MCU 在BLOCK1的SST Boot-Strap Loader 会被SoftICE固件代替
详细操作步骤如下:
A、选择连接的串口
图1
B 、选择芯片型号和内部存储器模式
图2
C、选择串口波特率MCU的晶振频率
图3
D、按确定后再重新复位MCU
图4
E、如果通讯成功在窗口的右上角可以显示出芯片的型号及BOOT LOADER的版本信息
图5
F、点击DOWNLOAD SOFTICE的按钮即可将MCU内部的BOOT LOADER监控程序更换为SOFTICE监控程序
图6
G 、点击确定按钮确认转换为SOFT ICE的监控程序
图7
H、这是转换后的提示信息说明转换SOFTICE监控程序成功
图8
I、此时这片SST89E554芯片便具备了SOFTICE的在线仿真的功能。