C ++以外のプログラミング言語を使用してArduinoをプログラミングできますか?もしそうなら、どのプログラミング言語ですか?コードをコンパイルしてArduinoにロードするには、どのソフトウェアが必要ですか?
C ++以外のプログラミング言語を使用してArduinoをプログラミングできますか?もしそうなら、どのプログラミング言語ですか?コードをコンパイルしてArduinoにロードするには、どのソフトウェアが必要ですか?
回答:
よく知られているもの:
理論的には、avr-gccを拡張して他の言語をサポートできるはずですが、これは簡単なことではありません。C ++は、それは、新しいオブジェクトをインスタンス化するために落胆していてもして、例えば-私はC以外の言語のサポートは、一般的に言語コンポーネントのいくつかはかなり重いの制限が付属していることを警告もすべきmalloc
とfree
メモリ空間とサイクルの両方で非常に高価です。
Googleを使用するほかに、次の参照情報が適用されます。ここをクリックしてください。
avr-g ++はすべての標準C / C ++コンストラクトをサポートする必要があるため、インラインアセンブリをコーディングできます。この arduino.ccフォーラムスレッドの詳細
誰もAVRアセンブリについて言及していないことに驚いています!
多くの場合、アセンブリは最も興味深い、または簡単なプログラミング方法とは考えられていませんが、それでもすべてのAVRベースのarduinoで100%可能です。SAMボードはこのフレーバーではおそらく動作しませんが、プログラミングでアセンブリを使用することは可能です。
すべてのArduinoボード(投稿時点)は、Atmelベースのチップ用に作成されたAtmel Studioを介したアセンブリプログラミングをサポートしています。
アセンブリは、すべてのAtmelデバイスによって単純にサポートされており、動作するためにブートローダーを必要としないため、すべてのプログラムは本質的にリアルタイムです。
__asm__("Assembly code here")
インラインアセンブリを任意のスケッチに追加する理由です。しかし、ほとんどのプログラムでは、この方法ではプラットフォームに依存しないようにするのは難しいため、これは悪い考えです。