CAN FD实战之可变波特率


CANFD的主要特性是可变波特率,这里,我们使用USB to CANFD接口卡和示波器捕捉报文波形,结合CNAFD规范,来实际体验一下可变波特率。

一、可变波特率之两套位时间机制

示例:高波特率2MBit/s,采样点80%;低波特率500KBit/s,采样点81.25%。
在这里插入图片描述

二、可变速率之低速率向高速率切换

BRS位宽=( 2us ×81.25%+)+( 0.5us ×20%+)= 1735ns。
BRS位宽等于 低波特率(Nominal bit time)位宽度中采样点之前的段 加上 高波特率(Data bit time)位宽度中采样点之后的段。
在这里插入图片描述

三、可变速率之高速率向低速率切换

DEL位宽=( 0.5us ×80%+)+( 2us ×18.75%+)= 775ns。
DEL位宽等于 高波特率(Data bit time)位宽度中采样点之前的段 加上 低波特率(Nominal bit time)位宽度中采样点之后的段。
注意:DEL位后面就是应答的ACK位,如果有应答延时的话,ACK高电平的到来就会延时。如下图,可以看到DEL与ACK位之间有一段低电平,这就是延时。
在这里插入图片描述

四、更高的带宽

示例:
CAN FD,数据长度=64字节、Bit rate=500Kbit/s、Data Bit rate=8Mbit/s、用时=121.4us;
CAN ,数据长度=8字节、Bit rate=500Kbit/s、用时=222.2us。
在这里插入图片描述

### CAN FD与传统CAN总线的波特率差异及配置方法 #### 波特率差异分析 传统的CAN协议采用单一固定波特率进行通信,即仲裁阶段和数据传输阶段均使用相同的波特率。而在CAN FD(Flexible Data-rate)中引入了双速机制,允许在仲裁阶段和数据阶段分别设置不同的波特率。具体来说: - **仲裁阶段**:此阶段用于帧优先级判断以及冲突检测,通常保持较低的波特率以确保网络稳定性[^1]。 - **数据阶段**:一旦进入数据传输环节,则可以根据需求提升至更高的波特率来加快大数据量的信息交换速度[^4]。 这种设计使得CAN FD能够在不改变现有物理层硬件的情况下显著提高有效负载的数据吞吐能力,尤其适合现代汽车电子控制单元(ECU)间日益增长的大容量快速交互需求。 #### 配置方法详解 对于CAN FD而言,其波特率配置涉及两个主要方面——标准CAN模式下的基础波特率设定以及新增加的数据场高速度选项定义: 1. **基础波特率(Base Bit Rate)** 这一部分延续自经典CAN规范,负责处理ID字段比较等操作,在大多数情况下维持在一个相对保守数值范围内(比如常见的500 kbps)[^3]。 2. **数据场波特率(Data Field Bit Rate or Fast Bit Rate)** 当转入到实际载荷传递部分时,系统能够动态切换成更快的速度来进行更高效的数据搬运工作。例如某些应用场景可能会将该参数设为2 Mbps甚至更高值以便更好地满足实时性和性能指标的要求。 另外值得注意的是,在实施具体的速率规划之前还需要充分考虑如下几个要素的影响: - 不同节点间的兼容性问题; - 物理介质特性可能带来的信号衰减效应; - 整体拓扑结构布局对延时预算造成的约束条件等等因素综合评估后再做最终决定[^2]。 以下是基于Python伪代码展示如何通过软件接口完成典型CAN FD设备初始化过程的一个简单例子: ```python import can def configure_canfd(channel='can0', bitrate=500000, data_bitrate=2000000): bus = can.interface.Bus( channel=channel, bustype='socketcan', fd=True, # Enable CAN-FD mode bitrate=bitrate, # Nominal (arbitration phase) bitrate data_bitrate=data_bitrate # Data phase bitrate ) return bus bus_instance = configure_canfd() print(f"CAN-FD Bus configured with arbitration bitrate {bus_instance.bitrate} bps and data bitrate {bus_instance.data_bitrate} bps.") ``` 以上脚本片段展示了利用SocketCAN库函数创建支持CAN FD功能实例的方法,并指定了相应的名义比特率和数据域比特率作为输入参数传入其中。 ### 结论 综上所述,CAN FD相比起常规形式下的CAN具备更加灵活多样的速率调节可能性,从而极大地增强了系统的适应范围和服务质量表现水平.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值