请登录 免费注册
分享
  • 微信
  • 新浪微博
  • 人人网
  • QQ空间
  • 开心网
  • 豆瓣
会员服务
进取版 标准版 尊贵版
| 设为首页 | 收藏 | 导航 | 帮助
产品 资讯
请输入产品名称
JUKI贴片机 单极霍尔开关 pcb设备 全方位海绵 无感电容 电源供应 MDD72-16N1B-IXYS二极管
关注微信随身推
首页 电子商城 专题报道 资料中心 成功案例
词多 效果好 就选易搜宝!
深圳市金贝莱电子科技有限公司
新增产品 | 公司简介
注册时间:2005-11-02
联系人:
电话:
Email:
首页 公司简介 产品目录 公司新闻 技术文章 资料下载 成功案例 人才招聘 荣誉证书 联系我们

产品目录

电流电压采集器
电子产品开发
远程IO采集器
RTU485开关量采集模块
混合性采集模块
微电脑控制器
物联网终端控制系统
单片机开发
电子控制板开发
鸡舍智能化控制系统
智能电柜箱
空气质量监控系统
环境监测传感器
首页 >>> 技术文章 >

技术文章

单片机开发线路板设计中使用的Modbus-RTU常用功能码通信数据


一,主机读数据(功能码:0X03)

1,主机发送命令格式

设备地址码(1BYTE)

功能码(1BYTE)

寄存器首地址高字节(1BYTE)

寄存器首地址低字节(1BYTE)

寄存器个数高字节(1BYTE)

寄存器个数低字节(1BYTE)

CRC校验高字节(1BYTE)

CRC校验低字节(1BYTE)

 

 2,从机返回命令格式

设备地址(1BYTE)

功能码(1BYTE)

有效数据个数高字节

有效数据个数低字节

有效数据

1

高字节

有效数据

1

低字节

有效数据

n

高字节

有效数据

n

低字节

CRC校验高字节

CRC校验低字节

 

 

例:主机要读取01号设备的0X0000,0X0001,0X0002,0X0003四个寄存器中的数据:

主机发送:

设备地址码(1BYTE)

功能码(1BYTE)

寄存器首地址高字节(1BYTE)

寄存器首地址低字节(1BYTE)

寄存器个数高字节(1BYTE)

寄存器个数低字节(1BYTE)

CRC校验高字节(1BYTE)

CRC校验低字节(1BYTE)

01

03

00

00

00

04

44

09

  

从机返回

寄存器0x0000中的数据(0x0004)

寄存器0x0001中的数据(0x0005)

寄存器0x0002中的数据(0x0001)

寄存器0x0003中的数据(0x0002)

 

0x01 0x03 0x08 0x00 0x04 0x00 0x05 0x00 0x01 0x00 0x02 0xcc 0x16

 

 一, 主机写(修改从机)数据(功能码:0X06)

1,主机发送命令格式

设备地址码(1BYTE)

功能码(1BYTE)

寄存器地址高字节(1BYTE)

寄存器地址低字节(1BYTE)

寄存器值高字节(1BYTE)

寄存器值低字节(1BYTE)

CRC校验高字节(1BYTE)

CRC校验低字节(1BYTE)

 

 2,从机返回命令格式

设备地址码(1BYTE)

功能码(1BYTE)

寄存器地址高字节(1BYTE)

寄存器地址低字节(1BYTE)

寄存器值高字节(1BYTE)

寄存器值低字节(1BYTE)

CRC校验高字节(1BYTE)

CRC校验低字节(1BYTE)

  

例:主机要修改01号设备的0X0000寄存器,将寄存器中的值改为0x0008:

主机发送:

设备地址码(1BYTE)

功能码(1BYTE)

寄存器地址高字节(1BYTE)

寄存器地址低字节(1BYTE)

寄存器值高字节(1BYTE)

寄存器值低字节(1BYTE)

CRC校验高字节(1BYTE)

CRC校验低字节(1BYTE)

01

06

00

00

00

08

88

0C

  

从机返回:

设备地址码(1BYTE)

功能码(1BYTE)

寄存器地址高字节(1BYTE)

寄存器地址低字节(1BYTE)

寄存器值高字节(1BYTE)

寄存器值低字节(1BYTE)

CRC校验高字节(1BYTE)

CRC校验低字节(1BYTE)

01

06

00

00

00

08

88

0C

 

 10 写多个保持寄存器

      上位机发送数据格式

“:”ADDRESS Ox10 ADDRH ADDRL NUMH NUML BYTECOUNT DATAHI DATALI DATA2H DATA2L------DATANH DATANL LRC OXOD OXOA

注:ADDR:    0----OXFFFF; NUM:0-125 (NUM为要写的保持寄存器的数量)

正确时变频器返回数据格式

“:”   ADDRESS Ox10 ADDRH ADDRL NUMH NUML LRC OXOD OXOA

 

二. 功能码 10写连续地址寄存器

例:主机要修改01号设备的0X1200寄存器,将寄存器中的值改为连续前3个地址改为0xff00:

主机发送:

设备地址码(1BYTE)

功能码(1BYTE)

寄存器地址高字节(1BYTE)

寄存器地址低字节(1BYTE)

连续写个数

高字节(1BYTE)

连续写个数

低字节(1BYTE)

发送的数据总数(1BYTE)

数据1高字节(1BYTE)

数据1低字节(1BYTE)

数据2高字节(1BYTE)

数据2低字节(1BYTE)

数据3高字节(1BYTE)

数据3低字节(1BYTE)

CRC校验高字节(1BYTE)

CRC校验低字节(1BYTE)

01

10

00

00

00

03

06

ff

00

ff

00

ff

00

DC

13

 

 

从机返回:

设备地址码(1BYTE���

功能码(1BYTE)

寄存器地址高字节(1BYTE)

寄存器地址低字节(1BYTE)

连续写个数

高字节(1BYTE)

连续写个数

低字节(1BYTE)

CRC校验高字节(1BYTE)

CRC校验低字节(1BYTE)

01

10

12

00

00

03

85

70

 

 


上一篇:单片机开发时序
下一篇:电子控制板开发中单片机开发寄存器的计算方法
              
若网站内容侵犯到您的权益,请通过网站上的联系方式及时联系我们修改或删除