|
今天,我們共同學習在Windows環(huán)境下設計串口通信程序,利用Microsoft公司提供的ActiveX控件MSComm.ocx。 首先,要對MSComm控件的基本知識有所了解。 一個MSComm控件僅對應一個串行端口。如果應用程序需要訪問多個串口,必須使用多個控件。 ![]() 9)Sthreshold:該屬性為一閥值,當發(fā)送緩沖區(qū)中字符數(shù)小于該值時,MSComm控件設置Commevent屬性為ComEvSend,并產(chǎn)OnComm事件,若Sthreshold屬性設置為0,則不產(chǎn)生OnComm事件。要特別注意的是,僅當發(fā)送緩沖區(qū)中字符數(shù)小于該值的瞬間才產(chǎn)生OnComm事件,其后就不再產(chǎn)生OnComm事件。 10)Handshaking:用于設置或返回硬件握手協(xié)議,即PC機和通信設備之間為了控制流速而設定的內(nèi)部協(xié)議,取值及其含義如表2-2所示。Value默認值為ComNone,無握手協(xié)議。 ![]() 12)InBufferCount:設置或返回接收緩沖區(qū)等待計算機接收的字節(jié)數(shù)。 13)OnBufferSize:設置或返回發(fā)送緩沖區(qū)的大小,默認值為512B。 14)OnBufferCount:設置或返回發(fā)送緩沖區(qū)等待計算機發(fā)送的字節(jié)數(shù)。 ![]() ![]() MSComm控件只有一個事件,即OnComm事件。當CommEvent屬性的值發(fā)生變化時,就產(chǎn)生OnComm事件,標志發(fā)生了一個通信事件或一個錯誤。在事件處理程序設計中可以根據(jù)CommEvent屬性值來執(zhí)行不同的操作。
'程序初始化Private Sub Form_Load() MSComm1.CommPort = 1 '通信口 MSComm1.Settings = '9600,E,7,1' '串口參數(shù)設置 MSComm1.Handshaking = 0 '握手信號 MSComm1.InputLen = 0 '設置和返回input每次讀出的字節(jié)數(shù),設為0時讀出接收緩沖區(qū)中的內(nèi)容 MSComm1.OutBufferCount = 0 '設置和返回發(fā)送緩沖區(qū)的字節(jié)數(shù),設為0時清空發(fā)送緩沖區(qū) MSComm1.InBufferCount = 0 '設置和返回接收緩沖區(qū)的字節(jié)數(shù),設為0時清空接收緩沖區(qū) MSComm1.PortOpen = True '打開串口 InAlarm.FillColor = QBColor(10) '輸入信號指示燈,初始綠色 OutAlarm.FillColor = QBColor(10) '輸出信號指示燈,初始綠色End Sub學習只要態(tài)度認真,就一定能夠學有所成! 信息技術時代,掌握編程至關重要! ![]() |
|
|
來自: 阿明哥哥資料區(qū) > 《16.工藝.編程.VB.軟件》