接口/总线/驱动
SENT (Single EdgeNibble Transmission) 是由 SAE 推出的一种汽车传感器与 ECU 通信的新标准 (SAE J2716) ,该通讯协议比较简单,节省硬件成本,是 Analog input 的替代品。
但是SENT有一定的局限性,其通讯是单向的,不能实现双向传输,与之相比CAN、LIN作为双向通讯在汽车上有着更广阔的应用。
SENT通讯的输出波形是一系列的方波信号,通过两个下降沿之间的时间间隔来传递信号。下图为SENT通讯的实采波形。
一、SENT 总线的特征和优势
SENT 总线是一种数字信号传输协议,与模拟量相比具有更高的传输精度和速度。
SENT 总线是单线传输数据,减少信号线,降低成本,加上电源和地线,总共 3 线。
SENT 总线与模拟量相比具有更强大的诊断功能。
SENT 总线的逻辑电平为 4.75V – 5.25V。
SENT 总线单向传输协议,数据只能从传感器到 ECU,传输是连续的,不需要请求命令。
SENT 总线由帧来传输数据,或者数据包的形式,每一帧由不同宽度的脉冲即半字节组成。
SENT 总线数据的传输可以分为快速通道和慢速通道,重要的信号用快速通道以实现高频率的更新,比如压力等,对于非关键的信号,如诊断等可以放在慢速通道传输。
SENT 总线快速通道是每一帧传输一个完整的信号,慢速通道需要多帧来传输一个完整的信号。
二、SENT 总线的硬件连接
SENT 总线常用于传感器信号,其基本引脚连接如下:
其高低信号的电平要求:0~0.5V 为逻辑电平 0,4.1~5V 为逻辑电平1。
三、SENT 总线的协议
SENT 总线协议的数据使用半个字节 Nibble,即 4bit 来进行编码定义的,一个半字节Nibble 是通过 2 个下降沿之间的时间差来定义的。如下是一个 Nibble 的电压逻辑信号:
时间精度以 1 个节拍 Tick 来定义(一般 1 个 Tick 的时间是 3~10us),每一个 Nibble 从一个下降沿开始,并且之后在逻辑0 状态至少维持 4Ticks,之后下一个下降沿距离第一个下降沿的时间差作为 Nibble 值的编码依据。需要注意的是,后一个下降沿距离第一个下降沿至少相隔 12Ticks,至多 27Ticks,且相隔 Tick 数减去 12 即为最终的 Nibble 值,如此 Nibble 值最小为 0,最大为 15(27Tick-12Tick),二进制表示时即为 4bit。
四、SENT 总线的帧结构
SENT 总线协议以 Nibble 为基础单元进行编码,一个完整的 SENT 数据帧结构如下所示:
SENT 总线的帧结构基本组成:
Sync 同步脉冲,固定的 56Ticks
Status/Com 状态及通讯字段,12~27Ticks,即 1 个 Nibble(4bit)
Data 数据段,12~162Ticks,即 1~6 个 Nibble
CRC 校验字段,12~27Ticks,即 1 个 Nibble
Pause 暂停脉冲 12~768Ticks,早期的 SENT 协议无此字段或者一个固定长度 Ticks,SENT2010 之后,部分通过此功能可以动态条件 TICKS 的个数,实现整个 SENT 协议是同一个固定长度 TICKS
五、SENT 总线的高级功能
以上是 SENT 总线协议中一帧报文的基本定义即功能,SENT 总线协议的高级功能是将多帧报文组合以实现更高复杂的通信功能,一般用于传输传感器的附加信号,比如温度,故障码和传感器类型信息等。SENT 总线协议提供如下 2 种多帧组合报文功能。
1.Short Serial Message
SENT 总线的慢速通道
当 Status/Com 字段的 bit3 值为 1,其之后的 15 帧 SENT 报文的 Status/Com 字段的 bit3 值都为 0 时,即为此种情况,此情况下是 16 帧 SENT 报文组合来传输附加信息。
Status/Com 字段的 bit3 值用来辨别以何种形式组合,而这 16 帧 SENT 报文的 Status/Com 字段的 bit2 值组合起来的 16bit 的值即为组合传输的信息,其由 4-bit 的 Message ID,8-bit 的 Data 和 4-bit 的 CRC 组成。
2.Enhanced Serial Message
SENT 总线的快速通道
与上一种情况不同的是,此情况下使用18 帧 SENT 报文组合来传输附加信息,起始标志是 Status/Com 字段 bit3 连续为 1111110,并且要求 Status/Com 字段 bit3 组合的第 13 和第 18 位都为 0
而数据域依然由 18 帧 SENT 报文的 Status/Com 字段的 bit2 值组合而成,但其数据组成又根据Status/Com 字段 bit3 组合的第 8 位的不同分为 2 种情况:
(1)Status/Com 字段 bit3 组合的第 8 位为 0:
Status/Com 字段 bit3 组合的 9~12bit 和 14~17bit 分别作为 8bit ID 的高 4 位和低 4 位数据,而 Status/Com 字段 bit2 组合的 1~6bit 是 6bit 的 CRC 数据,之后的 7~18bit 则为要传输的 12bit 的数据。
SENT 总线的快速通道细节
(2)Status/Com 字段 bit3 组合的第 8 位为 1:
Status/Com 字段 bit3 组合的 9~12bit 为 4bit ID,而 Status/Com 字段 bit2 组合的 1~6bit 是 6bit 的 CRC 数据,之后的 7~18bit 和 bit3 组合的 14~17bit 则组合为要传输的 16bit 的数据。
编辑:黄飞
全部0条评论
快来发表一下你的评论吧 !