😊
Arduino,L293Dモータードライバーシールドの構成でSoftwareSerialでデバッグログ
背景
L293Dモータードライバーシールドには、ArduinoのAnalog PinのA0-A5とGNDのThrough Holeが存在するので、それをデバッグシリアルとして使うことができます。(USBシリアル側は、モーター制御信号として使用予定)
適当なAnalog PinとGNDにUSB TTL シリアル変換ケーブルを接続した上で、
RX側を入力に設定してやればOK。
実装
#include <SoftwareSerial.h>
const byte rxPin = A5;
const byte txPin = A4;
// SoftwareSerialのインスタンスを生成
SoftwareSerial DebugSerial(rxPin, txPin);
// デバッグログマクロ
#define Log(txt) DebugSerial.println(txt);
void setup() {
// A5ピン(RX)を入力に設定
pinMode(rxPin, INPUT);
DebugSerial.begin(115200);
}
void loop() {
static int count = 0;
Log("count = " + String(count++));
}
出力
count = 23732
count = 23733
count = 23734
count = 23735
count = 23736
count = 23737
count = 23738
count = 23739
count = 23740
count = 23741
Discussion