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

串口通信代码不懂,求高手帮忙解答一下Bytes数组是写了什么?&H80是什么意思?

串口通信代码不懂,求高手帮忙解答一下Bytes数组是写了什么?&H80是什么意思?
--释放按钮 代码
Private Sub Release_Click()
ReDim Bytes(8) As Byte
Bytes(0) = &H80
Bytes(1) = &H30
Bytes(2) = &HF1
Bytes(3) = &H2
Bytes(4) = &H31
Bytes(5) = &H2
Bytes(6) = &HD6
 Bytes(7) = WriteCOM32Byte(Bytes, 7)
End Sub

窗体启动时,启用定时时代码
Private Sub Timer2_Timer()
timebase = timebase + SCOPTIMEBASE
ReDim Bytes(10) As Byte
Bytes(0) = &H80
Bytes(1) = &H30
Bytes(2) = &HF1
Bytes(3) = &H4
Bytes(4) = &H21
Bytes(5) = &H4
Bytes(6) = &H0
Bytes(7) = &H1
Bytes(8) = &HCB
'MSComm1.Output = Bytes
Bytes(9) = WriteCOM32Byte(Bytes, 9)
End Sub

--------------------编程问答-------------------- &H80是16进制数,10进制为128 --------------------编程问答-------------------- 这个16进制,当然是了解些,我更想知道:

这个Bytes(10)数组存储了16进制后,一般是做什么作用?有何用处? --------------------编程问答-------------------- 应该是和外设紧密相关的吧,不同的设备,命令码不同 --------------------编程问答--------------------
引用 2 楼 yiyaozjk 的回复:
这个16进制,当然是了解些,我更想知道:

这个Bytes(10)数组存储了16进制后,一般是做什么作用?有何用处?


所谓Bytes数组是指储存(0-255)的10进制数的数组。在串口通信中用于2进制通信。

适当范围内的数字,前缀以 &H,可以直接表示十六进制数字。例如,十六进制表示法的 &H10 代表十进制的 16。
--------------------编程问答-------------------- &H80 应该是通讯协议中的起始字节。另外,&H30, &HF1 应该都是协议定义字节。

另外,Bytes(8) 是以上各字节相加模 &HFF 的结果,作为检错码。

串口是一个物理层通讯协议,往往需要自定义的数据链路层协议的配合。收发双方遵循统一的协议,来正确完成通讯。
--------------------编程问答-------------------- 具体什么含义这个的看通信协议了
补充:VB ,  COM/DCOM/COM+
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,