CN102932224A - 基于can网络的数据通讯系统及基于该系统的数据通讯方法 - Google Patents

基于can网络的数据通讯系统及基于该系统的数据通讯方法 Download PDF

Info

Publication number
CN102932224A
CN102932224A CN2012104828731A CN201210482873A CN102932224A CN 102932224 A CN102932224 A CN 102932224A CN 2012104828731 A CN2012104828731 A CN 2012104828731A CN 201210482873 A CN201210482873 A CN 201210482873A CN 102932224 A CN102932224 A CN 102932224A
Authority
CN
China
Prior art keywords
data
frame
module
execution
receive
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.)
Pending
Application number
CN2012104828731A
Other languages
English (en)
Inventor
高会军
潘惠惠
汪超
于金泳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Institute of Technology
Original Assignee
Harbin Institute of Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Harbin Institute of Technology filed Critical Harbin Institute of Technology
Priority to CN2012104828731A priority Critical patent/CN102932224A/zh
Publication of CN102932224A publication Critical patent/CN102932224A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

基于CAN网络的数据通讯系统及基于该系统的数据通讯方法,涉及测控网络总线通讯领域。它是为了在基于CAN网络的通讯系统中,实现不增加系统额外资源的情况下提高字节数据传输能力。本发明的数据通讯系统包括发送端、发送数据请求模块、接收端、接收数据请求模块、数据接收模块、时间管理模块、一号错误处理模块和二号错误处理模块。其方法:定义了数据传输格式后,连接在CAN网络上的ECU准备收发总线上的数据,整理成符合应用层数据通讯帧格式,对数据进行拆分、组包处理。并且在此基础上,建立可靠的收发机制、时间管理机制和错误处理机制功能维护系统正常的运转,实现了CAN总线数据准确快捷的通讯。本发明适用于测控网络总线通讯。

Description

基于CAN网络的数据通讯系统及基于该系统的数据通讯方法
技术领域
本发明涉及测控网络总线通讯领域。
背景技术
CAN是ControllerAreaNetwork的缩写,是ISO国际标准化的串行通信协议。1986年德国电气商博世公司为解决现代汽车中众多的电子控制单元(ECU)之间的数据交换而开发的一种串行数据通信协议。CAN总线通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等项工作。CAN最大的特点是废除了传统的站地址编码,取而代之对通信数据块进行编码。采用这种方法的优点可使网络内的节点个数在理论上不受限制。它采用双线多主/从模块方式,所以一个模块出故障对系统不会有什么影响,就是一般称的被缓机制。目前CAN的高性能和可靠性已被认同,并被广泛的应用于分布式测控系统之间的通讯领域。
以CAN总线技术组建的分布式测控网络,用于连接现场的智能传感器、执行器、智能I/O模块、智能仪表、测试仪器等,就形成了基于CAN的测控网络。目前,CAN总线使用的技术规范主要是CAN2.0A和CAN2.0B,CAN2.0A报文标示符可以达到2032种,而扩展标准CAN2.0B的报文标示符几乎不受限制。
为了保证数据通讯的可靠性要求,CAN2.0技术规范中规定CAN总线数据采用短帧结构,一般数据长度不超过8个字节,组成一个单帧,这样的好处是传输时间短,受干扰概率低,具有良好的检错效果。但是由于测控网络之间ECU与ECU之间或者测控设备与ECU之间的信息交换通常超过8个字节,因此,必须进行有效的多帧数据通讯的方法。
发明内容
本发明是为了在基于CAN网络的通讯系统中,实现不增加系统额外资源的情况下提高字节数据传输能力,从而提供一种基于CAN网络的数据通讯系统及基于该系统的数据通讯方法。
基于CAN网络的数据通讯系统,它包括发送端1、发送数据请求模块、数据拆分模块31、接收端2、接收数据请求模块、数据重组模块32、时间管理模块4、一号错误处理模块51和二号错误处理模块52;
发送端1是发送数据请求模块的ECU数据请求的主动提供者;
发送数据请求模块用于将ECU数据请求发送至数据拆分模块31;
接收端2是接收数据请求模块的ECU数据请求的被动接收者;
接收数据请求模块用于接收来自数据重组模块32的数据;
数据拆分模块31用于对数据进行拆分;还用于将拆分后的数据发送到CAN网络;
数据重组模块32用于从CAN网络中接收数据,还用于对数据进行重组;
时间管理模块4用于对数据拆分模块31和数据重组模块32进行时间管理;还用于当数据拆分模块31出现错误时序时,将错误信息提供给一号错误处理模块51;还用于将数据重组模块32出现错误时序时,将错误信息提供给二号错误处理模块52;
一号错误处理模块51用于回复信息给发送端1;
二号错误处理模块52用于回复信息给接收端2。
基于上述系统的数据通讯方法,它由以下步骤实现:
步骤一、首先为连接在总线上的数据通讯系统ECU分配发送与接收的唯一身份标识ID,并将其建立成一个地址映射字典;
步骤二、当发送端要请求数据发送的时,则根据发送端的身份标识ID,并查找地址映射字典,开通一个通讯通道,动态创建一个用户协议数据单元PDU,并为PDU分配所需要的资源信息,进入发送数据处理步骤;
当接收端根据接收身份标识,判断出要接收数据时,则查找地址映射字典,开通一个通讯通道,动态创建一个用户协议数据单元PDU,为PDU分配所需要的资源信息,进入接收数据处理步骤;
发送数据处理步骤:
步骤A1、首先判断发送端请求的数据量,需要采取不同的解决方式进行数据传送;并判断请求的数据量是否小于8个字节,如果判断结果为是,则执行步骤A2,如果判断结果为否,则执行步骤A3;
步骤A2、通过发送管理模块,采用一个CAN帧将完整的请求数据传送出去,并执行步骤A5;
步骤A3、通过发送管理模块,进入发送多帧数据处理状态,并执行步骤A31;
步骤A31、进行请求数据的拆分,并对拆分的多帧数据进行顺序编号,保证接收实体能够根据编号的顺序来判断接收到的数据帧是否正确,以及能够重组多段数据帧,得到完整的原始请求数据,并首先发送第一帧数据即:首帧数据;发送完成后,等待接收端应答信息,即:流控帧,并设定超时等待参数,执行步骤A32;
步骤A32、判断在超时等待的时间内,是否收到流控数据帧,如果判断结果为否,则执行步骤A4;如果判断结果为是,则执行步骤A33;
步骤A33、收到流控数据帧后,根据编号顺序,判断是否为最后一帧数据,如果判断结果为否,则继续发送一帧数据,即:连续帧,重新延时等待接收流控帧,并执行返回执行步骤步骤A32;如果判断结果为是,则执行步骤A5;
步骤A4、终止数据发送,并执行步骤A5;
步骤A5、向发送端回复发送状态信息,结束数据发送,并进执行步骤A6;
步骤A6、删除PDU,释放PDU占用的内存空间,释放占用的通讯通路;完成发送数据处理;
接收数据处理步骤:
步骤B1、接收端收到CAN网络提供的数据帧,判断该数据帧是否为单帧,如果判断结果为是,则执行步骤B2;如果判断结果为否,则执行步骤B3;
步骤B2、接收到单帧,进入步骤B5;
步骤B3、接收到首帧,设定延时发送时间参数,等待发送流控数据帧;发送流控帧后,设置等待接收连续帧超时时间参数;并判断数据是否接收完毕,如果判断结果为否,则执行步骤B31;如果判断结果为是,则执行步骤B33;
步骤B31、判断是否在规定时间内接收到连续帧,如果判断结果为是,则执行步骤B32;如果判断结果为否,则执行步骤B4;
步骤B32、继续进行后续的数据接收工作,并判断是否完成接收,如果判断结果为是,则执行步骤B5;如果判断结果为否,则执行步骤B31;
步骤B33、根据预设的数据格式,进行数据重组,并执行步骤B5;
步骤B4、进入超时处理,终止数据接收,并执行步骤B5;
步骤B5、给发送端回复接收状态信息,将数据上报接收端,退出接收功能,进入步骤B6;
步骤B6、删除PDU,释放PDU占用的内存空间,释放占用的通讯通路;
完成接收数据处理。
步骤一中建立的地址映射字典是一个一维数据表格,该一维数据表格中的数据项包括ECU的地址信息,即:包括发送端的地址映射字典和接收端的地址映射字典。
步骤二中所述的开通一个通讯通道的具体含义是:初始化CAN通讯功能,完成开启通路和通路波特率的设定。
步骤二中动态创建的用户协议数据单元PDU中的数据项包括地址信息、身份标识、状态信息、数据缓存、数据长度和当前收发数据的长度。
在该数据通讯方法中,时间管理是通过定时中断来实现延时与超时控制。
在该数据通讯方法中,时间管理是采用计时链表来实现。
在该数据通讯方法中,采用错误处理机制处理处理超时情况或没有及时接收到连续帧的问题,具体为:接收端接收到数据帧时:
当收到单帧的长度为0时或者单帧的长度大于7时,接收端会忽略接收到的数据帧;
当收到无效首帧或者单帧时,向发送端发出无效回复信息,数据发送将被终止;
当收到正确的首帧时,向发送端回复流控帧,并且定时连续帧超时参数;
当发生超时情况时,向接收端发出超时信息,采取超时处理;
当接收端没有及时接收到连续帧时,终止数据接收,向接收端回复信息;
当发送端没有及时收到流控帧时,终止数据传送,向发送端回复错误信息。
在该数据通讯方法中,采用错误处理机制处理超时情况或没有及时接收到连续帧的问题,发送端发送数据帧时:
当发送数据无效或者数据长度错误时,丢掉数据;
当发送数据有效并且数据长度可以形成多帧数据时,首先发送首帧数据,并且定时流控阵超时参数;
当发生超时情况时,向发送端回复超时信息,采取超时处理;
当发送端没有及时收到流控帧时,终止数据传送,向发送端回复错误信息;
当发送端正确接收到流控阵时,继续数据传送,向接收端传送连续帧。
本发明基于CAN网络的数据通讯系统及基于该系统的数据通讯方法,实现了在不增加系统额外资源的情况下提高字节数据传输能力。解决了CAN2.0规范中只能传递小于8个字节数据的缺点,同时满足对系统资源的苛刻要求情况下,实现了大于8个字节数据的准确传输。本发明尤其对于测控网络通讯要求比较苛刻的情况下,减小系统中的运行资源,很好的满足性能要求,是系统高效的工作。
附图说明
图1为CAN网络通讯方法的结构示意图;
图2为CAN网络通讯方法发送端请求数据发送的方法流程图;
图3为CAN网络通讯方法接收端请求数据接收的方法流程图;图中“Y”表示“是”,“N”表示“否”;
图4为CAN网络通讯方法中用户协议数据单元创建示意图;
图5为CAN网络通讯方法时间管理机制方法流程图;
图6为CAN网络通讯方法中时间管理机制方法示意图;
图7为CAN网络通讯方法中单帧数据的收发方法示意图;
图8为CAN网络通讯方法中多帧数据的收发方法示意图。
具体实施方式
具体实施方式一、结合图1说明本具体实施方式,基于CAN网络的数据通讯系统,它包括发送端1、发送数据请求模块、数据拆分模块31、接收端2、接收数据请求模块、数据重组模块32、时间管理模块4、一号错误处理模块51和二号错误处理模块52;
发送端1是发送数据请求模块的ECU数据请求的主动提供者;
发送数据请求模块用于将ECU数据请求发送至数据拆分模块31;
接收端2是接收数据请求模块的ECU数据请求的被动接收者;
接收数据请求模块用于接收来自数据重组模块32的数据;
数据拆分模块31用于对数据进行拆分;还用于将拆分后的数据发送到CAN网络;
数据重组模块32用于从CAN网络中接收数据,还用于对数据进行重组;
时间管理模块4用于对数据拆分模块31和数据重组模块32进行时间管理;还用于当数据拆分模块31出现错误时序时,将错误信息提供给一号错误处理模块51;还用于将数据重组模块32出现错误时序时,将错误信息提供给二号错误处理模块52;
一号错误处理模块51用于回复信息给发送端1;
二号错误处理模块52用于回复信息给接收端2。
CAN网络地址映射字典如表1所示:
表1
Figure BDA00002457030900051
具体实施方式二、结合图2、图3说明本实施方式,基于CAN网络的数据通讯系统及基于该系统的数据通讯方法,它是按照如下步骤实现的:
步骤一、首先为连接在总线上的ECU分配发送与接收的唯一身份标识ID,并将其建立成一个地址映射字典;
步骤二、如果发送端要请求数据发送的时候,根据发送端的身份标识,查找地址映射字典,开通一个通讯通道,动态创建一个用户协议数据单元PDU,为PDU分配所需要的资源信息,进入发送数据处理步骤,如果接收端根据接收身份标识,判断出要接收数据的时候,查找地址映射字典,开通一个通讯通道,动态创建一个用户协议数据单元PDU,为PDU分配所需要的资源信息,进入接收数据处理步骤;
发送数据处理步骤:
步骤A1、首先判断发送端请求的数据量,需要采取不同的解决方式进行数据传送。如果请求的数据量小于8个字节,则进入步骤A2,否则,进入步骤A3;
步骤A2、通过发送管理模块,将一个CAN帧(称为单帧)将完整的请求数据传送出去,进入步骤A5;
步骤A3、通过发送管理模块,进入发送多帧数据处理状态;进入步骤A31;
步骤A31、进行请求数据的拆分,并对拆分的多帧数据进行顺序编号,使得接收实体可以根据编号的顺序来判断接收到的数据帧是否正确,以及能够重组多段数据帧,得到完整的原始请求数据,首先发送第一帧数据(称为首帧数据)。发送完成后,等待接收端应答信息(称为流控帧),设定超时等待参数,进入步骤A32;
步骤A32、等待接收流控帧,判断在超时等待的时间内,是否收到流控数据帧,如果没收到,则进入步骤A4,如果收到,那么进入A33;
步骤A33、收到流控数据帧后,根据编号顺序,继续发送一帧数据(称为连续帧),如果不是最后的数据,则重新延时等待接收流控帧,进入步骤A32循环,直到发送最后一帧数据,进入步骤A5;
步骤A4、进入超时处理模块,调用超时处理函数,发送终止,进入步骤A5;
步骤A5、向发送端回复发出确认信息,退出发送功能,进入步骤A6;
步骤A6、删除PDU,释放PDU占用的内存空间,释放占用的通讯通路。
接收数据处理步骤:
步骤B1、接收端收到CAN网络提供的数据帧,首先判断是单帧还是多帧,如果是多帧数据,如果是单帧,进入步骤B2,否则,进入步骤B3;
步骤B2、接收到单帧,进入步骤B5;
步骤B3、接收到首帧,设定延时发送时间参数,等待发送流控数据帧。发送流控帧后,设置等待接收连续帧超时时间参数。判断数据是否接收完毕,若未完成,进入步骤B31,若完成,进入步骤B33;
步骤B31、判断如果在规定时间内接收到连续帧,则进行步骤B32,否则,进入步骤B4;
步骤B32、继续进行后续的数据接收工作,并判断是否完成接收,若是,进入步骤B5,若否,进步步骤B31;
步骤B33、根据规定的数据格式,进行数据重组,进入步骤B5;
步骤B4、进入超时处理,终止数据接收,进入步骤B5;
步骤B5、给发送端回复信息,将数据上报接收端,退出接收功能,进入步骤B6;
步骤B6、删除PDU,释放PDU占用的内存空间,释放占用的通讯通路。
图4为CAN网络通讯方法接收端请求数据接收的方法流程图;其根据发送端、接收端的数据请求,初始化创建用户数据协议单元PDU,调用收发处理机制,处理完成后,将创建的PDU占用的空间释放。
下表是CAN网络通讯方法的数据帧格式如表2所示:
表2
Figure BDA00002457030900071
其中:
FF:0表示为标准帧格式,1表示为扩展帧格式;
PTR:0表示为数据帧,1表示为远程帧;
DLC.X:表示数据长度代码位(0~8);
ID.X:身份标识符位:
ID.28~ID.26为保留位,初始值为0;
ID.25~ID.18为发送端地址标识;
ID.17~ID.10为接收端地址标识;
ID.9为数据传输方向标识,表明本帧数据的任务属性,对发送端来说,0表示发送,1表示接收,对接收端来说,0表示接收,1表示发送;
ID.8~ID.7为报文控制,00表示单帧、01表示首帧、10表示连续帧、11表示流控帧;
ID.6~ID.0为报文序号,指出该帧是在报文中的第几帧,
DATA为数据域。
所述的数据传输格式,是CAN网络上各个ECU能够识别的字符序列。
本实施方式中,时间管理机制是根据系统时间节拍,当发送端、接收端有定时需求时,动态的插入报警时间结点,当等待的事件到达或者超时时,将删除报警结点,并进行超时或者延时操作。其流程和原理如图5和图6所示。
所述的时间管理机制是为了防止通信双方因等待过久而被永久挂起,进而失去通信能力。网络上不同的ECU进行通信时,都会设置时间参数。
本实施方式中,收发机制管理功能根据收发端数据请求的字节数大小,如果是单帧数据,对等实体之间按照单帧数据的收发流程执行,如果是多帧数据,对等实体之间按照多帧数据的流程执行,其流程和原理如图7和图8所示。
所述的收发机制是ECU与ECU之间的数据交流,实现对等实体之间的通讯,主要操作为实现对等实体之间的通信拆分、重组和流控制方法。
本实施方式中,错误处理机制是在通讯ECU之间出现错误时,错误处理模块负责将错误信息与本模块中的错误类型进行匹配,并作出相应的处理,或启动另一模块进行处理。
本发明的优点是:
1、动态的创建PDU,不增加系统额外的资源,对于汽车电子资源要求比较苛刻的情况下,减小系统中的运行资源,很好的满足性能要求,是系统高效的工作。
2、在收发处理机制中,通过发送端和接收端的数据流程分析,可以知道CAN网络在通信过程中的数据流向。在发送端数据的发送过程中,要收到接收端流控帧的控制,配合接收端的接收处理能力。在分段数据的接收过程中,接收端需要根据自身缓冲区的容量和数据的处理速度,发送相应的流控数据帧,以控制发送端数据发送的速率。这样是收发过程更加的可靠和高效,增加系统的实时性。
3、在时间管理机制中,采用计时链表的方式来实现,这样避免实现延时和超时功能的服务很多,如果申请过多的定时器,会造成很重的负荷和低效的工作。在需要计时的时刻将时间参数动态的插入和删除时间节点,减少运行中定时器的使用数量。使系统高效的运行。
4、在错误处理机制中,当发生超时错误情况是,会向发送端发出超时处理回复信息,对接收端发出超时处理回复信息。对不同时间参数的超时,采取错误处理。

Claims (9)

1.基于CAN网络的数据通讯系统,其特征是:它包括发送端(1)、发送数据请求模块、数据拆分模块(31)、接收端(2)、接收数据请求模块、数据重组模块(32)、时间管理模块(4)、一号错误处理模块(51)和二号错误处理模块(52);
发送端(1)是发送数据请求模块的ECU数据请求的主动提供者;
发送数据请求模块用于将ECU数据请求发送至数据拆分模块(31);
接收端(2)是接收数据请求模块的ECU数据请求的被动接收者;
接收数据请求模块用于接收来自数据重组模块(32)的数据;
数据拆分模块(31)用于对数据进行拆分;还用于将拆分后的数据发送到CAN网络;
数据重组模块(32)用于从CAN网络中接收数据,还用于对数据进行重组;
时间管理模块(4)用于对数据拆分模块(31)和数据重组模块(32)进行时间管理;还用于当数据拆分模块(31)出现错误时序时,将错误信息提供给一号错误处理模块(51);还用于将数据重组模块(32)出现错误时序时,将错误信息提供给二号错误处理模块(52);
一号错误处理模块(51)用于回复信息给发送端(1);
二号错误处理模块(52)用于回复信息给接收端(2)。
2.基于权利要求1的数据通讯方法,其特征在于,它由以下步骤实现:
步骤一、首先为连接在总线上的数据通讯系统ECU分配发送与接收的唯一身份标识ID,并将其建立成一个地址映射字典;
步骤二、当发送端要请求数据发送的时,则根据发送端的身份标识ID,并查找地址映射字典,开通一个通讯通道,动态创建一个用户协议数据单元PDU,并为PDU分配所需要的资源信息,进入发送数据处理步骤;
当接收端根据接收身份标识,判断出要接收数据时,则查找地址映射字典,开通一个通讯通道,动态创建一个用户协议数据单元PDU,为PDU分配所需要的资源信息,进入接收数据处理步骤;
发送数据处理步骤:
步骤A1、首先判断发送端请求的数据量,需要采取不同的解决方式进行数据传送;并判断请求的数据量是否小于8个字节,如果判断结果为是,则执行步骤A2,如果判断结果为否,则执行步骤A3;
步骤A2、通过发送管理模块,采用一个CAN帧将完整的请求数据传送出去,并执行步骤A5;
步骤A3、通过发送管理模块,进入发送多帧数据处理状态,并执行步骤A31;
步骤A31、进行请求数据的拆分,并对拆分的多帧数据进行顺序编号,保证接收实体能够根据编号的顺序来判断接收到的数据帧是否正确,以及能够重组多段数据帧,得到完整的原始请求数据,并首先发送第一帧数据即:首帧数据;发送完成后,等待接收端应答信息,即:流控帧,并设定超时等待参数,执行步骤A32;
步骤A32、判断在超时等待的时间内,是否收到流控数据帧,如果判断结果为否,则执行步骤A4;如果判断结果为是,则执行步骤A33;
步骤A33、收到流控数据帧后,根据编号顺序,判断是否为最后一帧数据,如果判断结果为否,则继续发送一帧数据,即:连续帧,重新延时等待接收流控帧,并执行返回执行步骤步骤A32;如果判断结果为是,则执行步骤A5;
步骤A4、终止数据发送,并执行步骤A5;
步骤A5、向发送端回复发送状态信息,结束数据发送,并进执行步骤A6;
步骤A6、删除PDU,释放PDU占用的内存空间,释放占用的通讯通路;完成发送数据处理;
接收数据处理步骤:
步骤B1、接收端收到CAN网络提供的数据帧,判断该数据帧是否为单帧,如果判断结果为是,则执行步骤B2;如果判断结果为否,则执行步骤B3;
步骤B2、接收到单帧,进入步骤B5;
步骤B3、接收到首帧,设定延时发送时间参数,等待发送流控数据帧;发送流控帧后,设置等待接收连续帧超时时间参数;并判断数据是否接收完毕,如果判断结果为否,则执行步骤B31;如果判断结果为是,则执行步骤B33;
步骤B31、判断是否在规定时间内接收到连续帧,如果判断结果为是,则执行步骤B32;如果判断结果为否,则执行步骤B4;
步骤B32、继续进行后续的数据接收工作,并判断是否完成接收,如果判断结果为是,则执行步骤B5;如果判断结果为否,则执行步骤B31;
步骤B33、根据预设的数据格式,进行数据重组,并执行步骤B5;
步骤B4、进入超时处理,终止数据接收,并执行步骤B5;
步骤B5、给发送端回复接收状态信息,将数据上报接收端,退出接收功能,进入步骤B6;
步骤B6、删除PDU,释放PDU占用的内存空间,释放占用的通讯通路;
完成接收数据处理。
3.根据权利要求2所述的数据通讯方法,其特征在于步骤一中建立的地址映射字典是一个一维数据表格,该一维数据表格中的数据项包括ECU的地址信息,即:包括发送端的地址映射字典和接收端的地址映射字典。
4.根据权利要求2所述的数据通讯方法,其特征在于步骤二中所述的开通一个通讯通道的具体含义是:初始化CAN通讯功能,完成开启通路和通路波特率的设定。
5.根据权利要求2所述的数据通讯方法,其特征在于步骤二中动态创建的用户协议数据单元PDU中的数据项包括地址信息、身份标识、状态信息、数据缓存、数据长度和当前收发数据的长度。
6.根据权利要求2所述的数据通讯方法,其特征在于在该数据通讯方法中,时间管理是通过定时中断来实现延时与超时控制。
7.根据权利要求6所述的数据通讯方法,其特征在于在该数据通讯方法中,时间管理是采用计时链表来实现。
8.根据权利要求2所述的数据通讯方法,其特征在于在该数据通讯方法中,采用错误处理机制处理超时情况或没有及时接收到连续帧的问题,具体为:接收端接收到数据帧时:
当收到单帧的长度为0时或者单帧的长度大于7时,接收端会忽略接收到的数据帧;
当收到无效首帧或者单帧时,向发送端发出无效回复信息,数据发送将被终止;
当收到正确的首帧时,向发送端回复流控帧,并且定时连续帧超时参数;
当发生超时情况时,向接收端发出超时信息,采取超时处理;
当接收端没有及时接收到连续帧时,终止数据接收,向接收端回复信息;
当发送端没有及时收到流控帧时,终止数据传送,向发送端回复错误信息。
9.根据权利要求2所述的数据通讯方法,其特征在于在该数据通讯方法中,采用错误处理机制处理超时情况或没有及时接收到连续帧的问题,具体为:发送端发送数据帧时:
当发送数据无效或者数据长度错误时,丢掉数据;
当发送数据有效并且数据长度可以形成多帧数据时,首先发送首帧数据,并且定时流控阵超时参数;
当发生超时情况时,向发送端回复超时信息,采取超时处理;
当发送端没有及时收到流控帧时,终止数据传送,向发送端回复错误信息;
当发送端正确接收到流控阵时,继续数据传送,向接收端传送连续帧。
CN2012104828731A 2012-11-23 2012-11-23 基于can网络的数据通讯系统及基于该系统的数据通讯方法 Pending CN102932224A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2012104828731A CN102932224A (zh) 2012-11-23 2012-11-23 基于can网络的数据通讯系统及基于该系统的数据通讯方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012104828731A CN102932224A (zh) 2012-11-23 2012-11-23 基于can网络的数据通讯系统及基于该系统的数据通讯方法

Publications (1)

Publication Number Publication Date
CN102932224A true CN102932224A (zh) 2013-02-13

Family

ID=47646931

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012104828731A Pending CN102932224A (zh) 2012-11-23 2012-11-23 基于can网络的数据通讯系统及基于该系统的数据通讯方法

Country Status (1)

Country Link
CN (1) CN102932224A (zh)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105389281A (zh) * 2015-10-15 2016-03-09 珠海格力电器股份有限公司 Can总线数据发送、接收方法及固件升级方法
CN105446910A (zh) * 2015-11-24 2016-03-30 东软集团股份有限公司 一种数据传输方法及装置
CN105471767A (zh) * 2014-08-25 2016-04-06 深圳市中兴微电子技术有限公司 交换接入模块、信元封装方法及交换网系统
CN106385340A (zh) * 2016-08-31 2017-02-08 上海富欣智能交通控制有限公司 基于LabVIEW的CAN总线自收发测试系统及其测试方法
CN106452667A (zh) * 2016-08-30 2017-02-22 中国第汽车股份有限公司 一种商用车can通信传输方法
CN107147478A (zh) * 2017-07-07 2017-09-08 河南辉煌科技股份有限公司 基于can2.0长报文数据标准帧的组织算法
CN107748728A (zh) * 2017-10-09 2018-03-02 南京云悦欣自动化工程有限公司 一种串口通讯分配装置及其通讯方法
CN108199941A (zh) * 2017-12-29 2018-06-22 北京纳米维景科技有限公司 一种基于can2.0b的can总线通信方法
CN110086566A (zh) * 2019-03-18 2019-08-02 深圳市元征科技股份有限公司 一种车载数据的传输方法及车载设备
CN110474950A (zh) * 2019-06-27 2019-11-19 陕西法士特齿轮有限责任公司 Uds网络层协议实现方法、计算机可读存储介质、计算机设备
CN110531743A (zh) * 2019-09-25 2019-12-03 重庆长安汽车股份有限公司 发动机管理系统对总线相关控制模块的诊断方法
CN110798386A (zh) * 2019-11-12 2020-02-14 中电科仪器仪表有限公司 一种可配置的can总线协议收发测试方法及系统
CN112034811A (zh) * 2019-06-03 2020-12-04 现代自动车株式会社 控制器诊断装置及方法
CN112583683A (zh) * 2020-12-29 2021-03-30 中国科学院声学研究所 一种主从式can fd总线应用层通信方法及系统、电子设备
CN113079074A (zh) * 2021-03-25 2021-07-06 成都纵横自动化技术股份有限公司 一种基于can总线的协议栈通信方法、装置和存储介质
CN114513385A (zh) * 2022-03-24 2022-05-17 深圳市元征科技股份有限公司 数据传输方法、装置、电子设备及存储介质
CN115102803A (zh) * 2022-06-22 2022-09-23 重庆长安新能源汽车科技有限公司 一种can通讯多帧传输方法、ecu

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1929354A (zh) * 2005-09-09 2007-03-14 乐金电子(昆山)电脑有限公司 Tcp传送控制中的数据包传送率决定方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1929354A (zh) * 2005-09-09 2007-03-14 乐金电子(昆山)电脑有限公司 Tcp传送控制中的数据包传送率决定方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ISO: "《ISO15765-2》", 15 November 2011 *
常欣红等: "汽车故障诊断标准ISO15765的网络层分析与实现", 《汽车技术》 *

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105471767A (zh) * 2014-08-25 2016-04-06 深圳市中兴微电子技术有限公司 交换接入模块、信元封装方法及交换网系统
CN105389281A (zh) * 2015-10-15 2016-03-09 珠海格力电器股份有限公司 Can总线数据发送、接收方法及固件升级方法
CN105446910A (zh) * 2015-11-24 2016-03-30 东软集团股份有限公司 一种数据传输方法及装置
CN105446910B (zh) * 2015-11-24 2019-01-25 东软集团股份有限公司 一种数据传输方法及装置
CN106452667A (zh) * 2016-08-30 2017-02-22 中国第汽车股份有限公司 一种商用车can通信传输方法
CN106385340A (zh) * 2016-08-31 2017-02-08 上海富欣智能交通控制有限公司 基于LabVIEW的CAN总线自收发测试系统及其测试方法
CN107147478A (zh) * 2017-07-07 2017-09-08 河南辉煌科技股份有限公司 基于can2.0长报文数据标准帧的组织算法
CN107748728B (zh) * 2017-10-09 2020-06-19 南京云悦欣自动化工程有限公司 一种串口通讯分配装置及其通讯方法
CN107748728A (zh) * 2017-10-09 2018-03-02 南京云悦欣自动化工程有限公司 一种串口通讯分配装置及其通讯方法
CN108199941A (zh) * 2017-12-29 2018-06-22 北京纳米维景科技有限公司 一种基于can2.0b的can总线通信方法
CN110086566A (zh) * 2019-03-18 2019-08-02 深圳市元征科技股份有限公司 一种车载数据的传输方法及车载设备
CN112034811A (zh) * 2019-06-03 2020-12-04 现代自动车株式会社 控制器诊断装置及方法
CN110474950A (zh) * 2019-06-27 2019-11-19 陕西法士特齿轮有限责任公司 Uds网络层协议实现方法、计算机可读存储介质、计算机设备
CN110531743A (zh) * 2019-09-25 2019-12-03 重庆长安汽车股份有限公司 发动机管理系统对总线相关控制模块的诊断方法
CN110798386A (zh) * 2019-11-12 2020-02-14 中电科仪器仪表有限公司 一种可配置的can总线协议收发测试方法及系统
CN112583683A (zh) * 2020-12-29 2021-03-30 中国科学院声学研究所 一种主从式can fd总线应用层通信方法及系统、电子设备
CN113079074A (zh) * 2021-03-25 2021-07-06 成都纵横自动化技术股份有限公司 一种基于can总线的协议栈通信方法、装置和存储介质
CN114513385A (zh) * 2022-03-24 2022-05-17 深圳市元征科技股份有限公司 数据传输方法、装置、电子设备及存储介质
CN114513385B (zh) * 2022-03-24 2024-04-02 深圳市元征科技股份有限公司 数据传输方法、装置、电子设备及存储介质
CN115102803A (zh) * 2022-06-22 2022-09-23 重庆长安新能源汽车科技有限公司 一种can通讯多帧传输方法、ecu

Similar Documents

Publication Publication Date Title
CN102932224A (zh) 基于can网络的数据通讯系统及基于该系统的数据通讯方法
CN100525233C (zh) 一种基于can总线的信号实时性处理方法
CN107276711B (zh) EtherCAT主站装置
CN104052758A (zh) 电能表多通信协议的自适应方法
CN107819659B (zh) 一种基于spi的智能级联通信网络
CN101232425A (zh) 一种总线式分布控制系统主从站对端控制方法
CN102811152B (zh) 一种多主总线网络通讯实时交易数据交换实现方法
CN103067129B (zh) 网络数据传输方法和系统
CN103595598A (zh) 一种基于光纤的远程透明传输串口服务器及其控制模式
CN102664779A (zh) 一种can总线数据传送方法
CN104092515B (zh) 兼容can2.0b协议的can总线通信方法
EP2913977A2 (en) Resource information acquisition method, system and device for internet of things terminal device
CN105183687A (zh) 一种分时串口通信方法及系统
CN114338274B (zh) 一种异构工业现场总线融合方法及系统
CN108228521A (zh) 一种高速串口通信网络
CN105471660B (zh) 一种适用于新型低轨卫星平台的数据获取方法
CN106953809B (zh) 一种基于485分时通信的设备资源采集方法
CN102694712B (zh) 网络系统及网络至网络桥接器
CN105515925A (zh) 一种uart多主实时通信系统
JP2003198572A (ja) 確定的フィールドバス及びその種のバスの管理方法
CN101753486A (zh) 一种工业自动化现场总线网关设备
CN100493018C (zh) 一种通过网络中的总线接口进行通信的方法和系统
CN102420734A (zh) 一种can总线拓扑结构实现系统
CN101320359A (zh) 串口设备控制电路及控制方法
CN101895560A (zh) 一种开放性二级拓扑结构的现场总线dp-net

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130213