硬體採用的是「有人公司」的串列埠轉wifi模組。該模組可以實現串列埠透傳。
軟體如下
硬體模組設定為 tcp server
using最後實現了system;
using
system.windows.forms;
using
system.io.ports;
using
system.io;
using
system.net;
using
system.net.sockets;
using
system.threading;
using
system.text;
namespace
socket串列埠
//////
開啟軟體載入專案
/// ///
///private
void frmmain_load(object
sender, eventargs e)
#region 串列埠部分
#region 定義變數serialport sp = new
serialport();
bool isopen = false;//
開啟串列埠標誌位
#endregion
//////
載入當前系統當中可用的串列埠
/// void
serialport()
foreach (string port in
system.io.ports.serialport.getportnames())
//新增波特率
cbx_baude_rate.items.add("
1200");
cbx_baude_rate.items.add(
"2400");
cbx_baude_rate.items.add(
"4800");
cbx_baude_rate.items.add(
"9600");
cbx_baude_rate.items.add(
"19200");
cbx_baude_rate.items.add(
"38400");
cbx_baude_rate.items.add(
"43000");
cbx_baude_rate.items.add(
"56000");
cbx_baude_rate.items.add(
"57600");
cbx_baude_rate.items.add(
"115200");
cbx_baude_rate.selectedindex = 3
; cbx_port.selectedindex = 0
; }
#region 開啟和關閉串列埠資源
private
void
setportproperty()
void
openserialport()
catch
}void
closeserialport()
catch
}private
void btn_open_port_click(object
sender, eventargs e)
}//////
串列埠接收字元事件
/// ///
///private
void sp_datareceived(object
sender, serialdatareceivedeventargs e)
void show_port_msg(string
str)
\r\n");
}private
void btn_close_port_click(object
sender, eventargs e)
}#endregion
//////
在串列埠接收視窗顯示當前接收到的資料
/// ///
接收到的具體資料
public
void showtxt(string
a)
}#region 傳送視窗是否有資料 bool型別 checksenddata()
private
bool checksenddata()//
檢查傳送資料視窗是否有資料
private
void btn_com_port_send_click(object
sender, eventargs e)
else
}catch
}#endregion
#region 傳送串列埠資料 btn_send_click事件
private
void btnsend_click(object sender, eventargs e)//
傳送串列埠資料
else
catch
(exception)}}
else
}#endregion
#endregion
#region socket部分
#region socket相關的定義變數socket socketsend;
#endregion
//////
socket傳送資料
/// ///
///private
void btn_send_click(object
sender, eventargs e)
//////
建立socket連線
/// ///
///private
void btn_start_click(object
sender, eventargs e)
catch
}void showmsg(string
str)
\r\n");
}//////
不停的接受伺服器發來的訊息
/// void
recive()
string s = encoding.utf8.getstring(buffer, 0
, r);
showmsg(socketsend.remoteendpoint + "
:" +s);
}catch}}
#endregion
}}
串列埠與socket通訊
到資訊。對於那種需要很長時間才能完成的操作來說,重疊i o機制尤其有用,因為發起 重疊操作的執行緒在重疊請求發出後就可以自由地做別的事情了。在windows nt 2000上,提供真正可擴充套件的i o模型就是使用完成埠 completion port 的重疊i o。可以把完成埠看成系統維護的乙個佇...
串列埠轉socket通訊
做了乙個串列埠轉socket的通訊。大概意思就是開發板串列埠收到的資訊。通過socket傳出去 這裡因為是要用到socket。所以要實現wifi模組的sta模式。因為我這是單串列埠線。我實現的是串列埠線實現接收到的資訊。遠端網路ssh登陸的開發板。給串列埠傳資訊我用的w7端的串列埠除錯助手。sock...
串列埠與socket通訊
2.完成埠建立成功後,在socket和完成埠之間建立關聯。再次呼叫createiocompletionport 函式,這一次在第1個引數filehandle傳入建立的socket控制代碼,引數existingcompletionport 為已經建立的完成埠控制代碼。以下 建立了乙個socket並把它...