2013-08-30 1 views
19

最近、私はarduinoで遊んでいましたが、arduinoをC++でプログラミングできる方法があるかどうかは疑問でした。私がやってきたことは、vimでC++ /処理言語を使ってプログラミングし、makefileを使ってarduinoにコンパイルしてアップロードすることです。しかし、私の目標は、クラスと、それをプログラムするための偉大なC++の機能(または少なくとも合計)を使用できるようにすることです。最終的に私は生のCでそれをプログラムするのが大好きで、私はちょうどいずれかを行う方法を見つけることにトラブルを抱えているだけです。もし誰かが私を正しい方向に向けることができたり、助けてくれたらいいなぁ。ありがとう! 〜michaelC++でarduinoをプログラミングする方法

+0

thr Arduino **のプログラミング言語は** CまたはC++です。あなたはいつでもクラスを使うことができます。 –

答えて

40

ここは私の経験です:Arduino、センサー、モーター、led、bluetoothを使って、自閉症児のためのロボットスマートなおもちゃを作っています。私は自分のライブラリを書いて、C++を使って必要なものを正確に実行しました。しかし、Arduino IDE Compilerは新しいC++ 11の機能をサポートしていない古いバージョンであることがわかりました。

私はC++ 11コードをコンパイルしてArduinoにアップロードする方法を見つけなければなりませんでした。私はMakefile、acr-gcc 4.8とvoilàが必要でした! makefileジョブはSudar(https://github.com/sudar/Arduino-Makefile)によって実行され、うまく動作します。私はそれを私のプロジェクトのために働かせるために少しカスタマイズしなければならなかった。

ここに私のプロジェクト用に書いたドキュメントがあります。あなたは見てください、それはあなたにとって有用かもしれません。 https://github.com/WeAreLeka/moti/blob/master/INSTALL.md

希望すると助かります! 乾杯:)

EDIT 2014年8月16日:私はたくさんの友人や他の開発者からこれと同じ要求を得たので

が、私は枠組みのいくつかの種類にを設定することを決めました迅速かつ簡単にArduinoプロジェクトを立ち上げて実行してください。

これはBare Arduino Project

は、それがどんな助けになることを願っています!私がより良くできるバグやものが見つかった場合は、記入して発行してください。 :)

+0

@Michaelslecこんにちは!それはしばらくして、私はあなたのアドバイスに従って、今Vimを学んでいると言うことができてうれしいよ:)スピードのためにまだいくつかのSTを使用しているが、私はVimにそれをとてもすごく感じるので、 – ladislas

+0

私はあなたにとても満足しています!私は実際にかなり長い時間Sublime Text 3に切り替えましたが、しばらくしてvimなしでは処理できませんでした。もしあなたが望むなら、私はあなたに私の.vimrcファイルを貸してくれるでしょう。私はそれにいくつかの非常にクールなショートカットの設定があります。また、Arduino以外のC++プログラミングに携わっているなら、私はいくつかのmakefileを作っています。あなたがそれらを見たいならばちょうど午後! Vim rocks! – Michaelslec

+0

@Michaelslec私はあなたが好きかもしれない何かで私の答えを更新しました:)あなたはそれについてどう思いますか教えてください! – ladislas

6

Arduino IDEでサポートされている言語は基本的にC++で、Arduinoプログラマによって実装されたいくつかの追加機能があります。また、スケッチではsetuploopルーチンをコーディングするだけです(さらに高度なプログラマーになるにつれて最終的に得られるいくつかのルーチンがあります)。

ライブラリでクラスを定義し、そのライブラリをArduino IDEを使用して組み込むことができます。 Arduino IDEは、Arduinoのプロセッサ用のコードを作成するAtmelコンパイラを実装しています(いくつかのモデルがあります)。あなたはArduino IDEの外で作業することができます(あなたのように聞こえる)が、正しいAtmelプロセッサーをターゲットとするコンパイラーが必要です。

最後に、C++クラスが大きくなることがあります。したがって、ある時点では、ソースはプロセッサが格納できるものよりも早くなります。だから、アルドゥイノのクラスはまばらでポイントに!

まず、Arduino IDEを使用し、スケッチ(ほとんどはC++です)を記述します。また、CやC++で独自のライブラリをコーディングすることもできます。

関連する問題