3087|0

7228

帖子

192

TA的资源

五彩晶圆(高级)

楼主
 

【KW41Z】第四篇 简单传统的国网645协议电表搭建 [复制链接]

1. 简单介绍
在上一篇里,花了很大一个篇幅介绍了DL645协议,如果不搞这一行的估计也不会太在意这个协议,DL645是一个特别庞大的协议,庞大到不是一两个月能够看的很懂的,所以在这次项目里,我其实并不打算过分的去解读DL645协议。一是因为个人能力有限,没有办法在这个平台上完全实现这个功能,其二时间有限,要搞得东西太多了,其三这次项目主要我想尝试下蓝牙串口通信。所以在这次,我只选择了几个数据标识来做解析,解析的方法也很简单,采用了一些固定帧格式直接回复的形式。
文章标题是简单传统的智能电表,简单就是说没有完全实现DL645协议只是简单分析了645几个数据标识而已,第2个传统的就是指这一篇主要按照先尝试用串口来和电表通讯报文,因为传统的电表就是采用485来通讯的。在实现了传统的串口通信后,后期我在把代码看看怎么移植到蓝牙串口的DEMO上去。

2. DL645帧格式判断
   在上一篇里讲解了645国网规约,现在这一篇来解析下简单国网645协议的电表搭建,我采用的是官网提供的串口interrupt程序,采用的是串口中断方式,在接收中断里依次判断了
(1)首字节为0x68
(2)判断第2个0x68
(3)判断控制字(根据不同的控制字进行不同的曹组)
(4)获取长度
(5)通过数据标识(ID3 ID2 ID1 ID0)确定读取那个数据项
(6)判断CRC校验是否正确(累加和校验)
(7)判断尾字节是否为0x16

在发送里
  • 通过接收时置的标志判断进行哪一步的操作
  • 直接报文赋值过去
  • 根据相应数据标志(ID3 ID2 ID1 ID0)执行相应的读操作
  • 根据报文计算CRC校验码,组帧发送



3.传统仪表与上位机通信结果(值稍微有点问题,待解决)


    4.蓝牙抄读规划

         传统串口方式做完之后,就是准备上蓝牙了,蓝牙程序比较庞大,还要花时间看看怎么加进去。时间比较匆忙,工作也比较忙,所以不可能完全实现DL645协议,协议就好几百页,没办法,现在本项目主要就准备做几个电力仪表比较常用的抄读项,电表地址、标号、电压、波特率、温度、软件版本号等等。两个蓝牙开发板分别作为一个抄读中端(专门对电表进行抄读),另一个作为简单的电表,通过抄读中断抄读蓝牙电表上面的简单数据,数据格式依据DL645协议。

此帖出自NXP MCU论坛
点赞 关注
 

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表