USBポート経由でRaspberry piに接続されたArduino Nanoがあり、RFIDカードのIDである着信シリアルデータを読み取ろうとしています。これが私のphp_serialコードです
<?php
include 'PhpSerial.php';
$serial = new PhpSerial;
// まず、デバイスを指定する必要があります。これは、Linux と Windows の両方で機能します (// Linux シリアル デバイスが COM1 の /dev/ttyS0 である場合など)。
$serial->deviceSet("/dev/ttyUSB0");
// ボーレート、パリティ、長さ、ストップ ビット、フロー制御を変更できます
$serial->confBaudRate(9600);
$serial->confParity("none");
$serial->confCharacterLength(8);
$serial->confStopBits(1);
$serial->confFlowControl("none");
// 次に、それを開く必要があります
$serial->deviceOpen();
// ものを読む
$message = $serial->readPort();
echo ( "<br>Received: $message<br>" );
$serial->deviceClose();
?>
ブラウザーでページを開きましたが、データが表示されません。それはただの空白です。
ところで-Arduinoコード:
void setup() {
Serial.begin(9600); // for testing and debugging
SPI.begin(); // run SPI library first; if not, RFID will not work
mfrc522.PCD_Init(); // initializing RFID, start RFID library
pinMode(led_pos, OUTPUT);
pinMode(led_neg, OUTPUT);
}
// メインプログラム
void loop() {
int succesRead = getID(); // read RFID tag
}
// 機能
void redLED(){ // red LED on, green LED off
digitalWrite(led_pos, LOW);
digitalWrite(led_neg, HIGH);
}
void greenLED(){ // red LED off, green LED on
digitalWrite(led_pos, HIGH);
digitalWrite(led_neg, LOW);
}
int getID() { // Read RFID
// Getting ready for Reading PICCs
if ( ! mfrc522.PICC_IsNewCardPresent()) { //If a new PICC placed to RFID reader continue
return 0;
}
if ( ! mfrc522.PICC_ReadCardSerial()) { //Since a PICC placed get Serial and continue
return 0;
}
readTag = "";
for (int i = 0; i < 4; i++) { //
readCard[i] = mfrc522.uid.uidByte[i];
Serial.print(readCard[i], DEC);
readTag=readTag+String(readCard[i], DEC);
}
Serial.println("");
mfrc522.PICC_HaltA(); // Stop reading
return 1;
}
編集: Arduino からのデータはまだ Web ページに表示されません。