Arduinoでモジュール化されたコードを書くには?

モジュールを分離したプログラムを作りたいのですが、Arduino IDEで可能でしょうか?

ArduinoのスケッチにはLibrariesを含めることができます(https://www.arduino.cc/en/Guide/Libraries を参照)。

Arduino IDEで動作させるためには、このようなライブラリは、特定のフォルダ構造と命名規則(上記のガイドに記載されています)に準拠することが必要です。

それ以外は、他の言語でのモジュール化されたコードと同様です。Arduinoのライブラリで一般的な言語はC++です。

Arduino IDEをインストールすると、すでに多くのライブラリがプリインストールされているので、それを見て、そこから進めていくことができます。

サンプルスケッチ(メニューの"Examples"から)に目を通すことをお勧めします。スケッチの先頭に#includeステートメントがある場合、内部動作について理解を深めるために、次にどこを見ればよいかのヒントがあります。

解説 (0)
ソリューション

Arduinoのライブラリは自分で作ることもできますが、再利用可能なコードを作る簡単な方法は、再利用可能にしたいコードを含むヘッダ(.h)ファイルを作成することです。

具体的には、Arduino IDEで create a new tabfoo.h という名前を付け、メインタブで #include "foo.h" をコードの先頭に追加します。これは、基本的に foo.h のコードを ビルド処理 の間にあなたのコードにコピーペーストするものです。実行は簡単ですが、より複雑なコードを整理するのに役立ちますし、あなたの場合、コードの再利用にも役立ちます。

代わりに、"通常のArduinoコードファイル(拡張子なし)、Cファイル(.c拡張子)、C++ファイル(.cpp)、ヘッダーファイル(.h).&quotを使用することができます。

ヘッダーファイルは、#include "Arduino.h" を追加しないと delay()Serial などの典型的なArduinoのコマンドや機能にアクセスすることができないので、注意が必要です。ただし、IDEのバージョンが1.0未満の場合は、#include "WProgram.h"を使用します。これにより、これらの関数にアクセスすることができます。

解説 (0)

スケッチコードは、新しいタブ (ファイル) ファイル名の拡張子や .ino がないファイル (source) を作成することによって、簡単に複数のファイルに分割することができます。Arduino IDEがこれらのファイルを結合してビルドするので、#includeは必要ありません。

また、.h/.c/.cppをモジュールとして使用する方法については、上記のリンクを参照してください。

解説 (0)