电竞比分网-中国电竞赛事及体育赛事平台

分享

通訊串口:VB/C++/C#串口通信源代碼+詳細注釋用的是axMSComm控件,通信方式...

 orion360doc 2010-12-27

VB
If MSComm1.PortOpen = True Then MSComm1.PortOpen = False
MSComm1.CommPort = i1
MSComm1.PortOpen = True

    MSComm1.InputMode = comInputModeBinary
MSComm1.InBufferCount = 0
MSComm1.InputLen = 0
MSComm1.Settings = "9600,N,8,1"
MSComm1.RThreshold = 1
MSComm1.OutBufferCount = 0

C++
/****************************************************************/
//串行口初始化
if(m_ctrlComm.GetPortOpen())    //如果串口已經(jīng)打開,則關(guān)閉。
m_ctrlComm.SetPortOpen(FALSE);
m_ctrlComm.SetCommPort(1);     //選擇com1
if( !m_ctrlComm.GetPortOpen())
m_ctrlComm.SetPortOpen(TRUE);   //打開串口
else
AfxMessageBox("不能打開串行口!");
m_ctrlComm.SetSettings("9600,n,8,1"); //波特率9600,無校驗,8個數(shù)據(jù)位,1個停止位
m_ctrlComm.SetInputMode(1);     //1:表示以二進制方式檢取數(shù)據(jù)
m_ctrlComm.SetRThreshold(1);     //參數(shù)1表示每當串口接收緩沖區(qū)中有多于或等于1個字符時將引發(fā)一個接收數(shù)據(jù)的OnComm事件
m_ctrlComm.SetInputLen(0);     //設(shè)置當前接收區(qū)數(shù)據(jù)長度為0
m_ctrlComm.GetInput();      //先預讀緩沖區(qū)以清除殘留數(shù)據(jù)
/****************************************************************/

C#
if (this.axMSComm1.PortOpen == true)
this.axMSComm1.PortOpen = false;
this.axMSComm1.CommPort = 1;//端口
this.axMSComm1.Settings = "9600,n,8,1";//通信參數(shù)   
this.axMSComm1.InputMode = MSCommLib.InputModeConstants.comInputModeBinary;//接收數(shù)據(jù)的類型
this.axMSComm1.RThreshold = 1; //接收緩沖區(qū)中接收到一個字符,就產(chǎn)生一次OnComm事件
//this.axMSComm1.OnComm += new EventHandler(axMSComm1_OnComm); //注冊一個OnComm事件
this.axMSComm1.SThreshold = 0;//當發(fā)送緩沖區(qū)中字符數(shù)小于該值時,MSComm控件設(shè)置Commevent屬性為ComEvSend,并產(chǎn)生OnComm事件。若Sthreshold屬性設(shè)置為0,則不產(chǎn)生OnComm事件
this.axMSComm1.RTSEnable = true;//啟用請求發(fā)送
this.axMSComm1.DTREnable = true;//接收就緒            
this.axMSComm1.InputLen = 0;//一次從接收緩沖區(qū)中讀取字節(jié)數(shù),// 使用Input時為讀取全部資料
this.axMSComm1.NullDiscard = false;
this.axMSComm1.PortOpen = true; //打開端口

來自: http://hi.baidu.com/mrmobilerobot/blog/item/d8b3577ba6e21dff0bd18779.html

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多