• LIN总线协议


    汽车电子类的IC有的采用LIN协议来烧录内部NVM,如英飞凌的TLE8880N和博世的CR665D。

    LIN总线帧格式如下,一个LIN信息帧有同步间隔、同步域、标示符域(PID域)、数据域、校验码域。 除起始域与响应间隔,其他部分都是以字节为单位传送,每个字节都有自己的格式,称之为字节域(ByteField)。字节之间有字节间隔(InterByteSpace),在头信息和响应之间有一个响应间隔(ResponseSpace),这两个间隔的最小值为0。

    1.同步间隔域(Break Field)

    同步间隔域由同步间隔(Break)和同步间隔域间隔符(Break Delimiter) 构成。

    2.同步域(Sync Byte Field)

    字节域(Byte Field):1 位起始位(Start Bit,显性) + 8位数据位+ 1 位停止位(Stop Bit,隐性),是一种标准UART 数据传输格式。

    3.受保护ID域(Protected Identifier Field)

    受保护ID 段的前6位叫作帧ID(Frame ID),加上两个奇偶校验位后称作受保护ID 。

    ID 的范围在0x00~0x3F之间,共64个。帧ID标识了帧的类别。从机任务对于帧头作出的反应(接收/发送/忽略应答部分)都是依据帧ID 判断的。如果帧ID传输错误,将会导  致信号无法正确到达目的地。因此引入奇偶校验位。其中ID6 是ID0、ID1、ID2、ID4 的奇校验,ID7 是ID1、ID3、ID4、ID5 的偶校验。

    校验公式如下,其中“⊕”代表“异或”运算,“¬”代表“取非”运算。

    P0 = ID0 ⊕ID1 ⊕ID2 ⊕ID4

    P1 = ¬ (ID1 ⊕ID3 ⊕ID4 ⊕ID5)

    由公式可以看出,PID不会出现全0或全1的情况,因此,如果从机节点收到了“0xFF”或“0x00”,可判断为传输错误。

    4.响应域

    LIN协议中,一帧信息的响应域由数据域和校验码域两部分构成。数据域长度(字节数)由标示符域的ID4、ID5决定。

    校验和计算方法为将校验对象的各字节作带进位二进制加法(每当结果大于等于256 时就减去255),并将所得最终的和逐位取反,以该结果作为要发送的校验和。接收方根据校验和类型,对接收数据作相同的带进位二进制加法,最终的和不取反,并将该和与接收到的校验和作加法,如果结果为0xFF,则校验和无误。这在一定程度上保证了数据传 输的正确性。

    参考:LIN通信协议

  • 相关阅读:
    Python学习
    shell 脚本收藏
    无限级分类接口
    php 过滤多维数组中值为空的字段
    逆波兰表达式3(后缀表达式求值)
    [数据结构]之队列
    最大公约数和最小公倍数
    暗时间阅读笔记
    android判断文件是否是图片文件的方法
    android从assets读取文件的方法
  • 原文地址:https://www.cnblogs.com/yangjiguang/p/6093240.html
Copyright © 2020-2023  润新知