自制Monitor-51仿真器.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
键盘左右键可以进行前后翻页操作 自制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 是可更改的,需要根据自己的仿真器的电路来设置。第一个0所在参数是用于设置单片机串口相关的参数,为0~12的正整数;7f所在参数用于指定Moniter-51监控程序的外部存储单元的页号,取值0x00~0xFF,第二个0所在参数用于设定监控程序代码在程序存储器的起始页,取值0x00~0xF0之间的十六进制数,缺省值为0x00;另有BANK参数是可选项可不写,用于为代码区分组的应用程序的安排,可通过INSTALL.A51来修改)如下图所示: 执行完上述的操作后就会在INSTALL.BAT所在的文件夹中生成一个MON51.HEX文件,将其用烧写器烧写到仿真器的仿真控制器(一片51单片机芯片中,比如89C51或者52S系列如AT89S52后就完成仿真器部分的工作了。INSTALL.A51文件中的内容如下图所示: 可以修改PC机与仿真器之间的通信波特率,通常为9600bit/s。 接下来就是设置KEIL软件中仿真相应部分(对于每一个工程文件都需要重新进行以下设置,同一个工程下一次运行时也应该检查以下的设置项是否正确)/P 点击下图中红框处: 在弹出的对话框中修改以下标签: 1.”Target“中修改晶振频率为11.0592MHz 2.在”C51“标签中设置中断向量起始地址为0x8000 3.在”BL51 Locate”标签的Code键入“0x8000” 4.在“debug”标签中选中“Use keil monitor-51 driver”: 5.鼠标单击“Setting”,根据自己电脑的串口选择Port: 6.选中“Load Appliaction at Start”,再选中“Go till main()”,注意每次点击主菜单上的“Debug”进行仿真前都要检查该项是否选中了,不然程序仿真会出错。 7.设置“STARTUP.C51文件中的代码初始存放地址”0“改为”08000“。(只是硬件仿真时设定为08000,而仿真后生成实际目标板的HEX文件时,即烧写代码到实际工作的单片机芯片前要重新改回”0“而且再编译一次生成的HEX文件才能烧写进去以正常工作。 8.将硬件连接好(仿真器的串口线连到电脑的串口,仿真头插入目标板的单片机芯片插座中)然后启动电源,点击主菜单“debug”,进入仿真模式。其中的操作与软件仿真时差不多,按快捷键F10或F11可以实现单步运行,方便跟踪单步运行的结果(仿真前可以按图标按钮设置以便于全速运行时运行到断点处停止查看运行状态和结果,而按钮可以取消断点。)。 8.下图就是仿真运行时的汇编界面: 下图为C语言源代码界面A href=../uploa

文档评论(0)

000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档