Arduino IDE
Arduinoを使った開発にはPCが必要です。これを読んでいる「普通の人」は、Windows 10のPCあるいはMacで仕事をしているものと思いますので、Arduino IDEをインストールしてください。現在Ver. 1.8.10のようです。管理人はまだ1.6.12ですが・・・
https://www.arduino.cc/en/main/software
Arduinoの接続
ArduinoをUSBケーブルでPCにつないでください。
電源はUSBから供給されます(DC 5V)。ArduinoのメインプロセッサであるAtMega328とPCがUSBで通信するために、Arduino UNOには別途、シリアル-USB変換チップが載っています。おそらくケーブルで繋いだだけで、ドライバは勝手にインストールされると思います。数秒たって認識が完了したら、
・「ツール」->「ボード」からArduino UNOを選ぶ
・「ツール」->「シリアルポート」からCOM X(XはPCが勝手に決める番号)を選ぶ
これで接続完了です。なお、Arduino UNO以外を使う場合、この「ボード」から選び直せばよいだけです。
注意:
・違うタイプのArduinoを選択した後など、もう一度上記が必要です。スケッチ(プログラムコードのこと)を送ろうとしたらエラーが出る場合、このようなうっかりミスであることが多いです。
・つないでもCOM Xとして現れない場合、一度外してもう一度試してみるなどしてみる。ちなみに、本当にボードがイカれた場合(うっかり電源を+/-間違えてショートさせたなど)は、当然のことながら認識されなくなります。不可逆的に壊さなくても、Arduino端子におかしなものを接続していたりすると認識されないこともあります。
さて、最初はこのようなコードが現れていると思います。
C言語では、「関数」と呼ばれる一連の命令群を組み合わせてプログラムが進んでいきます。通常のC言語ではmain関数という、中心になる命令群があるのですが、Arduinoではsetup()とloop()の二つが基本となります。これらの名前に続けて{}で囲まれた部分が、それぞれの関数の中身になります。最初からコメントが英語で入っているように、Arduinoは立ち上がる、あるいはリセットされると、まずsetup()を1度だけ実行し、その後、無限にloop()を繰り返し実行し続けます。setup()には各種設定などを書き、loop()にはArduinoにさせたい仕事そのもの(たとえば、電圧を読んで記録する、など)になることが多いです。
ここで、以下のコードを入力してください。各文の意味はコード中にコメントとして書いてあります。
いくつか注意点:
・printとprintlnの違い:後者は最後に改行が入る。
・前にも書きましたが、C/C++では文末にはセミコロン「;」を忘れず
・C言語ではスペースや改行は無視されます。文の途中で改行しても(ふつうしませんが)大丈夫です。
ここまでできたら、Arduino IDEウィンドウの左上のほうにある右向き矢印アイコン(「マイコンボードに書き込む」)をクリックしてください。まずコードのコンパイルが始まり、その次にPCとArduinoの通信が始まります。完了のメッセージがでたら、「ツール」->「シリアルモニタ」を開いてください。以下の図のように、2秒に一回、hogehogehoge…がArduinoからPCに送られます。
これは、プログラムがPC上で実行されているのではなく、ArduinoがPCにテキストを送っているのです。ですので、プログラムファイルがないPCに持っていって接続しても、シリアルモニタを開けばこのようにhogehogehogeと出ます。
最終的にロガーを作る際には、ArduinoをPCから切り離して、ArduinoからSDカードに直接書き込むことになるわけですが、いちいちSDカードを抜いてPCに挿して出力を確認、を繰り返さないで開発を進めるために、SDカードに書き込む内容と同じものをこのシリアルモニタにも出力するようなプログラムを書いていきます。ちなみに「シリアルポートに接続できないときは、このループにトラップされる」というループがありますが、PCから切り離してもここで止まることはありません。シリアルポートはArduino上のチップにあります。なお、正規品のArduinoと互換品のArduinoではシリアル-USBチップが異なることがありますが、通常のWindows10 PC環境ならどちらも相違なく自動で認識されると思います。