在汽车总线中常见的唤醒方式有硬线唤醒、网络唤醒和特定信号唤醒,而LIN总线则是通过休眠帧与唤醒电平来实现的,本文将介绍LIN的唤醒与休眠机制。
目录
Catalog
1. 网络管理
2. 唤醒
3. 休眠
1
网络管理
在LIN2.1协议当中网络管理指的是网络的休眠和唤醒管理,图1为LIN从节点的通讯状态。
初始化:在复位和唤醒之后进入该状态,从节点将进行必要的初始化然后进入工作状态。这里的初始化指的是LIN相关的初始化,重置和唤醒意味着是不同的初始化,同时初始化在100ms内完成。
工作:LIN网络上存在LIN报文的收发
总线睡眠模式:LIN总线上保持隐形电平,只有唤醒电平可以出现在LIN总线上。
图1 LIN从节点通讯状态
2
唤醒
在休眠的LIN网络中任意一个节点(主节点和从节点)都可以发送唤醒电平来唤醒LIN网络,唤醒电平持续250us~5ms。其他节点应该检测大于150us的脉冲,并准备好在100ms内监听LIN总线,即在脉冲结束处算起100ms以内准备接收来至主节点的报头,如图2所示;如果是从节点发送的唤醒电平,它将准备立即接收报文帧头或者传输报文,主节点也必须在100ms内发送帧头开始通信。
图2 唤醒从节点的信号接收
如果发出唤醒电平后在150ms~250ms内总线没有接收任何帧信息,则发送唤醒电平的节点应发送新的唤醒信号,唤醒信号最多可以发三次,如图3所示:
图3 一个唤醒信号块
如果在三次唤醒请求失败后,节点应该至少等待1.5s。然后发出第四次唤醒电平。如图4所示:
图4 长时间的唤醒信号
为了满足上述要求,TSMaster提供了WakeUp电平信号参数配置模块,如图5所示:
图5 TSMaster唤醒电平信号参数配置
唤醒电平长度=1000000/Baudrate*(BitNum),比如波特率为19.2k,设置BitNum = 5,则电平宽度为260.4,如图6所示:
图6 唤醒电平信号示波器波形
当设置Tirgger Times等于3,触发间隔时间等于3ms,则TSMaster会发出多帧唤醒报文,报文间隔等于3ms,如图8所示,先发送唤醒电平(260.4us),然后过3ms过后再次发送唤醒电平,循环发送了三次。
图7 TSMaster多次触发唤醒配置
图8 多次触发唤醒示波器波形
3
休眠
LIN总线有两种情况下进入休眠:
1)利用诊断帧的主节点请求帧0x3C作休眠命令
2)当LIN总线中不存在隐形和显示电平的切换(4~10s)时,节点自动进入休眠;LIN2.1协议规定,休眠报文必须由主节点发出,休眠报文帧内容如图9:
图9 LIN休眠报文帧
在TSMaster的LIN发送窗口中,如图10所示,选择节点和通道,然后点击Goto Sleep按钮,即可通过示波器查看到波形报文(图11)。
图10 TSMaster LIN休眠帧发送
图11 LIN休眠帧示波器波形
全部0条评论
快来发表一下你的评论吧 !