高手帮忙 !!VB串口通讯问题!!!

来源:百度知道 编辑:UC知道 时间:2024/05/11 00:57:35
上位机与下位机用串口通讯,要制作一组不定长的数据包,一个起始,一个地址,一个命令,最后是停止位,中间不定长!!!怎么做这个数据包?高手帮帮忙啊!!!救命!!!!
我要发的是16进制。那边接收的也是16进制,发送的过程就不知道了!!但是端口设置是300,8,n,1,我就是想知道怎么做成数据包!!!谢谢了!!!数据包的内容是(AA 82 02 00 00 00 2E 55)!00 00 00 2E是下位机要的数据,前3和最后一个是通讯用的!帮我看看!!还有加分!!

发送还是接收?
用ASCII码还是二进制?
不管如何,使用字符串连接方式组成字符串数据包。
补充:
Option Explicit
Dim Data As String
Dim Send_data(7) As Byte

Private Sub cmdSend_Click()
Send_data(0) = &HAA
Send_data(1) = &H82
Send_data(2) = &H2
Send_data(3) = &H0
Send_data(4) = &H0
Send_data(5) = &H0
Send_data(6) = &H2E
Send_data(7) = &H55
MSComm1.Output = Send_data
End Sub

Private Sub Form_Load()
MSComm1.Settings = "300,N,8,1"
MSComm1.CommPort = 1
MSComm1.PortOpen = True
End Sub

方法2:
Option Explicit
Dim Send_data() As Byte

Private Sub cmdSend_Click()
Dim sj As String
Dim i As Integer
sj = "AA82020000002E55"
ReDim Send_data(Len(sj) / 2 - 1)
For i = 1 To Len(sj) Step 2
Send_data((i - 1) / 2) = Val("&H" & Mid(sj, i, 2))
Next
MSComm1.Output = Send_data
End Sub

Private Sub Form_Load()
MSComm1.