DLT645 1997 协议解析

源码下载 -> 提取码 QQ:505645074html

 

DLT645.zip工具

工具测试

源码spa

 

 

 

规约解析.net

DL/T645-07:htm

数据帧格式:blog

 

 

注意事项:ip

1)前导字节-通常在传输帧信息前,都要有0~4个FE不等,因此这里要注意,对于主站来讲,直接发送4个FE做为前导字节便可。而从站回复,就不必定了,根据厂家不一样而不一样,ci

我见过回复信息中,没有FE的,也有4个FE的,因此对于接受程序,必定要慎重。开发

2)传输次序-全部的数据项都是先传低字节,再传高字节,这里的数据项,主要涉及到地址域和数据域,由于其余都是1个字节。

3)差错控制-通讯偶校验。

4)数据与传输运算方式:主站加0x33,从站减0x33(为嘛这么定义,多是考虑BCD码吧)

 

网上下载的测试工具

 

 

源码工具.net开发

 

 

调用代码

 

private void btnSend_Click(object sender, EventArgs e)

        {

            string outmsg = string.Empty;

            string addr = txtAddr.Text.Trim();

            string data = txtData.Text.Trim();

            if (string.IsNullOrEmpty(addr))

            {

                AddMessage("电表地址不容许为空");

                return;

            }

            if (string.IsNullOrEmpty(data))

            {

                AddMessage("数据标识不容许为空");

                return;

            }

            MeterEntity entity = dlt.Read(addr, data);

            AddMessage("send " + entity.Send);

            if (!string.IsNullOrEmpty(entity.OutMsg))

            {

                AddMessage("执行出错,errmsg=" + entity.OutMsg);

            }

            else

            {

                AddMessage("recv " + entity.Recv);

                AddMessage("analysis,Addr=" + entity.Addr + ",Control=" + entity.Control + ",Flg=" + entity.DataFlg + ",Data=" + entity.Data);

            }

        }

相关文章
相关标签/搜索