【Arduino】ArduinoのSoftwareSerialを試してみた
はじめに
こんにちは、がんがんです。
Arduinoには2つのSerial通信が存在します。
1つは0ピン、1ピンを使うばいいのSerial通信。もう1つはSoftwareSerial
というライブラリを用いる場合です。
今回はこちらのSoftwareSerial
を使用した時の備忘録です。
躓いた時に参考にした記事
実験
今回行っていく実験は2つのArduino間で通信を行うというものです。
ライブラリはSoftwareSerial
を使用しました。
コード
送信側
/* * SoftwareSerial_TX.ino * 送信側 */ #include <SoftwareSerial.h> SoftwareSerial mySerial(2, 3); int LED = 13; int cnt = 0; void setup(){ Serial.begin(9600); mySerial.begin(9600); pinMode(LED, OUTPUT); } void loop(){ cnt++; Serial.print("counter = "); Serial.println(cnt); mySerial.listen(); mySerial.write(cnt); if(cnt % 2){ digitalWrite(LED, LOW); }else{ digitalWrite(LED, HIGH); } delay(1000); }
受信側
/* * SoftwareSerial_RX.ino * 受信側 */ int LED = 13; void setup() { Serial.begin(9600); pinMode(LED, OUTPUT); } void loop() { while(Serial.available()){ byte inChar = (byte)Serial.read(); if(inChar % 2){ digitalWrite(LED, HIGH); }else{ digitalWrite(LED, LOW); } delay(10); } }
まとめ
今回はSoftwareSerial
について実験してみました。
PySerialを実験した際に1度扱ってみたかったので、実験出来てよかった。