全站数据
8 4 2 0 5 8 1

can总线误码率标准

会计说 | 简单学习,快乐成才!         
问题更新日期:2024-10-15 07:36:48

问题描述

can总线误码率标准急求答案,帮忙回答下
精选答案
最佳答案

CAN总线具有很高的健壮性,这可能要归功于CAN具有多种错误检查机制。CAN协议制定了5种错误检测方法:三种位于报文层,两种位于位流层。如果一个数据帧出现错误,那么这个帧会被丢弃,并且接收节点还会发送一个错误帧。这会强制发送节点重复发送出错的报文,直到接收节点正确接收。如果同一个报文重复出错,达到一定次数后,发送节点可以关闭发送功能以降低对总线的影响。

报文层的错误检测包括CRC和ACK。

16位的CRC域包含15位校验和、1位界定符。ACK域包括1位应答位、1位界定符。

CRC校验错误很好理解,它对数据域以及数据域之前的位生产CRC校验。由于一帧CAN报文数据流很小(最多8个用户数据),所以15位CRC的侦错能力非常优秀。

ACK域是怎么起作用的呢?这是由CAN协议规定的,即发送节点发送一帧数据后,接收节点必须向发送节点应如果发送节点没有收到接收节点的应答信号,就会认为自己发送失败,从而重传数据。

报文层的第三种错误检查方法是格式检查。这种检查会监控报文中那些一定为隐性位的域,如果这些域中出现显性位,则检测到格式错误。这些域包括SOF、EOF、ACK的界定符和CRC的界定符。

位流层的错误检测之一是发送到总线上的每一个数据位,都会被监视,如果发现发送的位和总线上的位不相同时,产生位错误。这种监视机制并不会监视仲裁域的位,这是因为多个节点同时竞争总线时,优先级高的节点可能会覆写总线上的仲裁域位。

位流层的另外一个错误检测机制是位填充规则:5个连续相同逻辑位之后,如果第6个位的逻辑还和前五个相同,则产生位填充错误。

其他回答

CAN总线的误码率标准并没有一个确定的答案,因为它取决于许多因素,包括总线的长度、速率、物理介质、信号质量等。一般来说,CAN总线的误码率应该在10^-9到10^-12之间。