电子产业一站式赋能平台

PCB联盟网

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

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

[复制链接]

840

主题

840

帖子

6491

积分

高级会员

Rank: 5Rank: 5

积分
6491
发表于 2024-11-29 08:00:00 | 显示全部楼层 |阅读模式

vtelrdyepdq64040050258.gif

vtelrdyepdq64040050258.gif

, _* h0 V6 B/ J" u$ x# Y6 |点击上方蓝色字体,关注我们# E. h  o+ K8 a$ ?5 y$ b
# T2 E* f2 T8 D# d
CAN总线采用 线与(Wired-AND) 逻辑,利用差分信号驱动。总线的显性电平(逻辑“0”)通常由发射器主动驱动,而隐性电平(逻辑“1”)是总线的默认状态,由内部的上拉或下拉电阻保持。
# }, Z! k  l, v) u& O4 S1 U. F0 l% I9 r5 {4 e1 j
因此,为了在信号冲突或干扰时优先传递明确的指令,“显性”电平被设计为优先。% ?5 d, L7 J. G8 t; c
5 I" b7 q8 y( x% P2 \+ U) S6 o
CAN总线是一种多主控通信协议,其中的仲裁机制允许多个节点同时发起通信请求,而不发生冲突。这是通过显性优先的规则实现的。
3 k+ [. C4 ~* c8 B& |. s
$ C- s- l& M( A, w( n( U6 ~" G" e仲裁机制原理:
! u2 w/ F! c+ \8 p( k& ?! @/ |  i; `# U
  • 多个节点同时发送数据帧,帧头部分的标识符(ID)用于仲裁。
  • 在每个位时间上,总线上会进行逻辑“与”操作。
  • 如果某个节点发送隐性电平(逻辑“1”),但检测到总线上为显性电平(逻辑“0”),它会停止发送,因为它的优先级较低。* q6 J3 D, S3 i$ F# P/ |: S0 F

    6 J, f" a4 k; E/ @5 A' Q所以,使用显性优先:
    ' M, K3 F$ x& ~5 i7 q7 ^6 k
  • 确保低ID(高优先级)的帧优先发送。
  • 提高总线效率,避免数据冲突和无谓重传。
    2 @6 b2 e. H: I2 M# D; Z! W& T& _

    3 n6 Z8 w. u: n+ h3 [% v4 ?如果隐性电平优先,则节点无法可靠检测自身是否胜出仲裁,导致仲裁机制失效。. }8 s+ C5 ?! R% r. e, L
    3 w, W% h6 B5 k' U. Q
    显性电平由驱动器强制施加,抗干扰能力强,在高噪声环境下能更稳定地维持总线状态。3 g% b0 R" U5 U

    , B! v. D: f( t9 S3 i硬件设计上,显性电平的驱动需要更高的电流能力,而隐性电平则可以通过弱上拉/下拉维持。2 p4 Q: D" U: I

    ! |6 W/ q$ ]2 j1 d2 }4 J5 B/ w$ e这样的设计符合经济性与可靠性之间的平衡:显性电平优先意味着只有在必要时才需要高电流驱动,从而减少了能耗。隐性电平作为默认状态,减少了空闲期间的能耗。
    & n, ~. e9 Z5 T$ z& P( r

    4ai5qamhhvh64040050358.jpg

    4ai5qamhhvh64040050358.jpg

    / v4 Q, m- }7 l& R4 B

    lyoc3zjtxji64040050458.gif

    lyoc3zjtxji64040050458.gif

    ' Q$ z  D9 \2 _点击阅读原文,更精彩~
  • 回复

    使用道具 举报

    发表回复

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

    本版积分规则


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