这是VB中用MSComm向串口设备传送字符串的代码,在VB中测试通过,我想用在WinCC中,可必须转为VBS脚本才行啊,这是完整的一个点击按钮触发的代码,如下:
Private Sub CommandButton1_Click()
Dim CH() As Byte
Dim CH1(6) As Byte
Dim CH2(5) As Byte
Dim CHECK_SUM As Long
Dim hhxx1, hhxx As String
Dim i, n, Chnum As Long
Dim k, k1 As String
k = readvalue("Fix32.FIX.KJ_1FAIENG[40].F_CV", 2)
k1 = readvalue("Fix32.FIX.KJ_1FAIENG[41].F_CV", 2)
k = Mid(k, 1, 4)
k1 = Mid(k1, 1, 4)
hhxx = "平均温度=" + k + "℃ " + "平均湿度=" + k1 + "%"
Chnum = LenB(StrConv(hhxx, vbFromUnicode)) + 4 + 1
ReDim CH(Chnum)
CH(0) = &HF5
CH(1) = &HC2
CH(2) = &H2
CH(3) = &H2
CH(Chnum - 1) = &H1A
n = 4
For i = 1 To Len(hhxx)
k = Asc(Mid(hhxx, i, 1))
If k > 0 Then
CH(n) = k
n = n + 1
Else
CH(n) = (65536 + k) \ 256
n = n + 1
CH(n) = (65536 + k) Mod 256
n = n + 1
End If
Next i
CH(Chnum - 1) = &H1A
CHECK_SUM = 0
For i = 0 To Chnum - 1
CHECK_SUM = CHECK_SUM + CH(i)
Next i
CH(Chnum) = CHECK_SUM Mod 256
MSComm1.Output = CH
End Sub
其中无非就是一些函数表达式不一样吧,其中
Chnum = LenB(StrConv(hhxx, vbFromUnicode)) + 4 + 1
这个VBS中是不认的,怎么转换呢?谢谢了