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);

            }

        }

相關文章
相關標籤/搜索