CN107147478A - 基于can2.0长报文数据标准帧的组织算法 - Google Patents
基于can2.0长报文数据标准帧的组织算法 Download PDFInfo
- Publication number
- CN107147478A CN107147478A CN201710552155.XA CN201710552155A CN107147478A CN 107147478 A CN107147478 A CN 107147478A CN 201710552155 A CN201710552155 A CN 201710552155A CN 107147478 A CN107147478 A CN 107147478A
- Authority
- CN
- China
- Prior art keywords
- frame
- message
- standard
- tissue algorithm
- message data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/03—Protocol definition or specification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Communication Control (AREA)
Abstract
本发明提供了一种基于CAN2.0长报文数据标准帧的组织算法,标准帧的11位标识符分为报文类型部分和帧序号部分,所述报文类型部分为高8位,所述帧序号部分为低3位。该基于CAN2.0长报文数据标准帧的组织算法具有设计科学、简单清晰、通用性高、稳定性强、识别快速准确的优点。
Description
技术领域
本发明涉及一种算法,具体的说,涉及了一种基于CAN2.0长报文数据标准帧的组织算法。
背景技术
CAN总线协议是一种用于实时应用的串行通讯总线协议,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。最开始CAN总线协议用于汽车中各种不同元件之间的通信,以此取代昂贵而笨重的配电线束。该协议的健壮性使其用途延伸到其他自动化和工业应用,例如航空航天、机器人、数控机床、医疗器械及传感器等。CAN协议的特性包括完整性的串行数据通讯、提供实时支持、传输速率高达1Mb/s、同时具有11位的寻址以及检错能力。CAN总线协议规定一帧数据最多携带8个字节的数据,这使得利用CAN总线协议传送长数据报文时必须将完整的用户报文拆分成若干帧CAN协议帧,通常情况下,用户数据报文都分为许多不同类型的数据,以让CAN总线上的通信结点区分所接受到的数据类型,现有的数据帧没有帧序号的标识,出现混乱时难以区分。因此,如何区分用户数据类型,以及如何使CAN协议帧的组织变得简单清晰、易于实现,就成为了一个工程师不得不面对的问题。
为了解决以上存在的问题,人们一直在寻求一种理想的技术解决方案。
发明内容
本发明的目的是针对现有技术的不足,从而提供一种设计科学、简单清晰、通用性高、稳定性强、识别快速准确的基于CAN2.0长报文数据标准帧的组织算法。
为了实现上述目的,本发明所采用的技术方案是:一种基于CAN2.0长报文数据标准帧的组织算法,标准帧的11位标识符分为报文类型部分和帧序号部分,所述报文类型部分为高8位,所述帧序号部分为低3位。
基于上述,包括以下步骤:1)根据报文长度计算需要发送的总帧数;2)第一个标准帧记录本次报文的总帧数,且第一个标准帧的帧序号为0;3)从第二个标准帧开始到最后一个标准帧结束,其标准帧的帧序号从1-7循环使用。
基于上述,总帧数的计算方法为n=((UserDataLen+7)/8) + 1其中n为总帧数,UserDataLen为报文字节数。
本发明相对现有技术具有突出的实质性特点和显著的进步,具体的说,本发明采用CAN2.0标准帧格式,该格式含有11位标识符,将11位标识符分为两部分,第一部分为高8位,用来存放用户定义的数据报文的类型;第二部分为低3位,用来在发送CAN数据帧时存放帧序号用,接受CAN数据帧时用以根据帧序号先后顺序组织用户报文。其具有设计科学、简单清晰、通用性高、稳定性强、识别快速准确的优点。
具体实施方式
下面通过具体实施方式,对本发明的技术方案做进一步的详细描述。
一种基于CAN2.0长报文数据标准帧的组织算法,采用CAN2.0标准帧格式进行数据传输,兼容CAN2.0A和CAN2.0B协议。将标准帧的11位标识符分为报文类型部分和帧序号部分,所述报文类型部分用于区分报文数据的类型,所述报文类型部分为高8位,所述帧序号部分为低3位。当接收端接收到CAN数据帧后,通过取得11位标识符高8位解析出来报文类型,通过取得11位标识符的低3位解析出来帧序号。根据报文类型和帧序号准确判断数据帧是否发生丢帧等混乱,如果发生混乱,则及时丢弃数据,避免数据错误。
优选地,该组织算法包括以下步骤:1)根据报文长度计算需要发送的总帧数;2)第一个标准帧记录本次报文的总帧数,且第一个标准帧的帧序号为0;3)从第二个标准帧开始到最后一个标准帧结束,其标准帧的帧序号从1-7循环使用。
当接收端接收到CAN数据帧后,通过取得11位标识符高8位解析出来用户报文类型,通过取得11位标识符的低3位解析出来帧序号,如果帧序号为0,则该帧为第1帧,根据该第1帧的8字节内容解析得出本次接收后续还有多少帧。接收过程中可通过判断帧序号是否连续来识别出是否有丢帧。
优选地,总帧数的计算方法为n=((UserDataLen+7)/8) + 1,其中n为总帧数,UserDataLen为报文字节数。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。
Claims (3)
1.一种基于CAN2.0长报文数据标准帧的组织算法,其特征在于:标准帧的11位标识符分为报文类型部分和帧序号部分,所述报文类型部分为高8位,所述帧序号部分为低3位。
2.根据权利要求1所述的基于CAN2.0长报文数据标准帧的组织算法,其特征在于,包括以下步骤:
1)根据报文长度计算需要发送的总帧数;
2)第一个标准帧记录本次报文的总帧数,且第一个标准帧的帧序号为0;
3)从第二个标准帧开始到最后一个标准帧结束,其标准帧的帧序号从1-7循环使用。
3.根据权利要求2所述的基于CAN2.0长报文数据标准帧的组织算法,其特征在于:总帧数的计算方法为
n=((UserDataLen+7)/8) + 1
其中n为总帧数,UserDataLen为报文字节数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710552155.XA CN107147478B (zh) | 2017-07-07 | 2017-07-07 | 基于can2.0长报文数据标准帧的组织方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710552155.XA CN107147478B (zh) | 2017-07-07 | 2017-07-07 | 基于can2.0长报文数据标准帧的组织方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107147478A true CN107147478A (zh) | 2017-09-08 |
CN107147478B CN107147478B (zh) | 2020-10-27 |
Family
ID=59775606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710552155.XA Active CN107147478B (zh) | 2017-07-07 | 2017-07-07 | 基于can2.0长报文数据标准帧的组织方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107147478B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107919947A (zh) * | 2017-11-28 | 2018-04-17 | 南瑞集团有限公司 | 一种can总线长报文传输的编码方法 |
CN112583683A (zh) * | 2020-12-29 | 2021-03-30 | 中国科学院声学研究所 | 一种主从式can fd总线应用层通信方法及系统、电子设备 |
CN113079074A (zh) * | 2021-03-25 | 2021-07-06 | 成都纵横自动化技术股份有限公司 | 一种基于can总线的协议栈通信方法、装置和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932224A (zh) * | 2012-11-23 | 2013-02-13 | 哈尔滨工业大学 | 基于can网络的数据通讯系统及基于该系统的数据通讯方法 |
CN103368915A (zh) * | 2012-04-03 | 2013-10-23 | 朱正兴 | 一种基于can总线的通信方法 |
JP2014017733A (ja) * | 2012-07-10 | 2014-01-30 | Auto Network Gijutsu Kenkyusho:Kk | 通信システム、通信装置及び中継装置 |
-
2017
- 2017-07-07 CN CN201710552155.XA patent/CN107147478B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103368915A (zh) * | 2012-04-03 | 2013-10-23 | 朱正兴 | 一种基于can总线的通信方法 |
JP2014017733A (ja) * | 2012-07-10 | 2014-01-30 | Auto Network Gijutsu Kenkyusho:Kk | 通信システム、通信装置及び中継装置 |
CN102932224A (zh) * | 2012-11-23 | 2013-02-13 | 哈尔滨工业大学 | 基于can网络的数据通讯系统及基于该系统的数据通讯方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107919947A (zh) * | 2017-11-28 | 2018-04-17 | 南瑞集团有限公司 | 一种can总线长报文传输的编码方法 |
CN112583683A (zh) * | 2020-12-29 | 2021-03-30 | 中国科学院声学研究所 | 一种主从式can fd总线应用层通信方法及系统、电子设备 |
CN113079074A (zh) * | 2021-03-25 | 2021-07-06 | 成都纵横自动化技术股份有限公司 | 一种基于can总线的协议栈通信方法、装置和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107147478B (zh) | 2020-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107147478A (zh) | 基于can2.0长报文数据标准帧的组织算法 | |
CN104410557A (zh) | 一种基于rs-485的动态组网方法及通讯方法 | |
CN105975424B (zh) | 一种主从串行通讯协议 | |
CN107147657A (zh) | 适用于多机可靠通信的通信协议、编解码方法及通讯设备 | |
DE60228575D1 (de) | Übertragung einer kompressionskennung von kopfteilen auf einer datenpaketverbindung | |
CN204376951U (zh) | 多设备信息采集系统 | |
EP1049309A3 (en) | Address mapping | |
CN103581033B (zh) | 数据流处理的方法及设备 | |
CN103746783A (zh) | 一种基于Modbus通讯协议的扩展型通讯方法 | |
CN109327386A (zh) | 一种链路聚合方法、装置、设备及可读存储介质 | |
CN101808419A (zh) | 移动终端与服务器端的人体生理数据传输方法和系统 | |
CN104765573A (zh) | 一种串口通讯数据处理分析方法 | |
AU2001237329A1 (en) | Signalling in a telecommunications network | |
CN104205729B (zh) | 网络中的设备配置方法、设备和系统 | |
CN104836636B (zh) | 基于新型can帧进行通信的方法、装置及系统 | |
CN106713325A (zh) | 一种通讯协议转换卡 | |
EP4311248A3 (en) | Real-time detection of completion of sensor wrap completion in gnmi telemetry of a network device | |
CN107566143A (zh) | 一种纵向堆叠发现方法和装置 | |
CN103607350B (zh) | 一种路由生成方法及装置 | |
CN102404152B (zh) | 识别应答报文的方法及设备 | |
CN106657145A (zh) | 一种基于通信协议和sql语法的数据库自动发现方法 | |
CN103685587B (zh) | 分配媒体接入控制mac地址的方法及装置 | |
CN107241251A (zh) | 多路can报文实时接收的软件实现方法 | |
CN106453017A (zh) | 一种mii接口与gpmc接口数据通信系统及通信方法 | |
CN105577694B (zh) | 一种传输数据包的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |