c - SocketCan Can ID 优先级

标签 c linux ubuntu socketcan

我是 SocketCan 的新手。我正在使用虚拟 jar ,我想知道 SocketCAN 是否根据 CAN ID 进行优先级排序。我的问题是,因为我使用的是虚拟 jar ,所以我发送数据,然后立即收到发送的数据。我将尝试创建一个负载,我希望具有较低 CAN ID 的 CAN 帧在队列中等待更长时间,并且它们将在高优先级帧之后被接收。那么,SocketCAN 是否管理这种优先级排序?

最佳答案

SocketCAN 确实处理实际 CAN 接口(interface)上的仲裁,这些接口(interface)是时间触发的并且具有比特率。仲裁是必要的,以允许较高优先级的消息在传输过程中中断较低优先级的消息,并强制较低优先级的消息等待。

vcan接口(interface)不是时间触发的,没有实时硬件,没有比特率,在多任务系统上没有消息冲突的机会,因此不需要仲裁。 vcan 消息以您的处理器可以计算位的速度“发送”和“接收”。

关于c - SocketCan Can ID 优先级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27930511/

相关文章:

c - 图像翻转不正确...为什么?

c++ - gcc 链接的默认库?

linux - 如何在设备启动时重置内核?

linux - 如何对多个文件夹和子文件夹中的文件运行 dos2unix 命令?

linux写(): does it try to write as many bytes as possible?

android - Ubuntu 上出现“未找到命令 'adb'”错误

ubuntu - 有没有人在 Ubuntu 16.04 LTS 上安装 QGIS

terminal - 在 Lubuntu (Utopic Unicorn) 上安装 VLC

c - malloc 的垃圾值

存储字符代替整数