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

DLT645.zip

工具

源码

规约解析

DL/T645-07:

数据帧格式:

注意事项:

(1)前导字节-一般在传输帧信息前,都要有0~4个FE不等,所以这里要注意,对于主站来说,直接发送4个FE作为前导字节即可。而从站回复,就不一定了,根据厂家不同而不同,

我见过回复信息中,没有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);

}

}

最新文章

  1. Kotlin与Android SDK 集成(KAD 05)
  2. [nodejs] Error: unable to verify the first certificate
  3. css之absolute绝对定位(绝对定位特性)
  4. ajax实例1
  5. bash 中的变量
  6. iOS学习之内存管理
  7. KMP算法详解 --- 彻头彻尾理解KMP算法
  8. 改变placeholder颜色
  9. ios开发之多线程
  10. SQL查询根节点
  11. JavaScript浮点运算的问题 (乘法)
  12. 【计算机网络基础】数据交换技术和多路复用技术的正(nao)确(can)打开方式
  13. C# FTPClient--FTP操作帮助类,上传下载,文件,目录操作
  14. 爬虫值requests库
  15. 批处理for中字符串截取必须先把循环变量代替出来才行!!!
  16. Apache Tomcat® - Which Version Do I Want?
  17. Spring拦截器(学习笔记)
  18. (转)Debug Assertion Failed! Expression: _pFirstBlock == pHead
  19. centos一键安装lnmp成功后无法访问ip(解决办法)
  20. [SHOI2008]小约翰的游戏

热门文章

  1. SpringBoot(七) SpringBoot整合Log4j
  2. C++ 自增、自减运算符的重载和性能分析
  3. vueInitVux中引入bootstrap、jquery步骤
  4. 简单两行,实现无线WiFi共享上网,手机抓包再也不用愁了
  5. 微信小程序访问webservice(wsdl)+ axis2发布服务端(Java)
  6. oracle SSL 配置
  7. Java面试中遇到的坑【篇二面试干货】
  8. c# 第36节 接口的声明
  9. Vue 中的 子组件 给 父组件 传值
  10. zz阿里妈妈深度树检索技术(TDM)及应用框架的探索实践