2012-05-09 40 views
1

我在使用Eclipse上傳代碼到我的Seeeduino ADK(本質上是Arduino Mega 2560)時遇到了一些麻煩。基本上,this thread解釋我的問題。有時我會使用Arduino IDE上傳來獲得一系列超時,通常通過刪除和重新插入USB來解決這個問題。不幸的是,這並不能解決Eclipse中的問題。Eclipse AVR編程 - ATMega2560

我一直在嘗試通過命令行使用AVRdude進行上傳(我甚至在上面的線程的最後一條評論中嘗試了「hacky」解決方案),但無濟於事。這是我使用該行:

"%AVR_DUDE%" -pm2560 -cstk500v2 -P\\.\%COMM_PORT% -b115200 -F -V -D - Uflash:w:"%HEX_FILE%":a -C"%AVR_DUDE_CONF%" 

這給了我:我知道上面批變量是OK

avrdude.exe: stk500v2_ReceiveMessage(): timeout 

,因爲AVRDUDE正確運行(但是後來超時)。如果任何人有任何想法或提示可以幫助我上傳,我將不勝感激。事先感謝。

編輯:事實證明,原因可能是Arduino IDE在上傳之前向電路板發送了一個復位,這是Eclipse AVR插件不能做的。我會測試這個並寫一個上傳Perl腳本,但我相當肯定這是問題所在。

回答

2

您的懷疑是正確的。 Arduino IDE使用補丁版本的AVRDude在每次上傳前對DTR線進行脈衝並重置板。出於某種原因,有些人很難獲得正確的命令行參數來在Mega2560上覆制這些參數。我自己也有同樣的問題 - ATMega328的工作沒有問題,但2560需要手動重置。

有可能爲得到它在這裏工作了一些進一步的解釋和提示(查看評論太):http://false.ekta.is/2011/05/avrdude-5-10-arduino-mega-2560-command-line-uploading/