当前位置:编程学习 > VB >>

vb 串口通信,如何将以空格分割的数据以16进制的方式发送出去

发送的数据不是固定的是手动输入在文本框中例如在文本框中输入10 11 12 13 14 之前有朋友给出代码是发送固定的数据: Dim bt(0 To 4) As Byte bt(0) = "&H" & "10" bt(1) = "&H" & "11" bt(2) = "&H" & "12" bt(3) = "&H" & "13" bt(4) = "&H" & "14" mscomm1.output=bt 但是发送的数据不是固定的,长度也不是固定的,下面的代码可以将以空格分割的数据全部提取出来,但是取出来之后不知道用怎样发送了? '----------------------------------------------------- t = Split(Text1.Text, " ") For i = 0 To UBound(t) MsgBox t(i) Next
答案:Private Sub Command1_Click()
    Dim t As Variant
    Dim i As Long
    Dim sjSend() As Byte
    t = Split(Text1.Text, " ")
    ReDim sjSend(UBound(t))
    For i = 0 To UBound(t)
        sjSend(i) = "&H" & t(i)
    Next
    MSComm1.Output = sjSend
End Sub
Private Sub Form_Load()
    Text1 = "10 11 12 13 14"
    MSComm1.Settings = "9600,n,8,1"
    MSComm1.PortOpen = True
End Sub
其他:好办,试试如下代码:
dim 发送数据() as byte
t = Split(Text1.Text, " ")
redim 发送数据(0 to ubound(t)
 
For i = 0 To UBound(t)
发送数据(i)="&H" & t(i)
Next
 
mscomm1.output=发送数据 

上一个:谁能给一些java代码的基础练习的步骤吗?谢谢!
下一个:用vb 实现文本框的移动? 求指导

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,