本文以实例说明CJ/T-188水表协议的解析过程,下面数据未经特殊说明,均指十六进制。

数据发送:

        FE FE FE FE 68 10 44 33 22 11 00 33 78 01 03 1F 90 00 80 16

        说明例如以下:

            FE FE FE FE:协议头(1-4组)。

            68:帧起始符。

            10:仪表类型,此实例指冷水水表。还可定义为:

                10:冷水水表

                11:生活热水水表

                12:直饮水水表

                13:中水水表

                20:热量表(记热量)

                21:热量表(记冷量)

                30:燃气表

                40:电度表 

            44 33 22 11 00:倒序为0011223344(以BCD码形式看待)。表示表号。

            33 78:倒序为7833(以BCD码形式看待),表示厂家代码。

            01:控制码表示读表计数据。后面跟固定数据域长度、数据标识和序列号。

03:数据域长度(固定)。 

            1F 90:数据标识(固定)。

            00:序列号(固定)。

80:累加和,68+10+44+33+22+11+00+33+78+01+03+1F+90+00=80。

            16;结束符。



    回复数据:

        FE FE FE FE 68 10 44 33 22 11 00 33 78 81 16 1F 90 00 00 77 66 55 2C 00 77 66 55 2C 31 01 22 11 05
15 20 21 84 08 16

        说明例如以下:

            FE FE FE FE:协议头(1-4组)。

            68:帧起始符。

10:仪表类型。

44 33 22 11 00:倒序为0011223344(以BCD码形式看待),表示表号。

            33 78:倒序为7833(以BCD码形式看待),表示厂家代码。

            81:实际为控制码+80。我们能够简单觉得仅仅有81正确。非81均为异常,不进行解析。

            16:数据域长度,为十进制22。表示后面有22个有效数据。

            1F 90:数据标识(固定)。

00:序列号(固定)。

00 77 66 55:倒序为556677.00(以BCD码形式看待),表示累计用量。

            2C:立方米。其他单位见附1。

            00 77 66 55:倒序为556677.00(以BCD码形式看待)。表示本月用量。

            2C:立方米,其他单位见附1。  
            31 01 22 11 05 15 20:2015-05-11
22:01:31,表示实时时间。

            21 84:状态,两字节。第1字节定义例如以下,第2字节由厂家自己定义。

68:累加和,68+10+44+33+22+11+00+33+78+81+16+1F+90+00+00+77+66+55+2C+00+77+66+55
2C+31+01+22+11+05+15+20+21+84=08。

16;结束符。

附:单位代号

/V111a7Bl0251Ar/igUEE7COKOnIi*iRUj70FkGtcYQYXDQHwtK8ow5Ixyc!/o/dCwAAAAAAAAA&ek=1&kp=1&pt=0&bo=DQMvAQ0DLwEDACU!&su=168630961&sce=0-12-12&rf=2-9" style="margin:0px; padding:0px; border-width:0px; border-style:none; vertical-align:top; width:781px; height:303px; float:none">

    

     

原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163

经常使用传感器协议1:CJ/T-188 水表协议解析1的更多相关文章

  1. 【Win10应用开发】协议-下篇:自定义多个协议

    前面介绍了如何为应用程序自定义协议,于是有朋友会问,我希望为我的应用注册多个协议,不同的协议处理不同的事情,能吗?答案是能的. 方法主要在配置清单文件上,这里我给出一个例子,示例应用将注册两个协议,分 ...

  2. RTSP RTSP(Real Time Streaming Protocol),RFC2326,实时流传输协议,是TCP/IP协议体系中的一个应用层协议

    RTSP 编辑 RTSP(Real Time Streaming Protocol),RFC2326,实时流传输协议,是TCP/IP协议体系中的一个应用层协议,由哥伦比亚大学.网景和RealNetwo ...

  3. TCP/IP 中文译名为传输控制协议/因特网互联协议,又叫网络通讯协议

    原文地址:http://hi.baidu.com/albyuyrgqgbbhoq/item/65006d2d002ab33195f62ba1 TCP/IP(Transmission Control P ...

  4. 各种非标232,485协议,自定义协议转modbus协议模块定制开发,各种流量计协议转modbus,

    工业现场经常会碰到通过485或者232采集各类仪表数据,但是很多早期的仪表和设备不支持标准modbus协议,而是采用自定义的协议,这些协议数据由plc或者dcs系统来实现采集,不仅费时麻烦,而且不方便 ...

  5. 串口屏Modbus协议,串口屏的modbus协议资料,串口屏modbus通讯协议开发,串口屏之modbus协议使用技巧

    串口屏Modbus协议,串口屏的modbus协议资料,串口屏modbus通讯协议开发,串口屏之modbus协议使用技巧 本例程中用51单片机作为Modbus从机,从机的设备地址为2,从机有4个寄存器, ...

  6. HTTP协议扫盲(一)HTTP协议的基本概念和通讯原理

    一.HTTP协议的概念 1.引子  - 从url开始 URL(Uniform Resource Locator) 地址用于描述一个网络上的资源, 基本格式如下 schema://host[:port# ...

  7. 流媒体协议(一):HLS 协议

    一.HLS 概述 HLS 全称是 HTTP Live Streaming,是一个由 Apple 公司提出的基于 HTTP 的媒体流传输协议,用于实时音视频流的传输.目前HLS协议被广泛的应用于视频点播 ...

  8. 406 UDP协议是面向非连接的协议

    HTTP The Definitive Guide   Table 3-1. Common HTTP methods   Method Description Message body?   GET ...

  9. HTTP协议属于应用层,而SOCKS协议属于传输层

    HTTP协议属于应用层,而SOCKS协议属于传输层 SOCKS代理 SOCKS代理能在任何端口,任何协议下运行. SOCKS V4只支持 TCP连接,而SOCKS V5在其基础上增加了安全认证以及对U ...

随机推荐

  1. b.WHERE使用中多行子查询(适用于in,any,all条件)

    b.多行子查询(适用于in,any,all条件)   //查询与SCOTT和MARTIN在同一个部门的同事的编号和名称   select empno,ename   from emp   where ...

  2. Android学习路线(十三)Activity生命周期——暂停和恢复(Pausing and Resuming )一个Activity

    在正常使用应用的过程中.前台的activity在一些时候会被其它的组件遮挡,导致这个activity暂停.举个样例.当一个半透明的activity被打开(比如一个dialog样式的activity), ...

  3. iOS:简单使用UIAlertVIew和UIActionSheet

    做iOS开发的同学想必都用过UIAlertVIew或者UIActionSheet.UIAlertVIew 可以弹出一个出现在屏幕中间的提示视图,给用户展示信息,并让用户自己选择操作,UIActionS ...

  4. xBIM 基础10 WeXplorer 浏览器检查

    系列目录    [已更新最新开发文章,点击查看详细]  在上一篇 <xBIM基础 09 WeXplorer 基本应用> 已经提到,查看器不会在所有浏览器的所有设备上运行.为了操作效率和简单 ...

  5. Android 去掉TabLayout下的阴影,AppBarLayout下的阴影

    开始还以为是TabLayout在高版本系统上的特殊表现呢,没有在意,UI提出说感觉不好看就查了一下,原来是在TabLayout放在AppBarLayout里面才有这样的效果,只需要对AppBarLay ...

  6. Caffe 激励层(Activation)分析

    Caffe_Activation 一般来说,激励层的输入输出尺寸一致,为非线性函数,完成非线性映射,从而能够拟合更为复杂的函数表达式激励层都派生于NeuronLayer: class XXXlayer ...

  7. shell-4.bash的变量:用户自定义变量

    目录 内容

  8. swift语言点评十-Value and Reference Types

    结论:value是拷贝,Reference是引用 Value and Reference Types Types in Swift fall into one of two categories: f ...

  9. 线段树合并&&启发式合并笔记

    这俩东西听起来很高端,实际上很好写,应用也很多~ 线段树合并 线段树合并,顾名思义,就是建立一棵新的线段树保存原有的两颗线段树的信息. 考虑如何合并,对于一个结点,如果两颗线段树都有此位置的结点,则直 ...

  10. FFT&NTT学习笔记

    具体原理就不讲了qwq,毕竟证明我也不太懂 FFT(快速傅立叶变换)&NTT(快速数论变换) FFT //求多项式乘积 //要求多项式A和多项式B的积多项式C //具体操作就是 //DFT(A ...