Arduinoで電子制御⑥ シリアル通信で操る

シリアル通信について

どんな通信?

シリアル通信は、伝送路上をデータを直列に送受信する通信方式で、多くのマイコンやアプリケーションを組み合わせて、データの橋渡しをすることができます。片側一車線の道路をイメージするとわかりやすいかもしれません。

これをマスターすると、Arduinoでセンサから取得したセンサからのデータをPC上で視覚的に表示したり、離れた位置にある複数のArduino同士でデータをやりとりしたりできるようになります。

とはいってもいきなり複数のガジェットを組み合わせて通信するのはハードルが高いので、今回はPCとArduinoの間でシリアル通信をしてみます。

何をするのか

PCとArduino間でシリアル通信をして、PCに接続されたキーボードからの文字入力によってArduinoを制御してみましょう。

例えば、

キーボードから”H”を入力 → ArduinoのLEDが点灯
キーボードから”L”を入力 → ArduinoのLEDが消灯

といった具合です。

 

配線・プログラム

配線

Arduinoの内蔵LEDで確認できるので特に配線はしなくても大丈夫です。それじゃ味気ない!という場合はお好みでLEDを配線してもいいと思います。

プログラム

プログラムは以下のようにしてみました。

if文で記述もできますが、分岐が増えていくと構文がごちゃつくので個人的にはswitch文の方が好みです。

動作確認

シリアルモニタから文字を送信

プラグラムを書き込んだら、Arduinoのシリアルモニタを起動してキーボード入力で’H’、’L’を送信してみましょう。Arduino内蔵のLEDが点灯、消灯すればOKです。

これを応用すれば、フルカラーLEDの制御なんかももっと面白くなりそうです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です