帧传输方法及装置与流程

文档序号:12691564阅读:253来源:国知局
帧传输方法及装置与流程

本发明涉及通信技术领域,特别涉及帧传输方法及装置。



背景技术:

控制器局域网(Controller Area Network,CAN)总线是一种用于实时应用的串行通讯协议总线,是一种点对多点的机制,目前已经应用于通械工业、纺织机械、农用机械、机器人、数控机床、医疗器械及传感器等诸多领域。

随着通信设备功能的迅速增强,设备的多样性和复杂性也随之提高,在此情况下,通信系统中控制信息的传输能力面临极大挑战。现有技术中,在CAN协议中使用数据帧进行数据传输时,无法对帧传输过程的传输状态进行指示。



技术实现要素:

本发明实施例提供了一种数据传输方法及装置。旨在解决通信系统中无法对帧传输过程的传输状态进行指示的问题。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。

根据本发明实施例的第一方面,提供了一种帧传输方法,所述方法包括:

生成数据帧,所述数据帧包括仲裁场,所述仲裁场包括帧数指示字段和完成指示字段,所述帧数指示字段用于指示所述数据帧的帧号,所述帧号为小于2^N的非负整数,所述N为所述帧数指示字段包括的比特数,所述完成指示字段用于指示帧传输过程的传输状态;

发送所述数据帧。

根据本发明实施例的第二方面,提供了一种帧传输方法,所述方法包括:

接收数据帧,所述数据帧包括仲裁场,所述仲裁场包括帧数指示字段和完成指示字段,所述帧数指示字段用于指示所述数据帧的帧号,所述帧号为小于2^N的非负整数,所述N为所述帧数指示字段包括的比特数,所述完成指示字段用于指示帧传输过程的传输状态;

根据接收的所述数据帧,确定所述数据帧的帧号和所述帧传输过程的传输状态。

根据本发明实施例的第三方面,提供了一种帧传输装置,所述装置包括:

处理器,用于生成数据帧,所述数据帧包括仲裁场,所述仲裁场包括帧数指示字段和完成指示字段,所述帧数指示字段用于指示所述数据帧的帧号,所述帧号为小于2^N的非负整数,所述N为所述帧数指示字段包括的比特数,所述完成指示字段用于指示帧传输过程的传输状态;

发送器,用于发送所述处理器生成的所述数据帧。

根据本发明实施例的第四方面,提供了一种帧传输装置,所述装置包括:

接收器,用于接收数据帧,所述数据帧包括仲裁场,所述仲裁场包括帧数指示字段和完成指示字段,所述帧数指示字段用于指示所述数据帧的帧号,所述帧号为小于2^N的非负整数,所述N为所述帧数指示字段包括的比特数,所述完成指示字段用于指示帧传输过程的传输状态;

处理器,用于根据所述接收器接收的所述数据帧,确定所述数据帧的帧号和所述帧传输过程的传输状态。

本发明公开的技术方案可以包括以下有益效果:

发送的数据帧中包括了帧数指示字段和完成指示字段。在数据传输过程中,接收端可以根据帧数指示字段携带的信息,获取帧传输过程中数据帧的帧号,根据完成指示字段携带的信息,获取帧传输过程的传输状态。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

图1是本发明实施例公开的一种帧传输方法的流程图;

图2是本发明实施例公开的一种数据帧的示意图;

图3是本发明实施例公开的另一种帧传输方法的流程图;

图4是本发明实施例公开的另一种帧传输方法的流程图;

图5是本发明实施例公开的另一种帧传输方法的流程图;

图6是本发明实施例公开的一种帧传输装置的示意图;

图7是本发明实施例公开的另一种帧传输装置的示意图;

图8是本发明实施例公开的另一种帧传输装置的示意图;

图9是本发明实施例公开的另一种帧传输装置的示意图。

具体实施方式

以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施方案的部分和特征可以被包括在或替换其他实施方案的部分和特征。本发明的实施方案的范围包括权利要求书的整个范围,以及权利要求书的所有可获得的等同物。在本文中,各实施方案可以被单独地或总地用术语“发明”来表示,这仅仅是为了方便,并且如果事实上公开了超过一个的发明,不是要自动地限制该应用的范围为任何单个发明或发明构思。本文中,诸如第一和第二等之类的关系术语仅仅用于将一个实体或者操作与另一个实体或操作区分开来,而不要求或者暗示这些实体或操作之间存在任何实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素。本文中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的结构、产品等而言,由于其与实施例公开的部分相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

控制器局域网(Controller Area Network,CAN)协议是一种点对多点的传输协议,CAN总线是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。CAN协议具有良好的健壮性,使其在自动化等领域得到广泛的应用。

CAN总线上的通信节点可以依照功能分为标准节点和瘦节点,其中,标准节点为拥有协议规定的完整功能的节点,瘦节点为用于协议规定的部分功能的节点,示例性的,瘦节点可以只包括协议规定的最基本的功能,通常瘦节点为成本较低、内存资源有限的通信节点。

CAN总线上的通信节点可以依照用途分为主控制器和被控节点,其中,主控制器可以向被控节点发送指令,要求被控节点执行相应的操作。本领域技术人员应知,在CAN总线上,主控制器和被控节点的数量可以在具体实施过程中灵活设置,本发明对此并不限定。

在CAN协议中定义了数据帧,用于不同通信节点之间的数据传输。数据帧可以由7部分组成,即帧起始、仲裁场、控制场、数据场、循环冗余校验场、应答场、帧结束。特别的,数据帧包括标准数据帧和扩展数据帧,其中,标准数据帧和扩展数据帧的主要区别在于仲裁场中标识(identifier,ID)字段所包括的比特位数不同。

本发明公开了一种帧传输方法,如图1所示,具体如下:

S101、生成数据帧,其中,数据帧包括仲裁场,仲裁场包括帧数指示字段和完成指示字段,帧数指示字段用于指示数据帧的帧号,帧号为小于2^N的非负整数,N为帧数指示字段包括的比特数,完成指示字段用于指示帧传输过程的传输状态;

S102、发送数据帧。

在S101中,生成的数据帧的示意图如图2所示,应知,本发明对仲裁场在数据帧中的具体位置,以及帧数指示字段或完成指示字段在仲裁场和数据帧中的具体位置不做限定。作为一种可选的实施方式,图2所示的具体字段的位置,仅作为示例。

其中,帧传输过程为通信节点之间的一次数据传输过程,示例性的,总线上至少包括通信节点A、B和C,在一次数据传输过程中,A向B发送数据,则帧数指示字段记录本次数据传输过程中A向B发送的数据帧的帧号,发送完毕时,完成指示字段承载的信息用于向B指示本次数据传输过程结束。而后当A向C发送数据时,开始新一个的帧传输过程。

帧数指示字段的长度可以由本领域技术人员在具体实施本发明的过程中根据实际需要表征的指令的数量进行设置,例如,可以采用8位比特。可选的,当帧数指示字段包括8位比特时,可以承载8位自增循环码用于对数据帧进行计数,以记录帧号。

示例性的,如图3所示,本方法还包括:

S103、接收异常指示帧,其中,异常指示帧用于指示帧传输过程中的异常数据帧。

可选的,当帧数指示字段用于承载N位比特时,在一次帧传输过程中,数据发送端向数据接收端发送数据信息,起始数据帧的帧号为0,而后第n帧的帧号为(n+1),n为小于2^N的非负整数,当发送到帧号为(2^(N-1)-1)的帧时,表明N位比特所能够表征的帧号已使用一半,此时,数据接收端可以向数据发送端发送异常指示帧,用于指示本次帧传输过程中的异常数据帧,如未接收到的数据帧,或未正确接收的数据帧等,并等待接收来自数据发送端重新发送的异常数据帧,重新发送异常数据帧的方法可以使用自动请求重传、混合自动请求重传等方案,本发明对此并不限定。数据接收端正确接收完成后,数据发送端再开始发送帧号为2^(N-1)的帧。进一步的,当发送帧号为(2^N-1)的帧时,表明N位比特所能够表征的帧号已使用完毕,数据发送端可以接收来自数据接收端发送的异常指示帧,具体方案如前所述,此处不再赘述。

可选的,其他情况下,当数据接收端接收到异常数据帧时,可以向数据发送端发送异常指示帧,本领域技术人员在具体实施过程中,可以根据需要,结合本发明公开的技术方案,确定发送异常指示帧的条件。

完成指示字段可以包括1位比特,可选的,当比特为1时,表征所述数据帧为帧传输过程的最后一帧,当比特为0时,表征数据帧不为帧传输过程的最后一帧。

本发明公开的方法,发送的数据帧中包括了帧数指示字段和完成指示字段。在数据传输过程中,接收端可以根据帧数指示字段携带的信息,获取帧传输过程中数据帧的帧号,根据完成指示字段携带的信息,获取帧传输过程的传输状态。

本发明还公开了一种帧传输方法,如图4所示,具体如下:

S401、接收数据帧,其中,数据帧包括仲裁场,仲裁场包括帧数指示字段和完成指示字段,帧数指示字段用于指示数据帧的帧号,帧号为小于2^N的非负整数,N为帧数指示字段包括的比特数,完成指示字段用于指示帧传输过程的传输状态;

S402、根据接收的数据帧,确定数据帧的帧号和帧传输过程的传输状态。

在S401中,接收的数据帧的示意图如图2所示,本实施例中,对数据帧、仲裁场、帧数指示字段和完成指示字段相关的定义和说明,与记载在S101中的相关定义和说明类似,本领域技术人员可参照相关段落的描述,此处不再赘述。

在S402中,通信节点根据接收的数据帧中包括的帧数指示字段,可以确定接收的数据帧的帧号,根据完成指示字段,可以确定帧传输过程的传输状态。

示例性的,当数据接收端接收的来自数据发送端发送的帧数指示字段的内容为“00101010”时,获取帧号为42,即该帧为本次帧传输过程的第43帧。

示例性的,当数据接收端接收的来自数据发送端发送的完成指示字段的内容为“0”时,确定本次帧传输过程未完成,当完成指示字段的内容为“1”时,确定本次帧传输过程完成。

可选的,如图5所示,本方法还包括:

S403,发送异常指示帧,其中,异常指示帧用于指示帧传输过程中的异常数据帧。

当数据接收端接收到异常数据帧,或数据帧的帧号满足预设条件时,数据接收端可以向数据发送端发送异常指示帧,用于指示所述帧传输过程中的异常数据帧。

本发明还公开了一种帧传输装置60,如图6所示,具体如下:

处理器601,用于生成数据帧,其中,数据帧包括仲裁场,仲裁场包括帧数指示字段和完成指示字段,帧数指示字段用于指示所述数据帧的帧号,帧号为小于2^N的非负整数,N为所述帧数指示字段包括的比特数,完成指示字段用于指示帧传输过程的传输状态;

发送器602,用于发送处理器601生成的数据帧。

可选的,帧传输过程的起始数据帧的帧号可以为0。

可选的,完成指示字段可以包括1位比特,其中,比特为1时,表征数据帧为帧传输过程的最后一帧,比特为0时,表征数据帧不为帧传输过程的最后一帧。

可选的,如图7所示,帧传输装置60还可以包括:

接收器603,用于接收异常指示帧,其中,异常指示帧用于指示帧传输过程中的异常数据帧。

帧传输装置60可以用于执行如图1或图3所示的方法。示例性的,处理器601可以用于执行S101的步骤,发送器602可以用于执行S102的步骤,接收器603可以用于执行S103的步骤,步骤说明已在前文中给出描述,此处不再赘述。

本发明公开的装置,发送的数据帧中包括了帧数指示字段和完成指示字段。在数据传输过程中,接收端可以根据帧数指示字段携带的信息,获取帧传输过程中数据帧的帧号,根据完成指示字段携带的信息,获取帧传输过程的传输状态。

本发明还公开了一种帧传输装置80,如图8所示,具体如下:

接收器801,用于接收数据帧,其中,数据帧包括仲裁场,仲裁场包括帧数指示字段和完成指示字段,帧数指示字段用于指示数据帧的帧号,帧号为小于2^N的非负整数,N为帧数指示字段包括的比特数,完成指示字段用于指示帧传输过程的传输状态;

处理器802,用于根据接收器801接收的数据帧,确定数据帧的帧号和帧传输过程的传输状态。

可选的,帧传输过程的起始数据帧的帧号可以为0。

可选的,完成指示字段可以包括1位比特,其中,比特为1时,表征数据帧为帧传输过程的最后一帧,比特为0时,表征数据帧不为帧传输过程的最后一帧。

可选的,如图9所示,帧传输装置80还可以包括:

发送器803,用于发送异常指示帧,其中,异常指示帧用于指示帧传输过程中的异常数据帧。

帧传输装置80可以用于执行如图4或图5所示的方法。示例性的,接收器801可以用于执行S401的步骤,处理器802可以用于执行S402的步骤,发送器803可以用于执行S403的步骤,步骤说明已在前文中给出描述,此处不再赘述。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的流程及结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1