CN103514128A - 一种总线信号传输、接收方法及装置 - Google Patents

一种总线信号传输、接收方法及装置 Download PDF

Info

Publication number
CN103514128A
CN103514128A CN201210200109.0A CN201210200109A CN103514128A CN 103514128 A CN103514128 A CN 103514128A CN 201210200109 A CN201210200109 A CN 201210200109A CN 103514128 A CN103514128 A CN 103514128A
Authority
CN
China
Prior art keywords
value
signal
bus
signal transmission
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.)
Pending
Application number
CN201210200109.0A
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.)
Guangzhou Automobile Group Co Ltd
Original Assignee
Guangzhou Automobile Group Co Ltd
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 Guangzhou Automobile Group Co Ltd filed Critical Guangzhou Automobile Group Co Ltd
Priority to CN201210200109.0A priority Critical patent/CN103514128A/zh
Publication of CN103514128A publication Critical patent/CN103514128A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明提供一种总线信号传输、接收方法及装置,该总线信号传输方法包括数据流被分为一个一个连续的数据帧进行信号传输,数据帧包括下列位场:帧起始、仲裁场、控制场、数据场、CRC校验场、应答场、帧结束;将数据场中的至少一个位设置为用于增加下列中的至少一个:报文计数值、报文校验值、信号有效值、信号保护值,以防止数据传输错误。该总线信号接收方法包括信号接收装置接收到信号后,采用与信号传输装置相同的算法机制对报文计数值、报文校验值、信号有效值或信号保护值进行计算,然后把计算所得值与接收到的相应的值进行比较,如果计算所得的值与接收所得的值一致,那么信号有效;如果其中某一个值不一致,则表示信号传输出现错误。

Description

一种总线信号传输、接收方法及装置
技术领域
本发明涉及信号传输、接收技术领域,尤其涉及一种防错总线信号传输、接收方法及装置。
背景技术
CAN(Controller Area Network)即控制器局域网,是德国BOSCH公司在20世纪80年代初,为了解决现代汽车中众多的控制与测试仪器之间的数据交换而开发的一种串行数据通信协议,而CAN2.0A/B便是这个协议的版本。在CAN2.0A/B中定义了CAN总线通信报文的格式、传输方式等。
在CAN2.0A/B的规范中就已经对报文及信号的传输采用了CRC(CyclicRedundancy Check,循环冗余校验)校验机制来防止传输的信号出错。CRC码检错的工作原理:CRC码检错是将被处理报文的比特序列当作一个二进制多项式A(x)的系数,该系数除以发送方和接收方预先约定好的生成多项式g(x)后,将求得的余数P(x)作为CRC校验码附加到原始的报文上,并一起发给接收方。接收方用同样的g(x)去除收到的报文B(x),如果余数等于p(x),则传输无误(此时A(x)和B(x)相同);否则传输过程中出错,由发送端重发,重新开始CRC校验,直到无误为止。
但是这种机制还是不能有效地防止信号在传输过程中由于EMC(Electro Magnetic Compatibility,电磁兼容性)的干扰或者是信号由于控制单元内部寄存器错误导致的错误。
发明内容
本发明的特征和优点在下文的描述中部分地陈述,或者可从该描述显而易见,或者可通过实践本发明而学习。
为克服现有技术的问题,本发明提供一种总线信号传输方法、接收方法,及相应的总线信号传输装置和接收装置,有效地防止信号在传输过程中的传输错误,提高信号传输的正确性。
本发明解决上述技术问题所采用的技术方案如下:
根据本发明的一个方面,提供一种总线信号传输方法,数据流被分为一个一个连续的数据帧进行信号传输,数据帧包括下列位场:帧起始、仲裁场、控制场、数据场、CRC校验场、应答场、帧结束;将数据场中的至少一个位设置为用于增加下列中的至少一个:报文计数值、报文校验值、信号有效值、信号保护值,以防止数据传输错误。
根据本发明的一个实施例,报文计数值对所发送的数据帧进行计数,用于防止数据帧在传输过程中出现丢失。
根据本发明的一个实施例,报文计数值采用长度为4位的计数信号,其初始值为0,报文每发送一帧则其值更新增加1,一直到增加到15后,重新回到0,然后再次增加。
根据本发明的一个实施例,报文校验值是对数据场中的数据进行校验后所得的值,用于防止数据帧在传输过程中由于干扰、微处理器出现错误而造成数据传输错误。
根据本发明的一个实施例,数据场由8个字节构成,报文校验值的长度为1个字节,其值为数据场中除报文校验值字节以外的7个字节相加后与0xFF进行异或操作所得的值。
根据本发明的一个实施例,信号有效值的长度为1位,其值为0或1,代表数据场中的信号是否有效。
根据本发明的一个实施例,信号保护值的长度等于被保护的信号的长度,其值为被保护的信号与信号有效值及报文计数值相加后与0xFF进行异或操作所得的值。
根据本发明的另一个方面,提供一种总线信号接收方法,信号接收装置接收传输的信号后,采用与信号传输装置相同的算法机制对报文计数值、报文校验值、信号有效值或信号保护值进行计算,然后把计算所得值与接收到的相应的值进行比较,如果计算所得的值与接收所得的值一致,那么信号有效;如果其中某一个值不一致,则表示信号传输出现错误,不使用该信号。
根据本发明的又一个方面,提供一种总线信号传输装置,采用相应总线信号传输方法进行总线信号的传输。
根据本发明的再一个方面,提供一种总线信号接收装置,采用相应总线信号接收方法进行总线信号的接收处理。
由于本发明采用将数据场中的至少一个位设置为用于增加下列中的至少一个:报文计数值、报文校验值、信号有效值、信号保护值,从而可以有效地防止信号在传输过程中由于EMC的干扰或者是信号由于控制单元内部寄存器错误导致的信号传输错误,大大地提高了信号传输的正确性。
附图说明
下面通过参考附图并结合实例具体地描述本发明,本发明的优点和实现方式将会更加明显,其中附图所示内容仅用于对本发明的解释说明,而不构成对本发明的任何意义上的限制,在附图中:
图1为CAN2.0定义的数据帧格式示意图;
图2为图1中CAN总线报文的数据场结构示意图;
图3为本发明实施例的总线信号传输方法示意图;
图4为本发明实施例的总线信号接收方法示意图;
图5为本发明实施例的总线信号数据帧格式示意图。
具体实施方式
图1示出了CAN2.0定义的数据帧格式,数据帧1包括下列位场:帧起始11、仲裁场12、控制场13、数据场14、CRC校验场15、应答场16、帧结束17。
图2示出了图1中CAN总线报文的数据场结构,采用CAN总线进行数据传输的时候,先给数据帧1分配好标识符(ID),然后把数据填充进数据场14中便可传输。因为数据场14最大的字节数是8个字节(byte),一个字节是8位(bit),所以一次一帧数据帧1能传输的数据为8*8=64(bit)位的数据。
如图3所示,本发明提供一种总线信号传输方法,包括下列步骤:
步骤S1、数据流被分为一个一个连续的数据帧进行信号传输,数据帧包括下列位场:帧起始、仲裁场、控制场、数据场、CRC校验场、应答场、帧结束;
步骤S2、将数据场中的至少一个位设置为用于增加下列中的至少一个:报文计数值、报文校验值、信号有效值、信号保护值,以防止数据传输错误。
如图4所示,本发明提供一种总线信号接收方法,包括下列步骤:
步骤S3、信号接收装置接收到传输的信号后,采用与信号传输装置相同的算法机制对报文计数值、报文校验值、信号有效值或信号保护值进行计算;
步骤S4、然后把计算所得值与接收到的相应的值进行比较,如果计算所得的值与接收所得的值一致,那么信号有效;如果其中某一个值不一致,则表示信号传输出现错误,不使用该信号。
如图5所示,在本实施例中,数据流被分为一个一个连续的数据帧1进行信号传输,数据帧1包括下列位场:帧起始11、仲裁场12、控制场13、数据场14、CRC校验场15、应答场16、帧结束17,而且本实施例在CAN总线通信报文的数据场14中增加报文计数值(Message Counter)142、报文校验值(Message Checksum)141、信号有效值(Validity)144、及信号保护值(Protected Value)143,然后接收这些信号的接收装置根据相同机制计算这些值后与接收到的值进行比较判断是否一致来决定是否使用接收到信号,从而提高了信号传输的正确性和防止接收的接收机误动作。
本实施例的具体实施方法为:
1、在发送报文的数据场14中增加报文计数值142、报文校验值141、信号有效值144、及信号保护值143。本发明总线报文的数据帧格式如图5所示。进行数据传输的时候,先给数据帧1分配好标识符(ID),然后把数据填充进数据场14中便可传输。
报文计数值142:用于防止数据帧在传输过程中出现丢失;
报文校验值141:用于防止数据帧在传输过程中由于干扰、微处理器出现错误等造成数据传输错误;
信号有效值144:用于对信号的有效性进行认证;
信号保护值143:用于防止信号在传输过程中的错误。
当然,本领域技术人员可以在数据场中只增加报文计数值142、报文校验值141、信号有效值144、信号保护值143中的其中1-3种信号,也可以实现本发明的部分技术效果,这些变化方案也在本发明的保护范围之内。
上述信号值在报文数据场中的增加方法为:
1)首先在byte6的bit0到bit3上增加报文计数值(Message Counter)142,其长度为4个bit,其信号值初始值为0,报文每发送一次则其值更新增加1,一直到增加到15后,重新回到0,然后再次增加1,发送序列为0,1,2,3……15,0,1,2,3……15,0,1,2,3,……。
2)在Byte7增加报文校验信号值(Message Checksum)141,其长度为8个bit,其信号值为:Message Checksum=(Byte0+Byte1+……+Byte6)XOR(0xFF),XOR为异或操作。
3)对传输的信号(如信号A)增加信号有效值(Validity)144,其长度为1bit,值为0或1。有效值144在数据场的位置为除上面已使用的位置外的任意位置。
4)最后对传输的信号(如信号A)增加信号保护值(Protect Value)143,其长度等于被保护的信号的长度。保护值143在数据场的位置为除上面已使用的位置外的任意位置,值为Protect Value=(A+Validity+Message Counter)XOR(0xFF),XOR为异或操作。
2、信号的接收单元接收到这些信号后,根据相同的算法机制对报文计数值142、报文校验值141、信号有效值144、及信号保护值143进行计算,然后把计算所得值与接收到的值进行比较,如果计算所得一致与接收所得的值一致,那么信号有效,可以使用,如表1中所示。
表1
Figure BDA00001774146000061
如表2中所示,如果其中某一个值不一致,那么则表示信号传输出现错误,不使用该信号。
表2
Figure BDA00001774146000071
本发明同时提供相应的总线信号传输装置和接收装置,分别采用上述的传输方法和接收方法进行信号的传输和接收处理。
以上参照附图说明了本发明的优选实施例,本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明。举例而言,作为一个实施例的部分示出或描述的特征可用于另一实施例以得到又一实施例。以上仅为本发明较佳可行的实施例而已,并非因此局限本发明的权利范围,凡运用本发明说明书及附图内容所作的等效变化,均包含于本发明的权利范围之内。

Claims (10)

1.一种总线信号传输方法,数据流被分为一个一个连续的数据帧进行信号传输,所述数据帧包括下列位场:帧起始、仲裁场、控制场、数据场、CRC校验场、应答场、帧结束;其特征在于:将所述数据场中的至少一个位设置为用于增加下列中的至少一个:报文计数值、报文校验值、信号有效值、信号保护值,以防止数据传输错误。
2.根据权利要求1所述的总线信号传输方法,其特征在于:所述报文计数值对所发送的数据帧进行计数,用于防止数据帧在传输过程中出现丢失。
3.根据权利要求2所述的总线信号传输方法,其特征在于:所述报文计数值采用长度为4位的计数信号,其初始值为0,报文每发送一帧则其值更新增加1,一直到增加到15后,重新回到0,然后再次增加。
4.根据权利要求1所述的总线信号传输方法,其特征在于:所述报文校验值是对所述数据场中的数据进行校验后所得的值,用于防止数据帧在传输过程中由于干扰、微处理器出现错误而造成数据传输错误。
5.根据权利要求4所述的总线信号传输方法,其特征在于:所述数据场由8个字节构成,所述报文校验值的长度为1个字节,其值为所述数据场中除所述报文校验值字节以外的7个字节相加后与0xFF进行异或操作所得的值。
6.根据权利要求1所述的总线信号传输方法,其特征在于:所述信号有效值的长度为1位,其值为0或1,代表数据场中的信号是否有效。
7.根据权利要求6所述的总线信号传输方法,其特征在于:所述信号保护值的长度等于被保护的信号的长度,其值为被保护的信号与信号有效值及报文计数值相加后与0xFF进行异或操作所得的值。
8.一种总线信号接收方法,其特征在于:信号接收装置接收到根据权利要求1至7中任一项所传输的信号后,采用与信号传输装置相同的算法机制对报文计数值、报文校验值、信号有效值或信号保护值进行计算,然后把计算所得值与接收到的相应的值进行比较,如果计算所得的值与接收所得的值一致,那么信号有效;如果其中某一个值不一致,则表示信号传输出现错误,不使用该信号。
9.一种总线信号传输装置,其特征在于,采用权利要求1至7中任一项所述的总线信号传输方法进行总线信号的传输。
10.一种总线信号接收装置,其特征在于:采用权利要求8所述的总线信号接收方法进行总线信号的接收处理。
CN201210200109.0A 2012-06-15 2012-06-15 一种总线信号传输、接收方法及装置 Pending CN103514128A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210200109.0A CN103514128A (zh) 2012-06-15 2012-06-15 一种总线信号传输、接收方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210200109.0A CN103514128A (zh) 2012-06-15 2012-06-15 一种总线信号传输、接收方法及装置

Publications (1)

Publication Number Publication Date
CN103514128A true CN103514128A (zh) 2014-01-15

Family

ID=49896876

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210200109.0A Pending CN103514128A (zh) 2012-06-15 2012-06-15 一种总线信号传输、接收方法及装置

Country Status (1)

Country Link
CN (1) CN103514128A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104639296A (zh) * 2015-02-28 2015-05-20 安徽江淮汽车股份有限公司 一种can总线数据场校验方法及系统
CN104836832A (zh) * 2014-12-10 2015-08-12 北汽福田汽车股份有限公司 车辆的can信号传输安全与校验方法
CN106961370A (zh) * 2017-05-17 2017-07-18 上海理工大学 提高can总线通信速率的方法
CN108268420A (zh) * 2016-12-31 2018-07-10 智车优行科技(北京)有限公司 处理器之间的通信方法、处理器和电子设备
CN110213018A (zh) * 2019-05-09 2019-09-06 北京汽车股份有限公司 车载总线的数据通信方法、装置及车辆
CN112003773A (zh) * 2020-07-15 2020-11-27 东风汽车集团有限公司 一种can总线安全数据的端到端校验方法及系统
CN113436364A (zh) * 2021-06-22 2021-09-24 广汽埃安新能源汽车有限公司 Tbox无效信号值判断方法、装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101087235A (zh) * 2007-07-17 2007-12-12 中南大学 一种基于fpga的多功能通信接口转换设备和方法
CN201114146Y (zh) * 2007-06-26 2008-09-10 比亚迪股份有限公司 串联式混合动力汽车的控制系统
CN101854279A (zh) * 2009-04-01 2010-10-06 中国科学院空间科学与应用研究中心 一种适用于小卫星控制器局域网的数据采集及通信系统
CN102404348A (zh) * 2011-12-29 2012-04-04 王怿忻 多媒体数据传输协议

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN201114146Y (zh) * 2007-06-26 2008-09-10 比亚迪股份有限公司 串联式混合动力汽车的控制系统
CN101087235A (zh) * 2007-07-17 2007-12-12 中南大学 一种基于fpga的多功能通信接口转换设备和方法
CN101854279A (zh) * 2009-04-01 2010-10-06 中国科学院空间科学与应用研究中心 一种适用于小卫星控制器局域网的数据采集及通信系统
CN102404348A (zh) * 2011-12-29 2012-04-04 王怿忻 多媒体数据传输协议

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104836832A (zh) * 2014-12-10 2015-08-12 北汽福田汽车股份有限公司 车辆的can信号传输安全与校验方法
CN104639296A (zh) * 2015-02-28 2015-05-20 安徽江淮汽车股份有限公司 一种can总线数据场校验方法及系统
CN108268420A (zh) * 2016-12-31 2018-07-10 智车优行科技(北京)有限公司 处理器之间的通信方法、处理器和电子设备
CN106961370A (zh) * 2017-05-17 2017-07-18 上海理工大学 提高can总线通信速率的方法
CN110213018A (zh) * 2019-05-09 2019-09-06 北京汽车股份有限公司 车载总线的数据通信方法、装置及车辆
CN110213018B (zh) * 2019-05-09 2022-07-15 北京汽车股份有限公司 车载总线的数据通信方法、装置及车辆
CN112003773A (zh) * 2020-07-15 2020-11-27 东风汽车集团有限公司 一种can总线安全数据的端到端校验方法及系统
CN113436364A (zh) * 2021-06-22 2021-09-24 广汽埃安新能源汽车有限公司 Tbox无效信号值判断方法、装置
CN113436364B (zh) * 2021-06-22 2022-04-08 广汽埃安新能源汽车有限公司 Tbox无效信号值判断方法、装置

Similar Documents

Publication Publication Date Title
CN103514128A (zh) 一种总线信号传输、接收方法及装置
CN108965484B (zh) 一种物联网数据的传输方法、系统及终端
CN107078931B (zh) 发送方将帧串行传输到接收方的方法以及总线系统
CN107147553B (zh) 从站波特率及帧格式的调整方法、调整装置及调整设备
CN109905205B (zh) 数据发送、接收的方法及设备、数据传输方法及系统
CN106452688A (zh) 一种北斗数据缺报重传方法及系统
JP6204587B2 (ja) Canバス接続ユニットの内部遅延時間を定めるための装置、および測定方法
CN112003773A (zh) 一种can总线安全数据的端到端校验方法及系统
CN108337069B (zh) 一种改进的降低误码率的末端并行分组crc校验系统
CN103368689A (zh) 一种数据传输方法及系统
CN106372026B (zh) 一种链路检测方法和接收设备
CN104639294A (zh) 一种改进的crc校验实现方法
CN105357229A (zh) 一种视频处理方法及装置
CN111478751A (zh) 一种数据断点续传方法、装置及终端设备
CN107733568B (zh) 基于fpga实现crc并行计算的方法及装置
CN104272625B (zh) 通信设备及通信方法
CN103685732B (zh) 显示装置及其静电防护方法
CN115004743A (zh) 电池管理系统的功能安全
CN107257265A (zh) 实时传输数据流前向纠错方法、设备及存储介质
CN106657997A (zh) 一种机顶盒网口性能测试方法
CN102655441A (zh) 一种通信自动纠错编码方法和系统
CN107078855A (zh) 分组数据发送装置以及分组数据发送方法
KR101794761B1 (ko) 디지털 데이터 통신장치 및 데이터 모의장치
KR20140142276A (ko) 통신 장치 및 통신 방법
KR101389646B1 (ko) 통신 장치 및 통신 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20140115

RJ01 Rejection of invention patent application after publication