CAN总线过载帧

摘要:
过载帧过载帧和活动错误帧具有相同的格式。过载帧由两个字段组成,即过载标志和随后的过载定界符。重载分隔符包含8个隐性位。节点将在两种情况下生成过载帧:1.节点检测帧之间的非法优势位。节点最多可以生成两个连续的过载帧,以延迟下一个消息的传输。位定时逻辑位定时逻辑可以监控总线输入,并根据can协议处理与总线相关的位定时操作。如果CAN控制器本身不发送显性比特,则在稍后从隐性状态到显性状态总线的转换中,将再次执行同步操作。

CAN总线过载帧第1张


过载帧

过载帧与主动错误帧具有相同的格式。但是,过载帧只能在帧间间隔产生,因此可通过这种方式区分过载帧和错误帧(错误帧是在帧传输时发出的)。过载帧由两个字段组成,即过载标志和随后的过载定界符。过载标志由6 个显性位和紧随其后的其他节点产生的过载标志构成(而主动错误标志最多包含12个显性位)。过载定界符包含8 个隐性位。节点在两种情况下会产生过载帧:

1、节点在帧间间隔检测到非法显性位。在IFS 的第三位期间检测到显性位除外。这种情况下,接收器会把它看作一个SOF 信号。

2、由于内部原因,节点尚无法开始接收下一条报文。节点最多可产生两条连续的过载帧来延迟下一条报文的发送。


帧间间隔

帧间间隔将前一条帧(无论何种类型)与其后的数据帧或远程帧间隔开。帧间间隔至少由3 个隐性位构成,又称为间断。间断使节点在发送下一条报文之前有时间进行内部处理。在间断之后, CAN 总线将保持隐性状态(总线空闲),直至下一条报文开始发送。


位时序逻辑

位时序逻辑(Bit Timing Logic, BTL)可监控总线输入,并根据CAN 协议处理与总线相关的位时序操作。BTL 在起始帧时,对从隐性状态到显性状态的总线过渡进行同步操作(称为硬同步)。如果CAN 控制器本身不发送显性位,则在以后的隐性状态到显性状态总线过渡时会再进行同步操作(称为再同步)。BTL 还提供可编程时间段以补偿传播延迟时间和相位位移,并对位时段内的采样点位置进行定义。对BTL 的编程取决于波特率和外部物理延迟时间。

CAN总线过载帧第2张


版权所有权归卿萃科技 杭州FPGA事业部,转载请注明出处

作者:杭州卿萃科技ALIFPGA

原文地址:杭州卿萃科技FPGA极客空间 微信公众号


CAN总线过载帧第3张

扫描二维码关注杭州卿萃科技FPGA极客空间


免责声明:文章转载自《CAN总线过载帧》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Linux环境下非root用户安装Python3VS 6.00 工程项目文件详解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

基于MCP2515的Linux CAN总线驱动程序设计(三)

基于MCP2515的Linux CAN总线驱动程序设计(三) 作者:李老师,华清远见嵌入式学院讲师。 1.前言 上篇文章介绍了使用SPI子系统设计的基于MCP2515的Linux CAN总线驱动程序,这篇文章主要介绍MCP2515的字符设备驱动功能函数的实现。 2.硬件设计 MCP2515与S3C2416的硬件连接图如图3所示。如硬件原理图可知MCP251...

基于MCP2515的Linux CAN总线驱动程序设计(二)

基于MCP2515的Linux CAN总线驱动程序设计(二) 作者:李老师,华清远见嵌入式学院讲师。 1.前言 CAN(Controller Area Network)总线,即控制器局域网总线,是一种有效支持分布式控制或实时控制的串行通信网络。由于其高性能、高可靠性、及独特的设计和适宜的价格而广泛应用于工业现场控制、智能楼宇、医疗器械、交通工具以及传感器等...

低价替代Vector CANoe CAN总线适配解决方案支持所有USBCAN(周立功CAN、PCAN、Kvaser、ValueCAN、NI CAN)

在汽车通信领域CAN总线使用非常广泛,最强大的工具有Vector Case(10WRMB)。Pcan(2KRMB),ZLGCAN(1.5KRMB),KVASER(2KRMB)、ValueCAN(4KRMB),以上本文均称为USBCAN。 USBCAN拥有较强的性价比但是功能最弱,我们理想中最理想的组合是USBCAN硬件的价格享受Vector的软件的强大功能...

can 总线ACK场

一、ACK场定义 ACK场分为两个bit位, 1.ACK slot(应答间隙) 2.ACKdelimiter (应答界定符) 在发送器发送时,应答解析和应答界定符都为隐性电平,在接收器确定接收到有效的报文后,会在应答间隙发送ACK确定信号,即发送显示电平以做应答,此处注意ACK的回应和MCU的滤波器设置无关,即使MCU设置不接受ID的报文,也会有ACK应答...

CAN总线为什么要有两个120Ω的终端电阻?

1 CAN总线为什么要有两个120Ω的终端电阻? 2 终端电阻的作用是使阻抗连续,消除反射,那为什么只在物理上最远的两个节点加这个匹配电阻,而不是在所有的节点都加上匹配电阻? 高频信号传输时,信号波长相对传输线较短,信号在传输线终端会形成反射波,干扰原信号,所以需要在传输线末端加终端电阻,使信号到达传输线末端后不反射。对于低频信号则不用 CAN总线两端必须...

基于MCP2515的Linux CAN总线驱动程序设计(一)

基于MCP2515的Linux CAN总线驱动程序设计(一) 作者:李老师,华清远见嵌入式学院讲师。 1.前言 CAN(Controller Area Network)总线,即控制器局域网总线,是一种有效支持分布式控制或实时控制的串行通信网络。由于其高性能、高可靠性、及独特的设计和适宜的价格而广泛应用于工业现场控制、智能楼宇、医疗器械、交通工具以及传感器等...