VB串口通信问题,为什么发一个H要在前面加05 57 01 03 00 48 04 1C,不可以直接发48?
'以下为测试单片机的程序'发送字符串“Hello”'055701030048041C发送'H'ASCII码"48"'0557010400650436发送'e'ASCII码...
'以下为测试单片机的程序
'发送字符串“Hello”
'05 57 01 03 00 48 04 1C 发送'H' ASCII码"48"
'05 57 01 04 00 65 04 36 发送'e' ASCII码"65"
'05 57 01 05 00 6c 04 3e 发送'l' ASCII码"6c"
'05 57 01 06 00 6c 04 3d 发送'l' ASCII码"6c"
'05 57 01 07 00 6f 04 3f 发送'o' ASCII码"6f"
'05 52 01 03 00 01 04 50 读取地址03H中的值
Private Sub CmdTest_Click()
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H3) & Chr(&H0) & Chr(&H48) & Chr(&H4) & Chr(&H1C)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H4) & Chr(&H0) & Chr(&H65) & Chr(&H4) & Chr(&H36)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H5) & Chr(&H0) & Chr(&H6C) & Chr(&H4) & Chr(&H3E)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H6) & Chr(&H0) & Chr(&H6C) & Chr(&H4) & Chr(&H3D)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H7) & Chr(&H0) & Chr(&H6F) & Chr(&H4) & Chr(&H3F)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H52) & Chr(&H1) & Chr(&H3) & Chr(&H0) & Chr(&H1) & Chr(&H4) & Chr(&H50) 展开
'发送字符串“Hello”
'05 57 01 03 00 48 04 1C 发送'H' ASCII码"48"
'05 57 01 04 00 65 04 36 发送'e' ASCII码"65"
'05 57 01 05 00 6c 04 3e 发送'l' ASCII码"6c"
'05 57 01 06 00 6c 04 3d 发送'l' ASCII码"6c"
'05 57 01 07 00 6f 04 3f 发送'o' ASCII码"6f"
'05 52 01 03 00 01 04 50 读取地址03H中的值
Private Sub CmdTest_Click()
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H3) & Chr(&H0) & Chr(&H48) & Chr(&H4) & Chr(&H1C)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H4) & Chr(&H0) & Chr(&H65) & Chr(&H4) & Chr(&H36)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H5) & Chr(&H0) & Chr(&H6C) & Chr(&H4) & Chr(&H3E)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H6) & Chr(&H0) & Chr(&H6C) & Chr(&H4) & Chr(&H3D)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H57) & Chr(&H1) & Chr(&H7) & Chr(&H0) & Chr(&H6F) & Chr(&H4) & Chr(&H3F)
Call delay
MSComm1.Output = Chr(&H5) & Chr(&H52) & Chr(&H1) & Chr(&H3) & Chr(&H0) & Chr(&H1) & Chr(&H4) & Chr(&H50) 展开
展开全部
在串口通讯中,为了保证通讯的稳定,有效的降低误码率,一般采用规定的通讯协议来传输数据
'05 57 01 03 00 48 04 1C 发送'H' ASCII码"48"
'05 57 01 04 00 65 04 36 发送'e' ASCII码"65"
'05 57 01 05 00 6c 04 3e 发送'l' ASCII码"6c"
'05 57 01 06 00 6c 04 3d 发送'l' ASCII码"6c"
'05 57 01 07 00 6f 04 3f 发送'o' ASCII码"6f"
'05 52 01 03 00 01 04 50 读取地址03H中的值
通过观察我们可以了解到大致的协议
字节1:05 协议引导字节
字节2:57 ‘W'字符,表示发送 52 ’R'字符 表示读取
字节3:01 固定数,也可能是表示有效数为一字节
字节4:03 应该是数据的位置
字节5:00 固定
字节6:48 要发送的有效数据
字节7:04 固定
字节8:1C 校验和,采用异或校验
'05 57 01 03 00 48 04 1C 发送'H' ASCII码"48"
'05 57 01 04 00 65 04 36 发送'e' ASCII码"65"
'05 57 01 05 00 6c 04 3e 发送'l' ASCII码"6c"
'05 57 01 06 00 6c 04 3d 发送'l' ASCII码"6c"
'05 57 01 07 00 6f 04 3f 发送'o' ASCII码"6f"
'05 52 01 03 00 01 04 50 读取地址03H中的值
通过观察我们可以了解到大致的协议
字节1:05 协议引导字节
字节2:57 ‘W'字符,表示发送 52 ’R'字符 表示读取
字节3:01 固定数,也可能是表示有效数为一字节
字节4:03 应该是数据的位置
字节5:00 固定
字节6:48 要发送的有效数据
字节7:04 固定
字节8:1C 校验和,采用异或校验
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询