我们正在尝试使用php从RFID读写,目前我们能够设置诸如波特率和优先级之类的东西,但无法写入RFID也无法从RFID读取
下面是我的php代码:if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN')
{
echo "hi Windows/n";
$bbSerialPort = dio_open($portName, O_RDWR);
if($bbSerialPort){
dio_close($bbSerialPort);
}
exec("mode {$portName} baud={$baudRate} data={$bits} stop={$spotBit} parity=n xon=on");
$bbSerialPort;
echo '/nsuccessfull exec';
}
if(!$bbSerialPort)
{
echoFlush( "Could not open Serial port {$portName} ");
exit;
}
$dataToReboot = pack("H*","0205F08A7E");
$bytesSent = dio_write($bbSerialPort, $dataToReboot );
$runForSeconds = new DateInterval("PT5S"); //5 seconds
$endTime = (new DateTime())->add($runForSeconds);
echoFlush( "Waiting for {$runForSeconds->format('%S')} seconds to recieve data on serial port" );
while (new DateTime() < $endTime) {
$data = dio_read($bbSerialPort, 256); //this is a blocking call
echo "<br>"."number";
if ($data) {
echoFlush( "Data Recieved: ". $data );
}
}
echoFlush( "Closing Port" );
dio_close($bbSerialPort);
您在脚本顶部的$bbSerialPort
上调用dio_close
。也就是说,你关闭了与射频识别的连接。关闭连接后,您无法向它发送消息