兼容can2.0b协议的can总线通信方法
【专利摘要】本发明公开了一种兼容CAN2.0B协议的CAN总线通信方法,采用增强型CAN协议,即ECAN协议通信;其中,所述ECAN协议为对CAN2.0B协议重新定义后的协议,所述ECAN协议使得采用ECAN协议通信的节点比采用CAN2.0B协议通信的节点具有更高的速率实现节点之间的通信,同时使得所述采用ECAN协议通信的节点可与采用CAN2.0B协议通信的节点共存于同一个网络。本发明使得在提高通信速率的同时,与已有的符合CAN2.0B标准的节点可以共存于同一个网络,兼容性好。
【专利说明】兼容CAN2. OB协议的CAN总线通信方法
【技术领域】
[0001] 本发明涉及工业控制领域,特别涉及一种兼容CAN2. 0B协议的CAN总线通信方法。
【背景技术】
[0002] CAN总线是BOSCH公司为现代汽车电子设备互联通信设计的一种多主机设备局 部网,其卓越的性能已经广泛应用于工业控制、交通工具、医疗仪器、数控机床等众多场合。 BOSCH公司在1991年发布了包含具有11位ID的CAN2. 0A和29位ID的CAN2. 0B协议的 CAN2. 0规范,但随着应用需求的增加,其最高1Mbps通信速率已经不能满足应用需求,因此 BOSCH在2012年发布了具有更高通信速率的CAN FD1. 0协议,该协议虽然能提升基于CAN FD协议节点之间的通信速率,但无法兼容现有的基于CAN2. 0B协议的节点。换言之,它只能 用于构建全新的基于CAN FD协议的网络,因此亟需一种与CAN2. 0B节点兼容并达到较高通 信速率的技术手段。
【发明内容】
[0003] 本发明的目的在于克服现有技术中所存在的上述不足,提供一种兼容CAN2. 0B协 议的CAN总线通信方法,其在兼容现有CAN2. 0B协议的前提下,提高CAN总线网络节点间的 通信速率。
[0004] 为了实现上述发明目的,本发明采用的技术方案是:一种兼容CAN2. 0B协议的CAN 总线通信方法,采用增强型CAN协议,S卩ECAN协议通信;其中,所述ECAN协议为对CAN2. 0B 协议重新定义后的协议,所述ECAN协议使得采用ECAN协议通信的节点比采用CAN2. 0协议 通信的节点具有更高的速率实现节点之间的通信,同时使得所述采用ECAN协议通信的节 点可与采用CAN2. 0B协议通信的节点共存于同一个网络。
[0005] 本发明保留B0SCH公司CAN 2. 0B协议标准的除物理层数据帧外的所有其它帧类 型、帧格式、应答响应机制、错误判断与错误计数机制,以及其它涉及到的物理层通信的所 有方法,仅改变其物理层数据帧的帧格式并通过在CAN2. 0B帧的数据域和CRC域插入高速 比特的方式来实现通信速率的提升,同时实现与采用CAN2. 0B协议通信的节点共存于同一 网络。
[0006] 所述ECAN协议具体构成为:在CAN2. 0B的基础上,保留其各字段并重新定义其远 程帧指示位RTR、保留位R0和R1来区分CAN2. 0B数据帧和ECAN数据帧,ECAN协议仲裁域定 义及相应的仲裁机制与CAN2. 0B协议相同;ECAN协议中在对应于CAN2. 0B协议的数据域和 CRC域内填充高速比特数据实现传输速率的提升,所述高速比特数据的填充符合CAN2. 0B 协议的比特填充规律。
[0007] 在本发明的一个实施例中,所述高速比特数据的填充采用以下第一方式: 每3比特一组的最后一个"R"全部用于传输高速比特,若高速比特的传输速率为 CAN2. 0B比特传输速率的ΑΓ倍,则每3个CAN2. 0B比特可以传输见比特的用户数据,N为不 小于1的整数。
[0008] 在本发明的又一实施例中,所述高速比特数据的填充采用以下第二方式:在第一 方式的基础上,除第一组外,每组开始的"R"比特的同步段和相位段减去同步跳转宽度SJW 的时间用于传输高速比特,增加传输速率。
[0009] 在本发明的另一实施例中,所述高速比特数据的填充采用以下方式:在第二方式 的基础上,增加每组的"D"比特的相位段减去同步跳转宽度SJW的时间用于传输高速比特, 以进一步增加传输速率。
[0010] 新的数据帧我们称之为ECAN数据帧,符合新的帧及相应的响应机制的CAN节点被 称之为ECAN节点。
[0011] 与现有技术相比,本发明的有益效果:本发明中网络节点间采用增强型CAN协 议,S卩ECAN协议通信,ECAN协议为对CAN2. 0B协议重新定义后的协议,所述ECAN协议使得 采用ECAN协议通信的节点比采用CAN2.0协议通信的节点具有更高的速率实现节点之间的 通信,同时使得所述采用ECAN协议通信的节点可与采用CAN2. 0B协议通信的节点共存于 同一个网络。因此,本发明在兼容现有采用CAN2. 0B协议通信的节点的前提下,提高了基于 CAN总线协议的网络节点间的通信速率。
[0012]
【专利附图】
【附图说明】: 图1是CAN 2. 0B与ECAN物理层数据帧结构示意图; 图2是ECAN帧高速比特数据填充三种方法示意图。
【具体实施方式】
[0013] 下面结合【具体实施方式】对本发明作进一步的详细描述。但不应将此理解为本发明 上述主题的范围仅限于以下的实施例,凡基于本
【发明内容】
所实现的技术均属于本发明的范 围。
[0014] 本发明旨在兼容现有采用CAN2. 0B协议通信的节点的前提下,提高了基于CAN总 线协议的网络节点间的通信速率。
[0015] 本发明实施例提供的兼容CAN2. 0B协议的CAN总线通信方法,采用增强型CAN协 议,即ECAN协议通信;其中,所述ECAN协议为对CAN2. 0B协议重新定义后的协议,所述ECAN 协议使得采用ECAN协议通信的节点比采用CAN2. 0协议通信的节点具有更高的速率实现节 点之间的通信,同时使得所述采用ECAN协议通信的节点可与采用CAN2. 0B协议通信的节点 共存于同一个网络。
[0016] 为了描述方便,本发明中自定义增强数据巾贞为ECAN (Enhancement CAN)巾贞,本发 明中所涉及到的帧数据的描述(例如信号的状态描述,隐性位Recessive-简称R,显性位 Dominant-简称 D 等)与 CAN2.0 协议(Robert Bosch GmbH. CAN Specification, Version 2.0. 1991)的定义相同,换言之本发明仅对CAN2.0的数据帧进行了重新定义,其它所有内 容与BOSCH CAN2. 0规范相同。同时,为了描述方便,本发明中"CAN2. 0"指BOSCH CAN2. 0A 和CAN2. 0B协议(Robert Bosch GmbH. CAN Specification, Version 2.0. 1991)所规定的 内容,"CAN2. 0A"指基本型 BOSCH CAN2. 0A (11 位 ID),"CAN2. 0B"指扩展型 BOSCH CAN2. 0B (29 位 ID)。
[0017] 本发明保留BOSCH公司CAN 2. 0B协议标准的除物理层数据帧外的所有其它帧类 型、帧格式、应答响应机制、错误判断与错误计数机制,以及其它涉及到的物理层通信的所 有方法,仅改变其物理层数据帧的帧格式并通过在CAN2. OB帧的数据域和CRC域插入高速 比特的方式来实现通信速率的提升,同时实现与采用CAN2. 0B协议通信的节点共存于同一 网络。
[0018] 本发明在于重新设计CAN2. 0B协议的物理层数据帧,以比CAN2. 0B节点更高的速 率实现新节点(即采用ECAN协议的节点)之间的通信,同时这些新节点可以与CAN2. 0B节 点共存于同一个网络,实现基于该数据帧格式的节点与现有CAN2. 0B节点的兼容,本发明 中将重新设计的CAN2. 0B协议的物理层数据帧结构和机制称为增强型CAN通信协议,简称 ECAN协议,符合新的ECAN帧结构定义及相应的响应机制的CAN节点被称之为ECAN节点。
[0019] 对于ECAN的帧结构,仅对CAN2. 0B的数据帧进行重新设计,远程帧、错误帧、过载 帧以及帧间空隙均与CAN2. 0B标准相同。在增强型通信中,为了提高通信速率,在CAN2. 0B 的基础上,保留其各字段并重新定义其远程帧指示位RTR、保留位R0和R1来区分CAN2. 0B 数据帧和ECAN数据帧,ECAN协议仲裁域定义及相应的仲裁机制与CAN2. 0B协议相同;ECAN 协议中在对应于CAN2. 0B协议的数据域和CRC域内填充高速比特数据实现传输速率的提 升,所述高速比特数据的填充符合CAN2. 0B协议的比特填充规律。即在CAN2. 0B协议的数 据域和CRC域采用变速率方式实现在传输高速比特的同时保证CAN2. 0B节点的比特填充规 律(不能出现连续6个相同值)并使其能进行正确的同步调整(即在ECAN帧结构设计中保留 间隔足够短的同步沿),以实现兼容性。
[0020] ECAN数据帧帧格式和CAN 2. 0B数据帧格式如图1所示。对于CAN2. 0B帧,101是 其帧开始标志位S0F,102是其仲裁域,103是远程帧指示位RTR,104、105和106分别为其控 制域中的保留位Rl、R0和DLC,107为数据域、108为CRC,109为CRC定界符,110和111分 别为应答位ACK及ACK定界符,112为帧结尾EOF。
[0021] 对于ECAN巾贞,其仲裁域114与CAN2. 0B帧相同,仅将CAN2. 0B帧的RTR位定义为 115为保留位R1,并发送显性位"D",因此对于ECAN帧无远程巾贞,在ECAN的使用中,远程帧 由CAN2. 0B的远程帧来完成。在控制域,CAN2. 0B的保留位R1和R0发送显性位"D",对应 至lj ECAN帧中定义为ECAN标识位EDL (116)和保留位R0 (117),EDL发送隐性位"R",R0 发送显性位"D",因此104和116是区别CAN2. 0B帧和ECAN帧的唯一标识。106和118的 DLC字段给出了后续传输数据的长度,其具体数值符合CAN2. 0B的规定,CAN2. 0B节点按照 CAN2. 0B协议进行数据长度解释,而ECAN节点则对传输数据长度重新解释(具体见后面解 释部分),因此每一个DLC所规定的CAN2. 0B帧都对应了一个ECAN帧。CAN2. 0B帧的107 和108的时间段对应了 ECAN帧的119、120和121时间段,在ECAN帧的119、120时间段内 传输高速填充的用户数据,从而来提高传输速率。其中121为ECAN帧的接收错误标识,与 CAN2.0B的比特时间相同,在CAN2.0B帧中该比特为CRC的最后一个比特,在ECAN帧中由 接收端根据接收的ECAN数据CRC校验正确性来发送"D"或者"R"。122 (CRC定界符)、123 (ACK)、124 (ACK 定界符)、125 (EOF)与 CAN2.0B 帧的 109 (CRC 定界符)、110 (ACK)、111 (ACK定界符)、112 (EOF)--对应,并具有与CAN2. 0B相同的发送规则。
[0022] 与CAN2. 0B协议的数据帧对应,ECAN数据帧也包含了帧开始(S0F)、仲裁域(ID)、 控制域(CONTROL )、数据域(DATA )、循环冗余校验域(CRC )、应答域(ACK )和帧结尾(EOF )。图 1中深色部分为ECAN数据帧的变速率区间,它包含了 ECAN帧的数据域和CRC域,ECAN数 据帧的其它部分仍然按照CAN2. 0B的速率进行传输;ECAN帧的S0F、ACK、ACK定界符和EOF 与CAN2. OB定义相同;在仲裁域将ECAN帧的RTR位修改为保留位R1,并传输显性位"D" ; 在控制域将CAN2. 0B帧的保留位R1修改为EDL位,并传输隐性位"R",以此来区分CAN2. 0B 和ECAN巾贞,EDLC字段;CAN2. 0B和ECAN帧节点对DLC字段做不同的长度解释。通过这种对 CAN2. 0B帧结构的修改,使得在CAN2. 0B的数据域和CRC域期间可以进行高速比特数据的传 输,同时在传输高速ECAN帧时网络中的CAN2. 0B节点可以进行正确的同步、比特填充错误 检测,以实现高速ECAN帧和CAN2. 0B帧共存于同一个网络,从而解决CAN2. 0B帧和CAN FD 帧的高速传输和兼容性问题。
[0023] 由于在变速率部分,网络中已有的CAN2. 0B节点以较低的速率来采集高速率数 据,可能出现随机错误。为了阻止网络中已有CAN2. 0B节点在ECAN帧高速率部分发出比 特填充错误,则在ECAN帧高速率部分对应固定位置填充符合CAN2. 0B协议的额外数据。此 夕卜,为了让CAN2. 0B节点不产生帧格式错误,则已有的CAN2. 0B节点则需正确解析ECAN帧 的数据长度、CRC定界符、ACK域以及EOF。ECAN帧在这些有关帧数据格式的关键位置也与 CAN2. 0标准保持一致。因此,每一个ECAN帧的整个持续时间长度与CAN2. 0B定义的帧相 同,同时在ECAN帧中必须对DLC段定义的数据长度做重新解释(具体见后面解释部分)。
[0024] 下面结合图1对ECAN帧结构具体说明: 1) S0F :帧开始标识与CAN2. 0B协议定义相同,工作在CAN2. 0B所使用的速率下,发送 端以从R (Reccessive,隐性位,逻辑"1")到"D"(Dominate,显性位,或者逻辑"0")的跳 变作为帧开始,接收端在检测到跳变时完成初始的比特硬同步。
[0025] 2)仲裁域:除CAN2. 0B数据帧的RTR位对应了 ECAN的保留位R1外,仲裁域的其 它部分与ECAN数据帧与CAN2. 0B数据帧相同。在CAN2. 0B帧中RTR发送R时为远程帧,发 送D时为数据帧,对应的ECAN帧中的R1发送D,因此限定了 ECAN帧无远程帧,要实现远程 帧的功能则需要利用CAN2. 0B的方式实现。
[0026] 仲裁域用于总线仲裁,ID的具体分配需要系统层面考虑,ID的分配与常规的 CAN2. 0B总线仲裁完全相同,有些ECAN帧可以比CAN2. 0B帧的优先级高,而有些则可以较 CAN2. 0B帧的优先级低。
[0027] 3)控制域:控制域中由6比特数据组成,具体包括EDL :CAN2. 0B节点的保留位 R1对应了 ECAN帧节点的EDL位,在CAN2. 0B帧中为D,在ECAN帧节点中为R,该位是区别 CAN2. 0B帧与ECAN帧的唯一标识。
[0028] R0 :在CAN2. 0B的增强帧中为保留位,该位为D,ECAN帧节点利用EDL到R0的跳变 进行一次硬同步,CAN2. 0B节点对该位不做判断。
[0029] DLC:DLC为数据长度,共4位,在CAN2. 0B节点和ECAN节点中做不同解释。其值 为0?8,在CAN2. 0B中表示传输的字节数,大于8的值被解释为8。对于ECAN帧,将对DLC 段做重新解释,见后续内容的ECAN帧数据长度解释部分的内容。
[0030] 数据域 对于CAN2. 0B帧,其长度为DLC规定的用户传输字节数,对于ECAN帧,其长度见后续内 容的ECAN帧数据长度解释部分的内容。当应用层所传输比特数小于ECAN所解释得到的数 据长度时,应先在应用层填充,填充值也纳入CRC的计算。
[0031] 需要说明的是,为了每个ECAN帧与CAN2. 0B帧唯一对应,则应在ECAN帧的固定位 置插入比特,以避免在ECAN帧的通信中CAN2. 0B产生比特填充错误标识,见数据域与CRC 域的填充方法的描述。
[0032] CRC域:CRC域包含快速率和与CAN2. 0B相同速率的两部分。
[0033] CRC序列:为了增加有效数据长度,CRC采用与CAN2.0B协议完全相同的CRC算法, 它以快速率传输;但在符合本发明所述的填充规则下,CRC也可以根据实际需求改变,利用 不同于CAN2. 0B协议的多项式来生成CRC序列,需要进行CRC计算的数据CAN2. 0B规定一 致(即包括了 S0F、仲裁域、控制域和数据域)。
[0034] ECRC错误:当ECAN节点接收端CRC检查未发现错误,则该标识在ECRC错误指示期 间送R,当接收端发现CRC不相符,则错误被动的ECAN帧接收节点发送R,错误主动的ECAN 帧接收节点发送D。通过这种方式,相当于单独进行ECAN帧的错误应答和错误标识。设置 ECRC错误应答的原因在于,由于CAN2. 0B节点在采集ECAN帧时CRC出错概率大,若发现 错误,按照CAN2. 0B协议,将在ACK定界符后给出错误标识。而ECAN节点发送端可能收到 ACK的应答,但又收到错误标识,无法判断该错误标识是因为真正的格式错误,还是来自于 CAN2. 0B节点。设置该位使得在CAN2. 0B应答前就能确定数据的正确性。
[0035] CRC定界符:CRC定界符为一个CAN2.0B速率的比特持续时间,值为R,其定义与 CAN2. 0B -致。ECAN帧节点同CAN2. 0B节点一样,也检查诸如CRC定界符这类的形式错误。
[0036] ACK slot :当接收端接收完成,并CRC校验通过时,将在该位置发送一个D。在ECAN 帧通信中,CAN2. 0B节点接收到CRC错误概率很大,当发现CRC错误时发送一个R。而对应 的ECAN节点,只要CRC校验通过,则发送应答D,否则发送R。
[0037] ACK定界符:其定义与CAN2. 0B协议中的一致。
[0038] EOF:与 CAN2. 0B 协议中的一致。
[0039] 本发明规定了一种增强型CAN总线数据帧格式,可以但不限于利用单片机、AISC、 FPGA等载体来实现。
[0040] 接下来说明上述对ECAN数据帧数据域与CRC域的高速比特数据填充方法: 在传输ECAN帧的高速率部分时,CAN2. 0B节点仍然监听总线状态,由于CAN2. 0B节点具 有自动调整采样点机制、高速数据的随机性等因素,对于CAN2. 0B节点来讲,它将在高速部 分采集到不确定值,可能破坏CAN2. 0B的填充规则。另一方面,在高速帧传输期间,CAN2. 0B 节点仍然在进行比特同步等工作,特殊情况下的向同一个方向的重同步所带来的误差累积 也可能导致比特填充错误。因此,位流的填充应充分考虑这两方面的因素,高速数据的传输 期间应从协议上保证CAN2. 0B节点不产生错误标识以打断高速数据的传输。
[0041] 此外,数据帧的帧长无论从CAN2. 0B节点和ECAN帧节点看来都应该分别符合其协 议规定。由于CAN2. 0B节点已经有相关协议规定其DLC域的意义,因此ECAN帧在此基础上 进行重新解释,具体见后续内容"ECAN帧对DLC字段的解释"部分。CAN2. 0B节点的数据帧 和ECAN帧在时间上相等,每一个ECAN帧都对应了一个CAN2. 0B帧。
[0042] 本发明的高速比特数据填充方法,即ECAN帧的三种高速比特数据填充方式如图 2所示。在CAN2.0B帧的DLC字段之后、ECRC错误比特之前用于传输高速的填充。一个 CAN2. 0B帧比特时间包含了同步段SYN(201)、相位段1 (202)、相位段2 (203)。对于三种 填充方式,首先在"ECRC错误"比特之前固定传输一个"R"和"D",然后从DLC之后到201之 前的数据按照3个CAN2. 0B比特一组,每组的值为"R"、"D"、"R"方式来排列数据。若DLC 规定的传输数据比特数非3的整数倍,剩余一比特情况下201之前传输"R",剩余2比特情 况下201之前传输"R"和"D"。具体有3中不同的实现方式: 方式1,每3比特一组的最后一个"R"(207)全部用于传输高速比特,若高速比特的传 输速率为CAN2. 0B比特速率的JV倍,则每3个CAN2. 0B比特可以传输F比特的用户数据。
[0043] 方式2,在方式1的基础上,除第一组外,每组开始的"R"比特的同步段和相位段1 减去同步跳转宽度SJW的时间用于传输高速比特,即增加208来插入高速比特。
[0044] 方式3,在方式2的基础上,增加每组的"D"比特的相位段1减去同步跳转宽度SJW 的时间来传输高速比特,即增加209的时间来传输高速比特,以进一步增加传输速率。
[0045] 参看图2,位置204及其它向下的箭头为CAN2. 0B比特所设定的采样点位置,在图 2中,SJW与CAN2. 0B相位段2宽度相同,根据协议要求,SJW小于相位段2的宽度即可,ECAN 的每个高速填充比特具有与CAN2. 0B相同的同步段、相位段1和相位段2的定义。206和 211是方式1、方式2和方式3下都具有的两个"R"到"D"的转换沿,ECAN节点接收时在这 两个沿需进行硬同步,其它同步规则与CAN2. 0B定义相同。方式1、方式2和方式3的高速 比特数据填充方式保证了 CAN2. 0B节点在ECAN帧发送期间可以进行正确的同步调整、比特 填充错误检查,在ECAN节点接收ECAN帧时也按照CAN2. 0B的规则和传输速率进行比特填 充检测,而对于高速比特不再进行比特填充错误检测,只进行同步调整。
[0046] 高速比特数据填充方式1、方式2和方式3仅给出了在本发明方案下的三种填充示 例,其它的在ECAN帧发送期间能避免CAN2. 0B节点填充和同步错误的填充方式也属于本发 明保护范围。
[0047] 下面再对高速比特填充方法具体说明:填充后的帧格式应能及时修正由于高速数 据的不确定性所带来的错误,以免错误累积出现多采集或漏采集数据。其次,填充后帧格式 应保证CAN2. 0B节点不连续采集到6个相同值。根据这两方面因素可得到多种填充方案, 本发明给出如图2所示的三种填充示例,其中SJW和SYN分别为CAN2. 0B节点的最大跳转 宽度和同步段。
[0048] 方式1 :在CAN2. 0B帧结构自DLC字段后,CRC定界符之前以CAN2. 0B的比特传输 速率的每一个R到D的变化之后插入高速数据(图2中的深色填充部分),这种方式相当于 将原有的CAN2. 0B帧分成了每三比特一组,每组的比特值为一个R、一个D,紧跟一个高速数 据传输间歇(宽度为一个CAN2. 0B比特时间);在ECRC比特之前,以CAN2. 0B速率传输一个 R和一个D结束;若DLC字段所确定的CAN2. 0B传输比特数目非3的整数倍,若最后一组只 有一个CAN2. 0B比特,则该组传输R,若最后一组剩余两个CAN2. 0B比特,则该组先传输R再 传输D。
[0049] 方式2 :在方式1的基础上再在CAN2. 0B帧同步段和传播段1减去SJW后所剩下 的时间内传输高速比特,使深色部分采样点之后可能出现的错误同步沿可以在下一个R到 D的沿得到纠正。
[0050] 方式3 :在方式2基础上在CAN2. 0B传输D期间的传播段减去SJW后剩下的时间 内也传输高速比特;此外,考虑到每3个比特就有一个确定的R到D的沿,在符合CAN2. 0B 时钟稳定度要求的前提下,可将深色部分往相位段1和相位段2内扩散,以进一步增加传输 速率。
[0051] 以上3种方式在ECRC错误比特之前均插入1个标准CAN2. 0B帧的R和D,ECAN节 点在该沿进行硬同步;类似地,DLC之后的第一个R到D的沿,ECAN节点也进行硬同步。
[0052] ECAN帧中对DLC字段的解释:令DLC的值为,它在CAN2. 0B节点中解释为传输 数据的字节数,允许的值为〇?8,超过8的值被认为是8。由于ECAN帧与CAN2. 0B帧-- 对应,因此每一个分别对应了一个ECAN帧的传输数据长度。令变速率部分的传输速率 为CAN2. 0B传输速率的F倍,它表明在一个CAN2. 0B比特传输间隙期间可以传输的ECAN帧 数据为F比特。
[0053] 对于本发明的基于对CAN2.0B数据域和CRC域进行高速比特填充的方法,
【权利要求】
1. 一种兼容CAN2. OB协议的CAN总线通信方法,其特征在于,采用增强型CAN协议,即 ECAN协议通信;其中,所述ECAN协议为对CAN2. 0B协议重新定义后的协议,所述ECAN协议 使得采用ECAN协议通信的节点比采用CAN2. 0B协议通信的节点具有更高的速率实现节点 之间的通信,同时使得所述采用ECAN协议通信的节点可与采用CAN2. 0B协议通信的节点共 存于同一个网络。
2. 根据权利要求1所述的兼容CAN2. 0B协议的CAN总线通信方法,其特征在于,所述 ECAN协议具体构成为: 在CAN2. 0B的基础上,保留其各字段并重新定义其远程帧指示位RTR、保留位R0和R1 来区分CAN2. 0B数据帧和ECAN数据帧,ECAN协议仲裁域定义及相应的仲裁机制与CAN2. 0B 协议相同;ECAN协议中在对应于CAN2. 0B协议的数据域和CRC域内填充高速比特数据实现 传输速率的提升,所述高速比特数据的填充符合CAN2. 0B协议的比特填充规律。
3. 根据权利要求1或2所述的兼容CAN2. 0B协议的CAN总线通信方法,其特征在于,所 述高速比特数据的填充采用以下第一方式: 每3比特一组的最后一个"R"全部用于传输高速比特,若高速比特的传输速率为 CAN2. 0B比特传输速率的F倍,则每3个CAN2. 0B比特可以传输F比特的用户数据,F为 不小于1的整数。
4. 根据权利要求3所述的兼容CAN2. 0B协议的CAN总线通信方法,其特征在于,所述高 速比特数据的填充采用以下第二方式: 在第一方式的基础上,除第一组外,每组开始的"R"比特的同步段和相位段1减去同步 跳转宽度SJW的时间用于传输高速比特。
5. 根据权利要求4所述的兼容CAN2. 0B协议的CAN总线通信方法,其特征在于,所述高 速比特数据的填充采用以下方式: 在第二方式的基础上,增加每组的"D"比特的相位段1减去同步跳转宽度SJW的时间 用于传输高速比特,以进一步增加传输速率。
【文档编号】H04L12/40GK104092515SQ201410329183
【公开日】2014年10月8日 申请日期:2014年7月11日 优先权日:2014年7月11日
【发明者】马上, 胡剑浩, 王剑 申请人:电子科技大学