為實現Windows的串口通信可用API實現,但十分不便。也可以用Active控件實現。
先在應用程序中插入Active控件Microsoft comm contronl(MSComm)。
SComm控件的屬性
MSComm控件的屬性
CommPort:設置串口號,類型 short :1-comm1 2-comm2.
Settings:設置串口通訊參數,類型 CString :B-波特率 P-奇偶性(N-無校驗,
E-偶校驗,O-奇驗) D-字節有效位數S-停止位。
PortOpen:設置或返回串口狀態,類型 BOOL:TURE-打開 FALSE-關閉。
InputMode:設置從接收緩沖區讀取數據的格式,類型 long: 0-Text 1-Bin.
Input:從接收緩沖區讀取數據 類型 VARIANT。
InBufferCount:接收緩沖區中的字節數,類型:short.
InBufferSize:接收緩沖區的大小,類型:short.
Output:向發送緩沖區寫入數據,類型:VARIANT.
OutBufferCount:發送緩沖區中的字節數,類型:short.
OutBufferSize:發送緩沖區的大小,類型:short.
InputLen:設置或返回Input讀出的字節數,類型:short.
CommEvent:串口事件,類型:short.
程序示例
串口初始化
if(!m_comm.GetPortOpen())
m_comm.SetPortOpen(TURE); /*打開串口
m_comm.SetSettings("4800,n,8,1"); /*串口參數設置
m_comm.SetInputMode(0); /*設置TEXT緩沖區輸入方式
m_comm.SetRthresHold(1); /*每接收一個字符則激發OnComm()事件
接收數據
m_comm.SetInputLen(1); /*每次讀取一個字符
VARINAT V1=m_comm.GetInput(); /*讀入字符
m_V1=V1.bstrval;
發送字符
m_comm.SetOutput(COlevariant("Hello");/*發送“Hello"