---恢复内容开始---

最近在写一个关于电量模块的arduino lib,需要了解电量模块的寄存器读写,涉及到硬件底层知识。

先复习一下计算机原理中有关位、字节和字的关系(来自google books)

  • 再来看电量模块寄存器使用规约,先看通讯参数方面:

寄存器地址:0004H

默认值:  0105H

      0105H转换成二进制为

                0000 0001 00000 0101

                [    ID     ]  []       [速率]

  

      高八位0000 0001,表示该模块的ID为01,如果为00,则表示为广播地址;

      低字节的高2位00,表示为8N1

      低字节低四位0101(5),表示速率4800bps,不清楚手上的这款(JSY-MK-109 v1.0)是否支持更高的速率,JSY公司其它型号有支持06(9600bps)。

  •  读取电量参数

从上表可以看出,电量信息是从0048H地址开始的连续8个字节保存的,这跟程序中相应代码正好印证:

1     Tx_Buffer[0]=Read_ID;
2     Tx_Buffer[1]=0x03;
3     Tx_Buffer[2]=0x00;
4     Tx_Buffer[3]=0x48;
5     Tx_Buffer[4]=0x00;
6     Tx_Buffer[5]=0x06;
7     crcnow.word16=chkcrc(Tx_Buffer,6);
8     Tx_Buffer[6]=crcnow.byte[1]; //CRC
9     Tx_Buffer[7]=crcnow.byte[0];

第一位是从机的地址;

第二位是功能码03H,这是读多个寄存器的功能码;

第三、四位0048H,表示起始地址;

第五、六位0006H,表示数据长度,要读取6个地址;

后面的位保存CRC校验码。

在arduino library中,read_data()中组成上面的命令,放入TX_Buffer[]数组,然后交给send_query()方法,通过串口发给485,再发给指定地址的从机,从机收到控制命令之后,会返回相应的数据,比如

另外,从下表可以看出,有两组(四个)寄存器保存有功总电能数据,其中004BH、004CH是只读,另外一组000CH、000DH是可读写的。

---恢复内容结束---

最近在写一个关于电量模块的arduino lib,需要了解电量模块的寄存器读写,涉及到硬件底层知识。

先复习一下计算机原理中有关位、字节和字的关系(来自google books)

转载于:https://www.cnblogs.com/ardypro/p/3457114.html

电量模块MODBUS RTU寄存器解读相关推荐

  1. modbus rtu 调试软件_一文最全解读Modbus 的RTU、ASCII、TCP

    导 读 ( 小库 ) 多年来没少调试施耐德PLC,因此Modbus-RTU.Modbus-TCP等协议都经常接触,但一直都没有认真总结一下,借这篇文章总结一下. 01 术语解读 1 word =2 b ...

  2. Modbus RTU转Modbus TCP模块,RS232/485转WiFi模块,WJ105

    产品特点: ● Modbus RTU协议自动转换成Mobus TCP协议 ● Wi-Fi支持802.11b/g/n 协议 ● 手机轻松设置WiFi密码和配置参数 ● RS232/485波特率从300到 ...

  3. 欧姆龙CJ1W-SCU模块通过串口网关功能实现Modbus RTU通信

    实验设备:CJ2M-CPU33.CJ1W-SCU21-V1.XW2Z-200S-CV.Modbus RTU从站助手 实验目的:SCU模块通过串口网关功能实现Modbus RTU主站功能 1.系统概述和 ...

  4. 8路编码器脉冲计数器或16路DI高速计数器,Modbus RTU模块 WJ69

    产品特点: ● 编码器解码转换成标准Modbus RTU协议 ● 可用作编码器计数器或者转速测量 ● 支持8个编码器同时计数,可识别正反转 ● 也可以设置作为16路独立DI高速计数器 ● 编码器计数值 ...

  5. 4路差分编码器脉冲计数器,转速测量,Modbus RTU模块 WJ67

    产品特点: ● 编码器解码转换成标准Modbus RTU协议 ● 编码器5V差分信号直接输入 ● 可用作编码器计数器或者转速测量 ● 支持4个编码器同时计数,可识别正反转 ● 也可以设置作为8路独立D ...

  6. 编码器脉冲计数器,角度速度位移测量,Modbus RTU模块 WJ66

    产品特点: ● 编码器解码转换成标准Modbus RTU协议 ● 可用作编码器计数器或者转速测量 ● 支持4个编码器同时计数,可识别正反转 ● 内置8个DO可以用作编码器上下限报警输出 ● 断电自动保 ...

  7. Modbus RTU转Modbus TCP模块,RS232/485转以太网模块,WJ102

    产品特点: ● Modbus RTU协议自动转换成Mobus TCP协议 ● 100M高速网卡,10/100M 自适应以太网接口 ● 支持 AUTO MDI/MDIX,可使用交叉网线或平行网线连接 ● ...

  8. 详细解读Modbus RTU、Modbus ASCII、Modbus TCP的区别

    Modbus 是Modicon公司于1979年开发的串行通信协议.它最初设计用于公司的可编程逻辑控制器(PLC). Modbus是一种开放式协议,支持使用RS232/RS485/RS422协议的串行设 ...

  9. 西门子PLC基于MODBUS RTU通信协议时的寄存器地址对应关系及错误代码

    西门子PLC基于MODBUS RTU通信协议时的寄存器地址对应关系及错误代码 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到网站. 西门子PLC在使用MO ...

最新文章

  1. Python测试框架pytest(03)setup和teardown
  2. 3万字长文记录Docker 最全学习笔记,手把手带你入个门
  3. 初探ArrayList之删除
  4. JSON Web Token (JWT),服务端信息传输安全解决方案
  5. 模式匹配算法----KMP算法以及next数组的解法
  6. 浅谈Java的数据结构
  7. 2012二级java真题_2012年计算机二级JAVA模拟试题及答案详解汇总
  8. 机器人学基础–左乘和右乘
  9. 1.1各种编程语言的介绍
  10. 益而优有机核桃油给宝宝安全放心的油!
  11. 钉钉html缓存,电脑钉钉的缓存文件路径
  12. 【原创】获得大尺寸Google地图图片
  13. 视频会议室装修部署指南
  14. i7 12650h参数 酷睿i712650h属于什么档次
  15. 「算法」拓扑排序(货真价实,童叟无欺)
  16. 微信小程序集合3(百度小说+电商+仿哗哩哗哩小视频+码绘本跟读+科学计算器+身份证查询+天气+投资理财微+外卖+在线音乐排行)
  17. xUnit.net入门
  18. 计算机语言:机器语言、汇编语言、高级语言
  19. AutoJs学习-实现成语查询
  20. 2019年淘宝运营里中小卖家需要掌握的技能!

热门文章

  1. Storm单节点部署及启动
  2. python3 三角函数
  3. 什么是nginx负载均衡高可用
  4. 北京卫生中级英语计算机考试成绩查询,2019年北京卫生专业技术资格成绩查询时间及入口...
  5. 手机900e模式如何救_苹果手机如何将显示模式改为黑底白字?这个简单!只需4步...
  6. navicat快捷键
  7. 完全备份指的是对整个计算机系统,网络安全管理实践题库:在备份技术中,差分备份就是对整个系统所有文件进行完全备份,包括所有系统和数据。()...
  8. 用keil4 模拟仿真显示引脚波形输出分析的步骤
  9. eclipse / 绑定 OpenJDK 1.8 Java 源码的方法
  10. nginx / 安装、部署和启动