mscomm问题??? |
尚未結案
|
dongbocong
一般會員 發表:18 回覆:12 積分:6 註冊:2004-01-02 發送簡訊給我 |
VB的一段程序,如何用delphi來實現,謝謝!!! Dim cmd(3) As Byte
Dim data() As Byte
Dim t1 As Single
Dim i As Integer
'清除数入缓冲区
data = MSComm1.Input
cmd(0) = Asc("r")
cmd(1) = mSlave_Address
cmd(2) = 13
cmd(3) = 10
'发送命令
MSComm1.Output = cmd
t1 = Timer
'等待到接收到响应或超时
Do While MSComm1.InBufferCount < 34
If (Timer - t1) > 0.1 Then
Exit Do
End If
Loop
If (MSComm1.InBufferCount >= 34) Then
MSComm1.InputLen = 34
data = MSComm1.Input
'收到响应
labInfo.Caption = "通讯正常"
labInfo.ForeColor = vbBlack
For i = 0 To 15
labCounter(i).Caption = CStr(data(i * 2) * 256 data(i * 2 1))
Next
Else
Debug.Print MSComm1.InBufferCount
labInfo.Caption = "通讯超时"
labInfo.ForeColor = vbRed
For i = 0 To 15
labCounter(i).Caption = "###"
Next
End If
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |