PHP和串列埠通訊的方法介紹

2021-06-12 05:34:02 字數 972 閱讀 6356

工作原因,php在部分應用偶爾和串列埠直接通訊,需要和rs232、rs485介面上的資料進行通訊。網上搜尋眾多解決方案,出現很多問題,這裡總結一下php與串列埠通訊的方法大全。

<?php

$c = stream_context_create(array('dio' =>

array(『data_rate』 => 115200,

『data_bits』 => 8,

『stop_bits』 => 1,

『parity』 => 0,

『is_canonical』 => 1)));

if (path_separator != 「;」) else

?>

2.php_ser擴充套件

這是乙個第三方擴充套件,可以在php5.3.3上正常使用,我測試結果是比較穩定,提供了單位元組流通信和非同步通訊。對於單位元組流通信我還專門請教了作者,發現原來可以通過loop讀取資料流的。需要注意的是ser_write()的資料是字元型,但是ser_read()的資料則是10進製。所以傳送的時候最好轉換為hex,接收後由十進位制再轉為十六進製制才能正常使用。

還有就是php_ser作為第三方擴充套件,作者是收費的。免費版本沒有功能限制,只是每次收發位元組數不能超過1024位元組。

function x_get_cgqbh() else

ser_write(「$str」);

sleep(1);

$str = ser_read();

ser_close();

return $str;

#div_code img 

<?

deviceset( ' com2 ' );

$seria --> deviceopen();

$serial -> sendmessage( ' sending a message to the port! ' );

$serial -> deviceclose();

?>

串列埠通訊常識介紹

串列埠角色分析 串列埠在我們嵌入式產品當中,或者說在我們嵌入式產品開發當中,扮演的角色主要有兩個 第乙個是資料傳輸 比如說,這裡有兩個嵌入式裝置,他們可以通過usb,網路,還可以使用我們的串列埠來進行我們的資料傳輸 其次扮演的角色是控制台的角色,我們也不會陌生,我們來看下pc機下的控制台,我們要獲得...

串列埠同步通訊和串列埠非同步通訊

串列埠掃盲貼 現實中不存在絕對精確的時鐘,標稱值同樣是1mhz,發端和接收端的時鐘總會存在差異,如果接收端不進行時鐘同步,而是使用自己本地的時鐘,則足夠長的時間後接收到的資料總會出現不可預知的重複或丟失,導致接收錯誤。因此發端必須將與資料速率相關的時鐘訊號傳輸給接收端,時鐘訊號可以走單獨的訊號線,也...

C 串列埠通訊方法

串列埠通訊 串口號 頻段 指令 private void portcommun string strserialno,int nbaudrate,byte numsw 建立串列埠物件並開啟串列埠 sp new serialport strserialno,nbaudrate,parity.none,...