vb串口通讯发送问题

来源:百度知道 编辑:UC知道 时间:2024/05/10 09:37:16
帮我看看
Dim a As String
Text1.Text = ("80 80")
a = Val("&H" & Text1.Text)
Stop
a = Hex(a)
Stop
为何a数值不对啊,好像是溢出了,
请问如何把十六进制数附值给a,
如,text1.text=("0a ec fe 12 12 12 45 45 99 66")'不限字数
a要等于0a ec fe 12 12 12 45 45 99 66也是十六进制数‘去掉空格
谁帮我看看,回答详细些,谢谢

提供另一种方法:
Private Sub Command1_Click()
Dim i As Integer
Dim sj() As Byte
ReDim sj(Len(Text1) \ 3)
For i = 1 To Len(Text1) Step 3
sj(i / 3) = Val("&H" & Mid(Text1, i, 2))
Next
MSComm1.Output = sj
End Sub

Private Sub Form_Load()
Text1 = "0a ec fe 12 12 12 45 45 99 66"
MSComm1.PortOpen = True
End Sub

Text1.Text = ("80 80") '80 80中间有个空格,无法转换
修改为:
Dim a
Dim I As Integer

a = Split(Text1.Text, " ") '双引号中间为一个空格

For I = 0 To UBound(a)
a(I) = "&H" & a(I)
Next

MSCOMM1.OutPut = a