2011年11月9日 星期三
VB RS232接收資料實作
引用:
--
1.表單中加入 MSComm
2.Form_Load中加入下列程式碼
Private Sub Form_Load()
'設定comport的位置
MSComm1.CommPort = 1
'檢查一下Com1是否被使用了,若被使用了,把Com1關閉並重設.
If (MSComm1.PortOpen) Then MSComm1.PortOpen = False
'設定comport的讀取速率,注意RS232傳送速率,有的是9600,有的是1200,看你的Device而定
MSComm1.Settings = "9600,N,8,1"
'設定DTR線路為高電位
MSComm1.DTREnable = True
'設定讀取的長度
MSComm1.InputLen = 33
'當緩衝區有33bytes則觸發事件
MSComm1.RThreshold = 33
'交握模式設定
MSComm1.Handshaking = MSCOMMLIB.HandshakeConstants.comXOnXoff
'資料格式,走33byte,text模式
MSComm1.InputMode = MSCOMMLIB.InputModeConstants.comInputModeText
'null一樣照收
MSComm1.NullDiscard = False
'打開comport 1
MSComm1.PortOpen = True
Timer1.Enabled = True
MSComm1.RTSEnable = True
End Sub
3.加入MSComm1_OnComm 接收事件
Private Sub MSComm1_OnComm()
Dim TempStr as String
If MSComm1.InBufferCount = 33 Then
TempStr = MSComm1.Input
debug.print "接收資料為:" & TempStr
'這裡就寫你要的邏輯,看怎麼處理資料嚕
end if
End Sub
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言