2014-02-25 146 views
3

是否有任何當前相對簡單的方法來編譯和上傳Linux上的Arduino DUE的完整.c/.cpp文件?編程沒有IDE的Arduino DUE(Linux)

我開始經常遇到問題,使用它們提供的樣板代碼來編寫草圖,到目前爲止,對於arduino 1.5 SDK的文檔或替代IDE支持的方式很少......那和官方1.0.5 IDE對於Linux來說是絕望的broken(串口問題等)。

+2

這取決於你的linux發行版,但有[this](http://www.linuxcircle.com/2013/05/15/programming-and-uploading-arduino-sketch-without-ide/)和[這個](http://www.mjoldfield.com/atelier/2009/02/arduino-cli.html)。 – juanchopanza

+0

看來這些都不包含DUE所需的1.5 SDK。第二個是它將問題追蹤器貼上牆紙,但上帝知道需要多長時間才能實施。看起來他們正在花時間轉換分支。 – pdel

+0

我要補充一點,對於那些對此感興趣的人,獲得一個JTAG編程人員,然後使用atmel軟件框架編譯.elf文件,然後直接上傳它們,大大簡化了某些方面的過程。這就是芯片如何被設計爲無論如何都被編程,而不是在專用開發板上。 – pdel

回答

6

有一個很好的例子here

他解釋了你需要什麼以及如何使用它來上傳到linux盒子的終端。

他在幫助您建立編譯環境並將您的c程序上傳到SAM3X8E方面做得非常出色。他甚至給你一個makefile和示例代碼。你還能要求什麼呢?

試一試,看看它是否適合你。

0

即使您可以在arduio的c/C++中進行編程,arduino本身也不會「單獨使用」c/C++代碼。當您將IDE用於arduino時,幾個庫在編譯時會鏈接到您的「arduino」函數,如setup(),loop()以及常量(如HIGH和LOW)。 arduino語言基於一種叫做Processing的語言,它是用c語言編寫的。

如果您在使用Arduino IDE時遇到麻煩,它可能有助於下載較舊的版本。查看他們網站上的Previous Releases頁面。

如果仍然不起作用,您可以嘗試從源代碼構建它。 https://code.google.com/p/arduino/wiki/BuildingArduino

1

我想做同樣的事情,因爲我真的不喜歡像Eclipse這樣的IDE。而我不想依賴Arduino環境。只是在Ubuntu下極簡主義。

對於庫,我下載的ASF(愛特梅爾軟件框架)這裏http://www.atmel.com/tools/avrsoftwareframework.aspx

對於編譯,我安裝GCC-ARM的嵌入式從這裏https://launchpad.net/~terry.guo/+archive/ubuntu/gcc-arm-embedded。這提供了gcc-arm-none-eabi。

最後一部分是'bossac',上傳工具(只是做一個apt-get安裝bossa-cli)。

然後,只需使用Vim或您的fav編輯器,爲您自己的項目調整一個config.mk(配置ASF的MakeFile),然後將boss .bin上傳到您的主板。

請注意,如果您想要它檢測您的USB端口(/ dev/ACM0),bossac必須以root身份運行(sudo)。

經過幾天玩ASF庫提供的示例,您將能夠使用一小部分頭文件(只有基本定義,如寄存器名稱,位函數名稱在寄存器中...)來幫助您自己做所有的事情。我個人甚至不再使用'司機'檔案。我用我自己的方法直接訪問寄存器來獲取更小的代碼。