如何实现串口转CAN的通信
问题描述
- 精选答案
-
远程IO设备实现Modbus通信时,均作为从机,遵循Modbus通信过程,采用了MODBUS-RTU协议的命令子集,使用读寄存器命令(03)和单寄存器设置命令(06)。每消息的开头和结尾至少有3.5个字节时间的间隔。
注:
03命令用于主机读取远程IO设备的采集数据或端口状态;
06命令用于设置设备参数或远程控制IO设备继电器动作;
·
功能码03(读指令)
利用Modbus通信协议的03功能码,读取设备的数值。
主机请求数据格式:从机地址、功能码、起始地址、数据个数及CRC码
例如: 从机地址为01,读取设备寄存器地址=0000的数值(1个数值)。
从机响应数据格式:从机地址、功能码、字节数、数据区及CRC码
寄存器数据为二个字节,高位在前。CRC码都是二个字节,低位在前。
例如: 从机地址为01返回:
01 03 02 DATA0H DATA0L CRCL CRCH
·
功能码06(写指令)
利用Modbus通信协议的06功能码,设置设备的一个寄存器的数值。
主机请求数据格式:从机地址、功能码、寄存器地址、设置的数据及CRC码
常用指令示例
设备串口出厂参数如下:
CRC值的计算可网上搜索CRC在线计算。
以下以设备485地址为1,举例:
1)读设备所有寄存器内容:0001至0016,共22个,每个寄存器内容占2个字节,
上位主机发送:01、 03、 00、 01、 00、 16 、95 、C4
从机设备返回:01、03 、2C、 (44字节数据) 、CRCL 、CRCH
2)读485地址(03读指令)
上位主机发送:01、 03 、00 、01、 00、 01、 D5 、CA
从机设备返回:01 、03、 02、 00 、
01、
79、 84(地址为1)3)设485地址(06写指令)
上位主机发送:00 、06 、00、 01 、00 、0
1 、
18、 1B(设置地址为1)从机设备返回:01、 06 、00 、01、 00、 01 、19 、CA
猜你喜欢内容
-
简单网:构建全网教育数据枢纽,让知识检索化繁为...
简单网:构建全网教育数据枢纽,让知识检索化繁为“简”回答数有0条优质答案参考
-
去三亚有什么好玩的地方
去三亚有什么好玩的地方回答数有1条优质答案参考
-
石狮一日游必去景点推荐
石狮一日游必去景点推荐回答数有1条优质答案参考
-
电气工程师的证书考取条件是什么
电气工程师的证书考取条件是什么回答数有1条优质答案参考
-
房地产估价师的具体报考条件有啥
房地产估价师的具体报考条件有啥回答数有1条优质答案参考
-
房产经纪人的工作内容具体包含什么
房产经纪人的工作内容具体包含什么回答数有1条优质答案参考
-
学习小提琴都有哪些难点
学习小提琴都有哪些难点回答数有1条优质答案参考
-
企业行政管理证书的含金量怎么样
企业行政管理证书的含金量怎么样回答数有1条优质答案参考
-
初学者要怎么入门小提琴
初学者要怎么入门小提琴回答数有1条优质答案参考
-
报考珠宝鉴定师要啥条件
报考珠宝鉴定师要啥条件回答数有1条优质答案参考
















