基于单片机仿真器的设计详解

出处:电子发烧友网 发布于:2018-04-13 17:53:45

  仿真器是什么

  仿真器(emulator)以某一系统复现另一系统的功能。与计算机模拟系统(Computer SimulaTIon)的区别在于,仿真器致力于模仿系统的外在表现、行为,而不是模拟系统的抽象模型。

  仿真器可以替代你的目标系统中的MCU,仿真其运行。 仿真器运行起来和实际的目标处理器一样,但是增加了其它功能,使你能够通过桌面计算机或其它调试界面来观察MCU中的程序和数据,并控制MCU的运行。

  单片机仿真器的作用

  单片机仿真器是一种在电子产品开发阶段代替单片机芯片进行软硬件调试的开发工具。配合集成开发环境使用仿真器可以对单片机程序进行单步跟踪调试,也可以使用断点、全速等调试手段,并可观察各种变量、RAM及寄存器的实时数据,跟踪程序的执行情况。同时还可以对硬件电路进行实时的调试。

  利用单片机仿真器可以迅速找到并排除程序中的逻辑错误,大大缩短单片机开发的周期。在现场只利用烧录器反复烧写单片机,通过肉眼观察结果进行开发的方法大大增加了调试的难度,延长了整个开发周期,并且不容易发现程序中许多隐含的错误,特别对于单片机开发经验不丰富的初学者来说更加困难,由此可见,单片机仿真器单片机系统开发中发挥着重要的作用。本文主要跟大家分享基于SST89C54/58单片机仿真器的设计详解。

  仿真器的作用是什么_基于单片机仿真器的设计详解

  基于SST89C54/58单片机仿真器的设计

  一、概述

  SST89C54/58(简称89C54/58)是美国SST公司推出的多用途51系列单片机,片内集成了20 kB/36 kB的SuperFlashE‘PROM程序存储器,分为BLOCK0(16kB/32kB)和BLOCKl(4kB)两块。其中,BLOCKl可以映射(Mapping)到64kB存储空间的端或端,而且,对于程序计数器来说可以是不可见的。由于其存储结构上独特的优点,使得89C54/58非常适合于用做单片机仿真器。

  二、SST89C54/58的程序存储结构

  1、存储器结构

  89C54/58片内的存储块BLOCK0占据从0000H到3FFFH/7FFFH的存储空间,BLOCKl占据从F000H到FFFFH的存储空间。89C54/58存储结构如图1所示。

  仿真器的作用是什么_基于单片机仿真器的设计详解

  当EA#=1时,对于程序计数器来说,BLOCK0始终是可见的,用于代码的存取;BLOCKl代码的存取是通过特殊功能寄存器SFCM,SFCF,SFAL,SFAH,SFDT和SFST来实现的。当SFCF=1时,BLOCKl是可见的。

  2、存储器再映射(Re-mapping)

  89C54/58的存储器再映射功能使得对BLOCK0进行编程时,其系统中断向量区依然可用(普通8051系列单片机无此特点)。89C54/58提供4种存储器再映射方式,存储器再映射数量的大小由MAP_ENCl:0)控制,当MAP-

  三、基于SST89C58的单片机仿真器的设计

  1、设计原理简介

  仿真器电路设计如图2所示。图中U2为串行通信接口芯片MAX232,U1为89C54/58。89C54/58的监控程序通过PC机串行口与KEILC51进行通信,实现实时仿真功能。

  2、仿真器监控程序的加栽

  SST公司提供的89C54/58仿真器监控程序SoftlCE(Softwareln-CircuitEmulator)可通过SST公司提供的BSL(Boot-StrapLoader)加载或通过支持SST89C54/58的第三方编程器写入。

  仿真器的作用是什么_基于单片机仿真器的设计详解

  3、仿真器性能简介

  基于89C54/58的单片机仿真器除不支持串行口仿真外,具有通用仿真器的所有功能。与KEIL软件相结合,可完成大部分单片机应用系统的仿真设计。

  其具体性能如下:

  (1)可IntelHEX格式文件。

  (2)支持汇编及C51源代码调试。

  (3)支持在线汇编。

  (4)支持单步(Step)功能。

  (5)支持步越(StepOver)功能。

  (6)可设置10个固定断点和一个临时断点。

  (7)支持读写数据存储器。

  (8)支持读写程序存储器。

  (9)支持读写特殊功能寄存器。

  (10)支持读写端口。

  (11)具有IAP(1n-ApplicaTIonProgramming)功能。

  4、KEIL软件及设置

  KEIL C51是德国KEIL公司推出的Windows版的8051系列单片机开发套件,可用于编译C源程序、汇编源程序,链接和定位目标文件和库,创建HEX文件以及调试目标程序,并内嵌有RTX51实时操作系统,可 简化复杂的多任务实时应用系统的设计。与89C54/58仿真器配合时,在KEIL开发环境中设置如下:

  (1)创建项目,并选择SST单片机SST89C54/58。

  (2)从菜单选择“OpTIons for,Target 1/。

  (3)在”OpTIonsforTarget,Targetl“窗口中,选择使用KEILMonitor-51Driver,如图3所示。

  (4)双击图3中Settings键,设置目标参数如图4所示,即可编译调试目标程序。

  仿真器的作用是什么_基于单片机仿真器的设计详解

  四、结语

  综上所述,由于SST89C54/58独特的存储器结构,使得89C54/58除用做通用的51单片机外,只需配以少量的外围电路,即可做成51系列单片机仿真器。与功能强大的KEIL软件相结合,为单片机工程师提供实时仿真开发环境,可完成大部分单片机应用系统的设计。

关键词:单片机

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

相关技术资料
广告
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!