- 相關(guān)推薦
利用VC中的通訊控件開(kāi)發(fā)串形通信程序
利用VC中的通訊控件開(kāi)發(fā)串形通信程序
楊峰
河南省水文水資源局
由于需要我們開(kāi)發(fā)了前置機應用程序,實(shí)現功能就是將前置機里存放的信息取出來(lái)用計算機進(jìn)行處理,該程序是利用VC在WIN98下開(kāi)發(fā)而成,對串口的訪(fǎng)問(wèn)是通過(guò)VC中的通訊控件主要完成的。通訊程序開(kāi)發(fā)不僅涉及對串口的訪(fǎng)問(wèn),還牽涉多線(xiàn)程編程24小時(shí)運行等問(wèn)題,是編程中令人頭疼的問(wèn)題。本文中只介紹利用控件對串口的訪(fǎng)問(wèn)。為了說(shuō)明控件的應用,這里特編制兩臺計算機通過(guò)串口進(jìn)行信息交換的小程序,來(lái)介紹通訊控件的具體運用。
1. 控件程序的實(shí)現
啟動(dòng)Microsoft 5.0,利用Appwizards建立一個(gè)新的基于對話(huà)框的project,選名commtest,其中第二步選擇ActiveX Control選項,證明支持控件功能,其他都選擇缺省,這樣就建立了一個(gè)基于對話(huà)框的應用程序。
然后將通訊控件加入應用之中,在對話(huà)框資源上點(diǎn)擊鼠標右鍵,選擇Insert ActiveX Control然后在控件選擇對話(huà)框中選擇Microsoft Communictions Control,Version5.0,然后選擇Insert插入一個(gè)類(lèi)似電話(huà)機的控件,然后點(diǎn)擊該控件就可以修改和設置控件特性。按Add to Project選項中Registered ActiveX Control選項然后在控件選擇對話(huà)框中選擇Microsoft Communictions Control,Version5.0,將通訊控件兩個(gè)程序Mscomm.h和Mscomm.cpp加入project當中。這樣就把通訊控件加入了應用程序當中,可以應用該控件進(jìn)行編程了。
2.通訊控件的各屬性的含義:
w10 屬性
設定值
說(shuō)明
ComPort
1
串口號
Settings
9600,n,8,1
串口的參數設置,依次為波特率、奇偶校驗、數據位數、停止位數
InBufferSize
1024
接收緩沖區大小
InputLen
0
從接收緩沖區讀取的字節數,0表示全部讀取
InputMode
1
接收數據的類(lèi)型,0表示文本類(lèi)型,1表示二進(jìn)制類(lèi)型
OutBufferSize
1024
發(fā)送緩沖區大小
RThreshold
1
設定當接收幾個(gè)字符時(shí)觸發(fā)OnComm事件,0表示不產(chǎn)生事件,1表示每接收一個(gè)字符就產(chǎn)生一個(gè)事件
SThreshold
0
設定在觸發(fā)OnComm事件前發(fā)送緩沖區內所允許的最少字符數,0表示發(fā)數據時(shí)不產(chǎn)生事件,1表示當發(fā)送緩沖區空時(shí)產(chǎn)生OnComm事件
通訊控件的屬性很多,這里只是介紹其中的幾種,可以根據自己的需求選擇加以設置調整,對于其他屬性可以查看VC幫助和聯(lián)機手冊。
通訊控件的工作原理類(lèi)似于中禵cf方式,當有通訊事件發(fā)生時(shí)(如發(fā)送數據、接收數據等),就會(huì )觸發(fā)OnComm事件,在該事件的處理函數中調用GetCommEvent()函數,通過(guò)返回值即可確定是那類(lèi)事件,再作出相應的處理。
3.VC通訊控
【利用VC中的通訊控件開(kāi)發(fā)串形通信程序】相關(guān)文章:
在VC 中用ActiveX控件實(shí)現與單片機的串行通信03-19
利用進(jìn)程間通信實(shí)現程序自我保護分析03-09
利用VB的MSComm控件實(shí)現GPS數據采集03-07
基于Delphi的VCL控件開(kāi)發(fā)與實(shí)現論文01-01
用PComm開(kāi)發(fā)PC機與單片機的通信程序03-19