2015-02-06 37 views
0

我正在開發一個Arduino項目,我需要在模擬傳感器讀取的測試環境中進行測試。我在C++中這樣做,我用C++編寫了一個(非常粗糙的)項目端口。在Code :: Blocks中工作並使用mingw編譯如何使用Code :: Blocks調試Arduino文件?

一切正常,但我無法調試它,因爲Code :: Blocks/gdb無法將.ino文件識別爲適當的源文件,因此它不會在斷點處斷開。爲了調試的代碼,我需要我的代碼複製並粘貼到main.cpp中

之前

#include "..\finestra\finestra.ino" 


int main() 
{ 
    setup(); 
    while(counter < 540) loop(); 
    return 0; 
} 

[my whole Arduino source pasted here] 


int main() 
{ 
    setup(); 
    while(counter < 540) loop(); 
    return 0; 
} 

後這是一種不舒服

兩個問題:

  1. 我如何告訴Code :: Blocks/gdb,finestra.ino是一個要作爲cpp文件進行處理的源文件?
  2. 有更好的解決方案來測試和調試我的Arduino代碼嗎?

回答

0

沒人?

我正在爲任何未來可能需要此功能的人解答。

我嘗試了車費這是兩件事情:

  1. 有這被認爲是對付Arduino的代碼::塊的一個分支。主頁是http://arduinodev.com/codeblocks/。所有需要的工具應該在那裏(我仍然需要徹底嘗試)。您需要在同一臺計算機上安裝第二個Code :: Blocks IDE,但這是合理的折衷
  2. 我將gdb.exe更新到版本7.7。使用.ino文件中的斷點確實可行,即使不是很完美(程序停在斷點處,但並沒有嚴格地向你顯示它的位置,你必須在日誌中找到它,這有點不舒服,但至少可以工作!)

無論哪種方式都可以調試,雖然有缺點