时间:2023-11-05 05:00:01 | 来源:网站运营
时间:2023-11-05 05:00:01 来源:网站运营
php5.6 如何使用dio?:DIO,`Direct I/O functions`,是一套PHP扩展,读取IO设备的。它是依赖 C 的 fread 和 fopen,所以不需要装什么系统扩展我用DIO读过串口rs232的数据,非常简单。它的数据流是这样的:
外设 => 串口 (USB)=> 驱动 => (C语言库) => DIO扩展 => PHP
这里的外设可以是树莓派、RFID读卡器等任意设备,可以看到,需要安装的仅仅两个PHP class utilizing Direct IO to interact with a RS232 serial port是不是相当的直观,下面是我的一段读取代码
<?php require_once __DIR__ . "/vendor/autoload.php"; use /serial/serial as serial; // Open serial connection $serial = new serial("/dev/tty.usbserial", O_RDONLY | O_NONBLOCK | O_NOCTTY); // Set connection options $options = array( "baud" => 9600, "bits" => 8, "stop" => 1, "parity" => 0, ); $serial->set_options($options); while(1) { $id = $serial->read(24); // 去掉第一位,标示ACK,ascii码值为6 $val = 6; for($i=1 ; $i<strlen($id); $i++) { $val = $val . '_' . dechex(ord($id[$i])); } echo strlen($id).": ".$val."/n"; }
关键词:使用