串口通信中“帧头+节点ID+数据长度+命令(因素ID)+附加数据+校验+帧尾”各部分怎么定义?
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP...
点击进入详情页
本回答由Storm代理提供
展开全部
都是根据实际情况自己编织的协议,不同设备之间通信可以有点区别,下边是我以前做的一个PC机与DSP控制器之间的通信子程序,供您参考,程序的意思是,PC机发一句话给DSP我要读取数据,请准备并发给我,实际是发了一条控制指令。这个结束后,按照协议开始读串口。子程序用VB书写,其中汉字皆为变量名,公共变量,一般为字节型16进制数。
Sub ReadDevice(ByVal 设备号 As Byte, ByVal 命令 As Byte, ByVal 收数据类型 As Byte)
读写标识 = 1 '!
命令字 = 命令 '!
节点号 = 设备号 '!
Dim DSD(4) As Byte
DSD(0) = 帧头 '!
DSD(1) = 设备号
DSD(2) = 命令
DSD(3) = &H0
DSD(4) = 命令
收帧长度 = 收数据类型 + 5 '!
With mian_loop.MSComm1
.RThreshold = 收帧长度
.InBufferCount = 0
.OutBufferCount = 0
.Output = DSD
End With
End Sub
希望能对你有多帮助
Sub ReadDevice(ByVal 设备号 As Byte, ByVal 命令 As Byte, ByVal 收数据类型 As Byte)
读写标识 = 1 '!
命令字 = 命令 '!
节点号 = 设备号 '!
Dim DSD(4) As Byte
DSD(0) = 帧头 '!
DSD(1) = 设备号
DSD(2) = 命令
DSD(3) = &H0
DSD(4) = 命令
收帧长度 = 收数据类型 + 5 '!
With mian_loop.MSComm1
.RThreshold = 收帧长度
.InBufferCount = 0
.OutBufferCount = 0
.Output = DSD
End With
End Sub
希望能对你有多帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-03
展开全部
这就是通信过程中数据的格式嘛
通信协议的内容
多看 协议 的全部内容
通信协议的内容
多看 协议 的全部内容
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询