仿真代码与源码有什么区别?

首先,仿真是通过电脑PC段 模拟 现实的情况 或者说 部署的板端运行情况。

很简单,需要仿真的一般都是针对边缘端板子/嵌入式芯片来说的。

因为你在PC端写完 源码(功能代码),没法测实际性能啊。

有两条路:

源码(功能代码)编成 .a 或 .so 库文件,写一个test代码调用,编成对应板子能跑的可执行文件(都是通过交叉编译链工具 )。

A. 将可执行文件直接扔到板子上跑。

B. 没有实际部署的板子可测试怎么办?仿真软件就起作用了。

像海思等厂商卖板子 也都提供一整套SDK(编译链工具,仿真软件等都有)。

仿真代码 和 源码有时就是一样的, 只不过可能要适应某些不同仿真软件而有修改。

比如就像在功能代码外面包一层壳子,方便通过通过仿真软件在PC上模拟实际跑的情况。

2. 仿真器和编程器有什么区别?

仿真器是用来模拟单片机运行并进行调试工作的,配合仿真软件(装于PC机上)一起使用;

开发板是一个基本的单片机系统,可以用来搭建一般的小电路进行实验;

编程器是用来把编译之后的目标文件写入存储芯片的设备。 要把自己的程序写到ROM中,你需要先把它编译成目标代码,一般是.hex文件,然后用编程器将其写入存储芯片(ROM),也可以用它来读出ROM中的二进制代码!

仿真器 (simulator) 只在 PC 上执行指令,不能与硬件有任何连接,只测试程序上的逻辑及流程,没有发现问题不代表在实际运行时正确.只作初步测试用,协助工作.

编程器 (programmer) 是完成在伤真器中软件测试,没肓发现问题,把程序的 HEX 或 BIN 代码写进单片机内或 EPROM, Flash (如用外置记忆).

要完成开发工作,编程器是必需买,仿真器可帮忙开发工作,减少开发时间,如你对程序非常有信心及经验,可以有足量金钱下才买.

emulator是可以带硬件运行的,而simulator只是做软件上的测试。

但是即使如此,也不能仅仅通过emulator,目前没有emulator能够做到真正等于硬件环境。

仿真仅仅是仿真,所以必须要用编程器。

目前推出了一些什么“ICD"、“ISP"之类的可以提供BDM口或JTAG端口他们可以实现对仿真和编程的集成,省去了即买仿真器又买编程器的钱。