2013-04-29 82 views
1

我想運行一些C代碼,以便在PC窗口環境中運行基於獨特的PIC微型硬件設置。目標是模擬硬件的多個實例,而不需要實際的硬件。我希望必須預先編寫代碼來解決這個問題,並在C或C#中創建模仿每個PIC函數的低級函數。 有誰知道可以支持這個的環境?C兩個平臺編譯

+0

您很清楚細節,但一種方法是爲您的開發環境編譯PIC代碼,然後在不同的線程中運行這些函數。但有很多方法。 – 2013-04-29 07:10:54

+0

你想要做的是模擬PIC控制器並在模擬器中運行你的代碼?如果是的話,你可以試試這個[LINK](http://sourceforge.net/projects/gpsim/)。 – 2013-04-29 07:12:47

+0

這真的取決於你需要測試什麼。如果您主要關注算法,那麼編寫替代I/O例程並構建定位於開發機器就足夠了。在複雜性的相反極端,有用於嵌入式處理器的全週期精確模擬器。 – 2013-04-29 16:40:49

回答

0

你在找什麼是一個微控制器模擬器。模擬器將在PC上運行並執行PIC代碼。爲了例如生成中斷/模擬串行數據/無論您需要配置模擬器設置還是編寫一些自定義功能。

您的目標代碼(對於PIC本身)應該不需要知道它正在運行的環境。

以下是一些鏈接,但您最好搜索「PIC單片機模擬器」或「微芯片PIC模擬器」的一些變體。

http://sourceforge.net/projects/gpsim/

http://sourceforge.net/projects/picsim/

+0

看到我上面的答案。謝謝。 – cpluspluseverywhere 2013-05-01 09:41:46

0

我不知道,這個問題是關於一個指令模擬器。在我看來,這只是關於「雙重定位」的技術。我之前在StackOverflow上提出過類似問題,請參閱:Prototyping and simulating embedded software on Windows。最近,我還在Windows上發佈了一篇關於雙重定位和快速原型設計的博客文章:http://embeddedgurus.com/state-space/2013/04/dual-targeting-and-agile-prototyping-of-embedded-software-on-windows/

所以,雖然鏈接應該提供原始問題的答案,但我想補充一點,在C++中,8位PIC可能無法編程。事實上,它甚至是巴洛克式的,甚至連C編譯器都需要削減這個「架構」。

+0

謝謝你更接近我想要做的事。我不需要低級別。雖然在您的博客文章中,您的動機是加速開發(並涉及HMI),但我的目的是提供一種方法來測試PC與多個嵌入式設備的交互,而無需實際製作它們。我的PIC嵌入式設備正在測量並運行一個微型家庭RTOS。我沒有聽說過雙重定位這個術語,所以非常感謝,這正是我想要做的。我使用的C編譯器是MPLAB版本,所以現在我只需要找到一個與PIC編譯器相同的PC編譯器。 – cpluspluseverywhere 2013-05-01 10:02:56