电子产业一站式赋能平台

PCB联盟网

搜索
查看: 11|回复: 0
收起左侧

为什么在CAN总线中显性电平具有高优先级?

[复制链接]

609

主题

609

帖子

3885

积分

四级会员

Rank: 4

积分
3885
发表于 昨天 08:00 | 显示全部楼层 |阅读模式

vtelrdyepdq64040050258.gif

vtelrdyepdq64040050258.gif

+ _+ l3 x6 }) k! y6 E0 i( w7 L点击上方蓝色字体,关注我们
1 I9 y& q9 j. I$ r: a0 S4 N& q: u* J/ d+ g# S
CAN总线采用 线与(Wired-AND) 逻辑,利用差分信号驱动。总线的显性电平(逻辑“0”)通常由发射器主动驱动,而隐性电平(逻辑“1”)是总线的默认状态,由内部的上拉或下拉电阻保持。
9 p! Z5 l5 M+ F: [
, O  o/ t4 `5 x/ [2 G: B" Z: `因此,为了在信号冲突或干扰时优先传递明确的指令,“显性”电平被设计为优先。3 W( `$ X- O* ?0 U
( a! o0 _1 s0 K7 C3 t7 v
CAN总线是一种多主控通信协议,其中的仲裁机制允许多个节点同时发起通信请求,而不发生冲突。这是通过显性优先的规则实现的。
2 J  S% u0 K9 H5 d0 B& }; R) U. N  E) l, k& J  i( Z
仲裁机制原理:1 }. K1 [+ f- n$ `
  • 多个节点同时发送数据帧,帧头部分的标识符(ID)用于仲裁。
  • 在每个位时间上,总线上会进行逻辑“与”操作。
  • 如果某个节点发送隐性电平(逻辑“1”),但检测到总线上为显性电平(逻辑“0”),它会停止发送,因为它的优先级较低。% O/ U& h+ Q  [
    7 y+ [) H3 w8 s, L6 {; `. ^' h
    所以,使用显性优先:. i" Y4 |8 f7 r5 p- l1 J
  • 确保低ID(高优先级)的帧优先发送。
  • 提高总线效率,避免数据冲突和无谓重传。+ s# j8 V: H& l0 N* G  m

    : B8 R' v" T' O4 t) P. w如果隐性电平优先,则节点无法可靠检测自身是否胜出仲裁,导致仲裁机制失效。
    . d# f7 R- h2 o/ j0 X; e( i0 u  k# ^; c. d& x. h4 T
    显性电平由驱动器强制施加,抗干扰能力强,在高噪声环境下能更稳定地维持总线状态。
    8 y9 S0 t& A' w! Y' o; \' i7 L/ v) J/ r/ H4 q
    硬件设计上,显性电平的驱动需要更高的电流能力,而隐性电平则可以通过弱上拉/下拉维持。
    7 z5 W2 ]7 F6 I. a! f! J# H; e6 e8 j5 I2 H/ R  b( F6 u3 p
    这样的设计符合经济性与可靠性之间的平衡:显性电平优先意味着只有在必要时才需要高电流驱动,从而减少了能耗。隐性电平作为默认状态,减少了空闲期间的能耗。
    & j& w0 I2 X2 Q

    4ai5qamhhvh64040050358.jpg

    4ai5qamhhvh64040050358.jpg

    $ |4 Q0 q+ E% r/ r3 Y& z# S4 K$ T

    lyoc3zjtxji64040050458.gif

    lyoc3zjtxji64040050458.gif

    / a+ p/ c5 Q, X2 U  M0 n* K6 T点击阅读原文,更精彩~
  • 回复

    使用道具 举报

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则


    联系客服 关注微信 下载APP 返回顶部 返回列表