Arduino Uno 用の非常に単純なコードがあります。SoftwareSerial lib を使用します。
#include <SoftwareSerial.h>
#define rxPin 6
#define txPin 7
SoftwareSerial mySerial(rxPin, txPin);
void setup() {
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT);
Serial.begin(9600);
mySerial.begin(2400);
Serial.println("Serial init");
}
void loop() {
delay(2000);
Serial.println("Serial link started");
mySerial.write(0x15);
if(mySerial.available() ){
int incomingByte = mySerial.read();
Serial.print(incomingByte);
Serial.print(" is here");
}
}
rxPin と txPin は互いに直接接続されています。Arduino も USB 経由で PC に接続されています。mySerial.available() ループから応答がありません。mySerial.read() は -1 を返します。誰が知っていますか、どこに問題があるのでしょうか? SoftwareSerial が機能しません。