時(shí)間:2023-11-05 05:00:01 | 來(lái)源:網(wǎng)站運(yùn)營(yíng)
時(shí)間:2023-11-05 05:00:01 來(lái)源:網(wǎng)站運(yùn)營(yíng)
php5.6 如何使用dio?:DIO,`Direct I/O functions`,是一套PHP擴(kuò)展,讀取IO設(shè)備的。它是依賴(lài) C 的 fread 和 fopen,所以不需要裝什么系統(tǒng)擴(kuò)展我用DIO讀過(guò)串口rs232的數(shù)據(jù),非常簡(jiǎn)單。它的數(shù)據(jù)流是這樣的:
外設(shè) => 串口 (USB)=> 驅(qū)動(dòng) => (C語(yǔ)言庫(kù)) => DIO擴(kuò)展 => PHP
這里的外設(shè)可以是樹(shù)莓派、RFID讀卡器等任意設(shè)備,可以看到,需要安裝的僅僅兩個(gè)PHP class utilizing Direct IO to interact with a RS232 serial port是不是相當(dāng)?shù)闹庇^,下面是我的一段讀取代碼
<?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); // 去掉第一位,標(biāo)示ACK,ascii碼值為6 $val = 6; for($i=1 ; $i<strlen($id); $i++) { $val = $val . '_' . dechex(ord($id[$i])); } echo strlen($id).": ".$val."/n"; }
關(guān)鍵詞:使用
客戶(hù)&案例
營(yíng)銷(xiāo)資訊
關(guān)于我們
客戶(hù)&案例
營(yíng)銷(xiāo)資訊
關(guān)于我們
微信公眾號(hào)
版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。