我想创建开始一个模拟器,用于以下的微控制器委员会: http://www.sparkfun.com/commerce/product_info.php?products_id=707#

固件是编写大会所以我在寻找一些指针对如何将关于模拟的投入的硬件将接收和再模拟器会反应的产出的固件。(这也将需要运行固件,在模拟环境)。

任何针对如何开始呢?

感谢 克里斯

有帮助吗?

解决方案

编写了整个模拟器将是一个真正的挑战。我已经尝试之前写的ARM仿真器,让我告诉你,这是一个不小的工程。你会要么效仿,整个CPU核心,或者找到一个已经书面之一。

您还需要弄清楚所有的IO是如何工作的。有可能是从sparkfun关于董事会文档,但你需要编写一个内存管理器,如果它使用MMIO等。

一个仿真器的概念不是远离一个解释器,真的。你需要解释固件代码,基本上与指示跟随一起。

我会建议应对仿真器的一个良好的互动,而不是调试器。破坏硬件的机会很小,但真的,你愿意买一个新的董事会或花9个月写的东西,不会实现整个系统?

这很可能是PIC 18F2520已经为它写一个仿真器的核心,但你需要深入到所有的硬件规格,看看如何将所有的IO仍然映射。如果你觉得到它,这将是一个很好的项目,但我只想用一个远程调试器,而不是考虑。

其他提示

您必须写一个PIC模拟器,然后模拟端口的IO功能。

要诚实,它看起来像它设计成一个开发工具包 - 我不会担心你的代码破坏设备,如果你照顾。除非这个亚军为企业包装,我会认真质疑ROI上写的SIM卡。

时有什么特别的理由让一个仿真器/模拟器,与只使用真实的东西?

该板是便宜; Microchip现拥有RealICE调试器是颇有几分比老ICD2“冰球”。

反应更灵敏

Microchip的MPLAB的已经有一个内置的模拟器。它不会模拟整个板给你,但它会处理18F2520。您可以排序的使用输入测试向量和日志输出文件,我以前用不同的Microchip的IC做到了这一点,这是可行的,但有点累赘。我建议你把单元测试的方法和模块化你做事的方式;找出哪些测试输入和预期的输出,用于可控制的一块系统。

  

这可能是因为该PIC 18F2520已经具有用于将其写入一个仿真器核心,

这是开源的,跨平台模拟器微芯片/太平洋岛国的“中的gpsim

这是非常不可能的,在你的代码中的错误可能会破坏物理电路。如果这是可能的,那么它或者在电路板设计中的错误,或者它应很清楚地记录。

如果我可以为您提供从多年与这些设备的工作经验了一个建议:不要在组装它们编程。你会去疯狂。使用C或BASIC或某些更高级别的语言。微芯片产生一个C编译器对于大多数的筹码(不知道这一个),和其它公司生产它们。

如果你坚持使用模拟器,我敢肯定,Microchip的让他们的微控制器的几乎每一个仿真器(至少一个从每个产品线,这很可能是不够好)。这些模拟器并不总是便宜,我不确定他们接受复杂的外部输入的能力。

如果你仍然想尝试写自己的,我想你会发现,模仿PIC本身将是相当简单 - 所有的操作码的格式是有据可查的,因为是内存架构等,这是怎么回事要模拟电路板上的其他设备以及它们之间的相互联系,将杀了你。你可能要考虑使用VHDL工具,将允许您为不同组件创建定制的模拟编码的组件之间的互连。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top