(讨论)基于CAN总线的优先级调度问题 点击:445 | 回复:3



稚若初现0

    
发表于:2012-04-21 11:59:05
楼主

    1.CAN总线仲裁机制

    CAN总线是一种基于优先级的串行通信网络,采用载波监听多路转换冲突避免协议。CAN总线中传输的数据帧的起始部分为数据的标识符,标识符既可以区分消息又可以表示消息的优先级CAN总线为多主工作方式,网络上任意一节点均可在任意时刻主动向网络上的其它
节点同时发送消息。若两个或两个以上的节点同时开始传送报文,就会产生总线访问冲突,根据逐位仲裁原则,借助帧开始部分的标识符,优先级低的节点主动停止发送数据,而优先级高的节点继续发送信息。在仲裁期间,CAN总线作“与”运算,每一个节点都对节点发送的电平与总线电平进行比较,如果电平相同,则节点可以继续发送。如规定0的优先级高,当某一个节点发送l而检测到0时,此节点知道
有更高优先级的信息在发送,它就停止发送消息,直到再一次检测到网络空闲。

   2.讨论求助

   CAN总线的仲裁机制应该是各类节点的优先级是相等。如果我有四类用户(或者更多),我要将用户分优先级,比如一类用户有请求,总线就不处理其它用户的请求。但是方案中可能会涉及到有线用户正在通信,或者已经等了很久了。这种情况下,CAN总线的调度大家有什么建议和方案吗? 



楼主最近还看过



水中鱼 --王者之师

  • 精华:43帖
  • 求助:4帖
  • 帖子:324帖 | 3802回
  • 年度积分:0
  • 历史总积分:15038
  • 注册:2011年11月10日
发表于:2012-04-21 12:01:37
1楼

CAN总线的调度大家有什么建议和方案吗?这个讨论挺有意义。  

稚若初现0

  • 精华:0帖
  • 求助:1帖
  • 帖子:117帖 | 384回
  • 年度积分:0
  • 历史总积分:4735
  • 注册:2012年4月20日
发表于:2012-04-21 12:06:08
2楼
对呀,比如有四个人给你打电话,优先级:A>B>C>D.你要怎么处理他们的调度方案。例如:C先打,已经在通话了,这个时候A打来了,紧接着B,D同时打来了。怎么办?如果人多了,优先级最低的怎么样才能不等很久。

阿水--王者之师

  • 精华:31帖
  • 求助:399帖
  • 帖子:1801帖 | 22295回
  • 年度积分:2
  • 历史总积分:98539
  • 注册:2007年3月22日
发表于:2012-04-21 13:23:23
3楼
     不知道 CAN 总线是什么用的,但我知道现在的汽车上用的行车电脑用的是 CAN 总线通讯的说
SSI ļʱ