[发明专利]一种基于SocketCAN的SAE J1939传输协议的设计方法有效

专利信息
申请号: 201710110466.0 申请日: 2017-02-28
公开(公告)号: CN106850660B 公开(公告)日: 2020-05-19
发明(设计)人: 刘全利;秦平安 申请(专利权)人: 大连理工大学
主分类号: H04L29/06 分类号: H04L29/06
代理公司: 大连理工大学专利中心 21200 代理人: 温福雪;侯明远
地址: 116024 辽*** 国省代码: 辽宁;21
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于SocketCAN的SAE J1939传输协议的设计方法,属于嵌入式计算机领域。该方法由协议接收模块、协议发送模块和网络处理模块组成。协议接收模块通过处理来自长报文发送方的消息,完成连接的建立和消息的重组。协议发送模块通过与目标设备建立连接,将长报文拆分成数据包依次发送。网络处理模块处理与地址相关的消息,管理地址分配和网络错误。本发明提供了一种基于SocketCAN的SAE J1939传输协议的设计方法,使用者不需要了解SAE J1939传输协议,只需要利用提供的接口,就能实现长报文收发,节省开发时间。
搜索关键词: 一种 基于 socketcan sae j1939 传输 协议 设计 方法
【主权项】:
一种基于SocketCAN的SAE J1939传输协议的设计方法,包括协议接收模块、协议发送模块和网络处理模块,其特征在于:协议接收模块通过处理来自长报文发送方的消息,完成连接的建立和消息的重组;协议接收模块先建立协议接收队列,然后等待消息;如果没有消息,则继续等待;如果有消息,则判断消息的类型;如果是请求发送消息,则建立点对点连接;如果是广播公告消息,则建立点对多连接;如果是其它的消息,则忽略,然后继续等待消息;连接建立后,先初始化连接,为将要接收的长报文分配空间,启动接收定时器,然后接收数据;如果未收到数据,则判断接收定时器是否超时;如果超时,则放弃连接,然后等待协议接收队列消息;如果未超时,则继续接收数据;如果收到数据,则保存数据包序号正确的数据,初始化接收定时器,然后判断数据是否接收完成;如果数据未接收完成,则继续接收数据;如果数据接收完成,则保存重组的长报文,然后等待协议接收队列消息;协议发送模块通过与目标设备建立连接,将长报文拆分成数据包依次发送;协议发送模块先建立协议发送队列,然后等待消息;如果没有消息,则继续等待;如果有消息,则判断消息的目的地址;如果目的地址是全局地址,则建立点对多连接;如果目的地址是空地址,则继续等待消息;如果目的地址是其它的地址,则建立点对点连接;连接建立后,先初始化连接,启动发送定时器,接着把长报文拆分成若干个小的数据包,分配序号,然后依次发送数据包;数据包发送后,判断是否发送完成;如果未发送完成,则继续发送;如果发送完成,则等待协议发送队列消息;网络处理模块处理与地址相关的消息,管理地址分配和网络错误;网络处理模块先建立网络接收队列,初始化本端设备名字和地址,再发送地址声明消息,启动定时器,然后等待网络接收队列消息;如果有消息,则按消息的类型,处理收到的消息,然后判断是否正在声明地址;如果没有消息,则直接判断是否正在声明地址;如果未在声明地址,则判断总线是否错误;如果正在声明地址,则判断定时器是否超时;如果超时,则地址声明成功;如果未超时,则判断总线是否错误;如果总线错误,则随机延时,发送地址声明消息,重新声明地址,初始化定时器,然后等待网络接收队列消息;如果总线没有错误,则直接等待网络接收队列消息。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学,未经大连理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201710110466.0/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top