前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >LIN网络管理

LIN网络管理

作者头像
xbai921031
发布2022-05-25 15:20:06
1.2K0
发布2022-05-25 15:20:06
举报

1 唤醒(Wake Up)

分为主节点的唤醒和从节点的唤醒。处于睡眠状态时,任何一个节点都可以发送唤醒信号。唤醒信号一般是在总线上发送一个持续250us~5ms显性电平。

(1)从节点的唤醒

从节点会检测到一个显性电平多于150us的唤醒信号,然后在100ms内完成初始化以响应总线上的命令。如果发送唤醒信号的是一个从节点,被唤醒的节点会准备好接收或者发送报文。此时主节点也会被唤醒,当从节点准备好以后,主节点开始发送头部报文(Header)来寻找唤醒源。

图1 从节点接收到唤醒信号

(2)主节点的唤醒

主节点也会检测持续时间长于150us的唤醒信号,如果这时候主节点没有发送间隔段(一帧报文的开始)或者发送唤醒信号的节点在150ms~250ms内没有收到其他节点的唤醒信号,那么这个最初开始发送唤醒信号的节点会重新发送一个唤醒信号。

图2 唤醒信号多次发送示意

发送唤醒信号的节点会持续上述发送方式3次,然后会等待1.5s,之后再次发送3次唤醒信号。

图3 唤醒信号持续发送示意

2

睡眠(Go To Sleep)

(1)如果准备让ECU睡下去的话,主节点会发送一个Go To Sleep的命令,这个命令报文格式如下:

图4 主节点发送的Go To Sleep报文定义

(2)在总线空闲的时候,如果4s~10s总线上没有信号的话,ECU也会睡眠。

3

从节点通信状态转换

图5 从节点通信状态转换示意

(1)初始化将在100ms内完成,之后进入工作状态;

(2)由工作状态进入睡眠状态有两种方式:

  • 从节点接到主节点发送的Go To Sleep命令,但是需要注意的是,接到这个命令从节点可以选择不睡眠,根据具体需求来定;
  • 总线空闲4s~10s,这种情况下是必须睡下去的。

(3)由睡眠状态再回到初始化状态

  • 接收到唤醒信号
  • 有内部唤醒需求

以上就是本期内容,如有问题欢迎私信。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 进击的程序喵 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档