honeybaby 发表于 2014-4-1 16:34

有线通信

请教大家一个问题,CAN总线上挂接着很多CAN节点,每一个CAN节点都可以发送数据,涉及到优先级的问题,我是这么理解的:节点的优先级是由标识符决定的,标识符越小优先级越高。如果两个节点同时向总线上传输数据还需要考虑冲突的问题吗?是不是两个节点自己就可以分辨出优先级的高低了,无需在程序中再说嘛谁的优先级高了。另外还要检测总线忙不忙吗?请打家多多指教,谢谢了。

木头东瓜 发表于 2014-4-2 09:09

can除了物理特性决定了不可能两个同时发送外,协议也能避免这类问题发生

honeybaby 发表于 2014-4-12 08:19

木头东瓜 发表于 2014-4-2 09:09 static/image/common/back.gif
can除了物理特性决定了不可能两个同时发送外,协议也能避免这类问题发生

谢谢您,可不可以这样理解,一个节点正在传送,假设有个更高优先级的节点过来,那立即终止现在这个节点的传输,转而执行那个更高优先级的程序。

ddv520 发表于 2014-4-13 22:44

非破坏抢占协议,优先级高的会在冲突时成功发送,优先级低的重新抢占。
页: [1]
查看完整版本: 有线通信