仿真器出现的原因

1、早期的单片机内部没有ROM,比如8031、8032,这种单片机只能外部扩展紫外擦除的EPROM存储器,就是芯片上带窗口的ROM。紫外擦除的ROM需要用紫外灯照射较长时间(10分钟或者更多)才能擦掉芯片中的内容以便写入新的程序。

2、有的单片机内部ROM是一次写入成型的,比如8751,程序写入单片机的ROM之后就不能被擦除。

仿真器的种类

1、软件仿真器

这种方法主要是使用计算机软件来模拟运行,实际的单片机运行因此仿真与硬件无关的系统具有一定的优点。用户不需要搭建硬件电路就可以对程序进行验证,特别适合于偏重算法的程序。软件仿真的缺点是无法完全仿真与硬件相关的部分,因此最终还要通过硬件仿真来完成最终的设计。

2、硬件仿真器

使用附加的硬件来替代用户系统的单片机并完成单片机全部或大部分的功能。使用了附加硬件后用户就可以对程序的运行进行控制,例如单步,全速。

单片机仿真器是什么

单片机仿真器是指以调试单片机软件为目的而专门设计制作的一套专用的硬件装置。

单片机仿真器的作用

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

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

单片机仿真器的工作原理

仿真器内部的P口等硬件资源和51系列单片机基本是完全兼容的。仿真主控程序被存储在仿真器芯片特殊的指定空间内,有一段特殊的地址段用来存储仿真主控程序,仿真主控程序就象一台电脑的操作系统一样控制仿真器的正确运转。

仿真器和电脑的上位机软件(即KEIL)是通过串口相连的,通过仿真器芯片的RxD和TxD端口和电脑的串行口做联机通讯,RxD负责接收电脑主机发来的控制数据,TxD负责给电脑主机发送反馈信息。控制指令由KEIL发出,由仿真器内部的仿真主控程序负责执行接收到的数据,并且进行正确的处理。进而驱动相应的硬件工作,这其中也包括把接收到的BIN或者其他格式的程序存放到仿真器芯片内部用来存储可执行程序的存储单元(这个过程和把程序烧写到51芯片里面是类似的,只是仿真器的擦写是以覆盖形式来做的),这样就实现了类似编程器反复烧写来试验的功能!

不同的是,通过仿真主控程序可以做到让这些目标程序,做特定的运行,比如单步、指定端点、指定地址的等,并且通过KEIL可是时时观察到单片机内部各个存储单元的状态。仿真器和电脑主机联机后就象是两个精密的齿轮互相咬合的关系,一旦强行中断这种联系(比如强行给仿真器手动复位或者拔去联机线等),电脑就会提示联机出现问题,这也体现了硬件仿真的鲜明特性,即“所见即所得”。这些都是编程器无法做到的。这些给调试、修改、以及生成最终程序创造了比较有力的保证,从而实现较高的效率。

单片机仿真器的发展

最早的单片机仿真器是一套独立装置,具有专用的键盘和显示器,用于输入程序并显示运行结果;随着PC机的普及,新一代的仿真器大多数都是利用PC机作为标准的输入输出装置,而仿真器本身成为微机和目标系统之间的接口而已,仿真方式也从最初的机器码发展到汇编语言、C语言仿真,仿真环境也与PC机上的高级语言编程与调试环境非常类似了。

仿真机一般具有一个仿真头,用于取代目标系统中的单片机,也就是用这个插头模仿单片机,这也是单片机仿真器名称的由来。

目前,随着单片机的小型化,贴片化和具有ISP,IAP等功能的单片机的广泛应用,传统单片机仿真器的应用范围也有所缩小。而软件单片机仿真器(即单片机仿真程序)的应用逐渐广泛,单片机仿真程序即在个人计算机上运行的特殊程序,可在一定程度上模拟单片机运行的硬件环境,并在该环境下运行单片机目标程序,并可对目标程序进行调试、断点、观察变量等操作,可大大提升单片机系统的调试效率。纯软件单片机仿真器往往与硬件设计程序集成在一起发布,使得开发者可以对单片机硬件与软件进行同步开发。

单片机搭建环境烧录方法_单片机仿真器的工作原理解析相关推荐

  1. 单片机搭建环境烧录方法_万物互联-stm32单片机简介、烧录、编程及其项目环境搭建...

    万物互联-stm32单片机简介.烧录.编程 前言:stm32单片机这里给出简单介绍,给不了解的朋友普及下硬件端的基本知识,叙述的较为简单,想深入研究的朋友可以去一些官方网站.论坛.博客汲取知识.最下端 ...

  2. 六轴机械臂控制原理图_六轴工业机器人工作原理解析

    原标题:六轴工业机器人工作原理解析 常见的六轴关节机器人的机械结构如图1所示: 六个伺服电机直接通过谐波减速器.同步带轮等驱动六个关节轴的旋转,注意观察一.二.三.四轴的结构,关节一至关节四的驱动电机 ...

  3. 单片机程序读取烧录方法记录

    用Jlink和J-Flash RAM读取单片机程序和烧录单片机程序操作步骤 读取单片机内部程序: 烧录单片机程序: 注:以上操作第三步可根据实际硬件连接方式选择SWD还是JTAG

  4. 51单片机怎么显示当前时间_单片机初学者必看

    写给初学者的一些话 本文原创,仅代表我搞单片机的一些想法,有不妥之处,不承担任何责任. 第一个问题,讲一下初学者到底学习那个系列单片机. 51.AVR.430.ARM(包括嵌入操作系统).FPGA当前 ...

  5. 单片机STM8S测量电压电路_单片机毕设(课设)题目汇总

    点击上方「电子菌」关注我们 单片机类设计题目有哪些呢 ?下面是由为大家带来的关于单片机设计题目汇总,希望能够帮到您 ! 1. 电子时钟的设计 2. 全自动节水灌溉系统 -- 硬件部分 3. 数字式温度 ...

  6. 单片机STM8S测量电压电路_单片机电路设计中的10个难点

    单片机是嵌入式系统的核心元件,使用单片机的电路要复杂得多,但在更改和添加新功能时,带有单片机的电路更加容易实现,这也正是电器设备使用单片机的原因.那么在单片机电路的设计中需要注意的难点有哪些? 嵌入式 ...

  7. 单片机 架构 程序 经验总结_单片机“死机”了怎么办?看看一个资深工程师的经验总结...

    原标题:单片机"死机"了怎么办?看看一个资深工程师的经验总结 单片机(Microcontroller,MCU) 又称为微控制器或嵌入式控制器,体积虽小,但使用方便,应用范围广泛,在 ...

  8. 51单片机雾化片自动扫频程序_单片机简介

    单片机简介 数字电路简介 在一个控制系统中, 单片机是电路的一部分, 单片机中的程序是针对其所在的电路编写 的.因此,要对单片机编程并实现一定的功能,必须了解整个系统的电路图.单片机编程是 针对某个特 ...

  9. 单片机拟真电路图软件_单片机最小系统电路图,以及单片机的应用分类

    单片机是集成电路芯片,它使用超大规模技术通过微处理器,存储器,具有数据处理功能的输入和输出接口电路集成在同一芯片上.接下来就为大家简单介绍一下单片机最小系统电路图. MCS-51单片机是一种集成的电路 ...

最新文章

  1. Java PriorityQueue实现大顶堆
  2. SQL Server 2012笔记分享-49:理解数据库快照
  3. idea + Maven + Spring + myBatis的单元测试
  4. go语言中的匿名函数
  5. 如何减少tomcat内存使用量?
  6. .Net架构篇:实用中小型公司支付中心设计
  7. 同时寻找最大数和最小数的最优算法 第二大数
  8. 深度学习之 SSD(Single Shot MultiBox Detector)
  9. RDL(C) Report Design Step by Step 2: SubReport
  10. 【白皮书分享】2021中国女性婚恋观白皮书.pdf(附下载链接)
  11. 静态代码块、非静态代码块和构造方法
  12. ubuntu 编译 hercules 主机安装 z/OS 教程
  13. Linux Curl命令实用参数
  14. 富士胶片携数据磁带亮相大数据产业博览会
  15. 【MATLAB深度学习工具箱】学习笔记--字符识别Character Recognition
  16. 163的邮箱如何注册,邮箱申请163的好处
  17. 用python预测小孩的身高_python按公式预测身高
  18. centons7安装k8s集群
  19. Android开发之自动更换壁纸
  20. 微信小程序开发-多条件搜索tab展示

热门文章

  1. MATLAB的GUI界面不显示XY坐标轴
  2. 清空输入缓冲区fflush()
  3. Struts2之Crud综合实例
  4. HttpClient 指南思维导图笔记
  5. php5.5升级到php5.6,从php5.5.9升级到php5.6之后,相当于php5enmod?
  6. java 操作db2_java操作DB2,增删改查
  7. 计算机对教育的影响雅思听力,雅思听力机考带来的两大影响
  8. C语言里 指针变量强制类型转换,C语言之强制类型转换与指针--#define DIR *((volatile unsigned int *) 0x0022)...
  9. 微型计算机除具有计算机的一般特点外,10秋学期《计算机应用基础》第1次在线作业答案免费6/15...
  10. lua安全之关于lua扩展第三方库