一文详解汽车电子LIN总线
0.摘要
汽车电子LIN总线不同于CAN总线。
LIN总线基本上是CAN总线的廉价补充,相比于CAN总线,它提供较低的可靠性和性能。同时LIN总线也是一个应用非常广泛的网络协议,并且越来越受欢迎。
再一次,我们准备了一个关于LIN总线的简要介绍。以下涉及多个方面的主题与研究内容。本文将结合专业知识,以一种非常简单的方式解释LIN总线和LIN协议,以使其尽可能通俗易懂。
1.什么是LIN总线?
LIN总线代表本地互联网络(Local Interconnect Network (LIN) ),用于车辆组件之间的通信。它也被称为CAN总线的补充。LIN协议具有很高的成本效益,比CAN总线便宜得多。然而,它提供了较低的性能,不像CAN 总线那样可靠。
当CAN总线太昂贵而无法为车辆中的每个组件实现应用时,LIN总线应运而生。或者说LIN Bus被创造出来是为了来应对这个挑战,并且已经完美地完成了既定目标。

2.什么是LIN协议?
LIN协议是电子设备的有线通信协议。它由一个主节点和一个或多个从节点组成。每个LIN帧由两对组成——报头和响应。报头总是由LIN主节点发送,响应由一个专用的LIN从节点或LIN主节点发送。此外,Lin协议使用两种总线状态,睡眠模式和活动模式。
LIN总线是一种低成本的协议,具有部分替代can总线系统的作用,用于车辆部件之间的通信。也称为CAN总线的补充。
3.LIN Bus的主要特点
-
Low-cost option.
-
Single wire with 1-20 kbit/s at maximum 40m bus length (+ground).
-
Operating voltage 12V.
-
Frequently used in vehicles for wipers, air conditioners, steering wheels, windows, and so on.
-
LIN clusters contain 1 master and up to 16 nodes.
-
The latest vehicles have more than 10 nodes.
-
Several data lengths (2,4 and 8 bytes).
-
Guaranteed latency time with time-triggered scheduling.
-
Sleep mode and wake-up support.
-
The physical layer is based on ISO 9141 - K-line.
-
LIN protocol support error detection and configuration.
4.LIN 总线如何工作
LIN总线也可以用于车辆的电池电源线,使用LIN over DC (DC-LIN)收发器,这被标准化为ISO/AWI 17987-8。如今,LIN Bus在所有现代车辆中几乎都是标准化的。LIN总线正在使用的主要有如下几种情形:
-
Sensors for position and temperature.
-
Speed and pressure.
-
Cruise control.
-
Wipers.
-
Radio.
-
Climate control.
-
Small motors.
-
Side mirrors.
-
Seat control.
-
Locks.
-
Rain sensors.
-
Headlights.
-
And more.
此外,LIN Bus还被用于家用电器,如洗衣机、炉灶、冰箱等。有相关的预测表明,LIN总线及其应用的需求还会继续增加。电子控制单元ECU是许多其他应用中的常见应用之一。
5.LIN Bus 与 CAN Bus对比
下面是LIN总线接口和CAN总线接口的主要差异,提到了它们的主要区别以及它们的主要优点。

Lin Bus 接口
-
Lower cost.
-
Latency time - more predictable network.
-
Overall implementation - simpler to implement than CAN.
-
Typically, LIN master works as a gateway to the CAN Bus.
-
LIN clusters have a single master.
-
LIN is settled - not event-driven.
-
Uses single wire 12V.
-
LIN offers a max of 20 kbit/s.
CAN Bus 接口
-
Uses twisted shielded dual wires 5V.
-
Uses 11 or 29-bit identifiers.
-
Very complex and robust interface.
-
CAN could have multiple masters.
-
CAN offer up to 1 Mbit/s.

6.LIN总线数据帧格式
简单地说,LIN总线消息帧由一个报头和一个响应组成。一般来说,LIN主节点通常向LIN总线发送一个报头,然后触发一个从节点。从节点发送最多8个数据字节作为响应。LIN帧格式用下图说明。

现在我们将详细解释LIN帧格式的具体部分。
中断
-
The Sync Break Field (SBF), also known as just Break is a minimum of 13 + 1 bit long.
-
Commonly used as 18 + 2 bits.
-
Operates as a start of the frame.
同步
-
Is 8 bits long.
-
Has a predetermined value of 0x55.
-
Its structure allows the LIN nodes to determine the time between rising and/or falling edges.
标识位
-
Is 6 bits long and followed by 2 parity bits.
-
The ID operates as an identifier for each LIN message.
-
Slaves determine the validity of the ID field and operate accordingly - ignore the subsequent data transmission, listen to the data transmitted from another node, and publish data in response to the header
此外,通常在同一时间使用一个从节点来获取信息。这意味着没有碰撞风险,也不需要采取仲裁。6位允许64个id,其中id 60-61用于诊断。
7.LIN Bus消息帧格式
LIN消息由标识符字节、校验和字节、同步字节和同步字段组成。
Frame types
-
Unconditional frame - 0-59 ID dec, 00-3B ID hex.
-
Event-triggered frame - 0-59 ID dec, 00-3B ID hex.
-
Sporadic frame - 0-59 ID dec, 00-3B ID hex.
-
Diagnostic frame - 60-61 ID dec, 3C-3D ID hex.
-
User-defined frame - 62 ID dec, 3E ID hex.
-
Reserved frame - 63 ID dec, 3F ID hex.
8.LIN Description File (LDF)
LIN网络由LDF描述,其中包含有关帧和信号的信息。LDF用于在主服务器和从服务器上创建软件。
使用时可能需要将原始LIN总线数据解码为物理值,作为LIN数据工作流的一部分。
要将原始数据解码为可读形式,需要从LIN帧有效负载中提取LIN信号。LIN总线解码与CAN总线解码非常相似,需要相同的信息。
9.LIN Bus 的历史
为了更好的理解LIN总线的由来, 创建LIN Bus的历史时间线如下:
-
1999 - LIN 1.0 released by the LIN Consortium (BMW, Volkswagen Group, Volvo Cars, Audi, and Mercedes-Benz)
-
2000 - The LIN Bus protocol was updated - LIN 1.1 and LIN 2.2
-
2002 - LIN 1.3 was released
-
2003 - LIN 2.0 was released with multiple changes
-
2006 - LIN 2.1 specification released
-
2010 - LIN 2.2A was released
-
2010 - 2012 - Based on LIN 2.0, SAE standardized LIN as SAE J2602
-
2016 - LIN standardized as ISO 17987:2016

10.LIN Bus未来展望
由于其低成本的特点,LIN Bus有望在现代汽车中得到更为普遍的应用。
自2015年以来,我们已经看到LIN总线的受欢迎程度有了巨大的增长,预计还会增加更多。
此外,基于它的低成本。LIN总线有可能在J1939中也会得到使用。
11.参考资料
LIN Bus Simplified: The Ultimate Guide in 2023
https://www.ti.com/lit/an/slla383a/slla383a.pdf?ts=1698552801635&ref_url=https%253A%252F%252Fcn.bing.com%252F
相关文章:
一文详解汽车电子LIN总线
0.摘要 汽车电子LIN总线不同于CAN总线。 LIN总线基本上是CAN总线的廉价补充,相比于CAN总线,它提供较低的可靠性和性能。同时LIN总线也是一个应用非常广泛的网络协议,并且越来越受欢迎。 再一次,我们准备了一个关于LIN总线的简要…...
论文阅读——GPT3
来自论文:Language Models are Few-Shot Learners Arxiv:https://arxiv.org/abs/2005.14165v2 记录下一些概念等。,没有太多细节。 预训练LM尽管任务无关,但是要达到好的效果仍然需要在特定数据集或任务上微调。因此需要消除这个…...
星环科技分布式向量数据库Transwarp Hippo正式发布,拓展大语言模型时间和空间维度
随着企业、机构中非结构化数据应用的日益增多以及AI的爆发式增长所带来的大量生成式数据,所涉及的数据呈现了体量大、格式和存储方式多样、处理速度要求高、潜在价值大等特点。但传统数据平台对这些数据的处理能力较为有限,如使用文件系统、多类不同数据…...
滚动条默认是隐藏的只有鼠标移上去才会显示
效果 在设置滚动条的类名中写 /* 滚动条样式 */.content-box::-webkit-scrollbar {width: 0px; /* 设置纵轴(y轴)轴滚动条 */height: 0px; /* 设置横轴(x轴)轴滚动条 */}/* 滚动条滑块(里面小方块) */.…...
Go学习第十五章——Gin参数绑定bind与验证器
Go web框架——Gin(参数绑定bind与验证器) 1 bind参数绑定1.1 JSON参数1.2 Query参数1.3 Uri绑定动态参数1.4 ShouldBind自动绑定 2 验证器2.1 常用验证器2.2 gin内置验证器2.3 自定义验证的错误信息2.4 自定义验证器 1 bind参数绑定 在Gin框架中&#…...
EtherCAT的4种寻址方式解析
我们知道,一个EtherCAT数据帧(frame)里面包含很多个报文(datagram),不管是什么样式的报文,它们的目的只有一个,就是读写从站寄存器或内存。所以寻址就是以什么方式访问哪个从站的哪个…...
Trino 源码剖析
Functions function 反射和注册 io.trino.operator.scalar.annotations.ScalarFromAnnotationsParser 这里是提取注解元素的方法 String baseName scalarFunction.value().isEmpty() ? camelToSnake(annotatedName(annotated)) : scalarFunction.value(); 这里如果 scala…...
element表格自定义筛选
文章目录 前言一、简介二、效果展示三、源码总结 前言 提示:这里可以添加本文要记录的大概内容: …待续 提示:以下是本篇文章正文内容,下面案例可供参考 一、简介 修改el-table的筛选…待续 二、效果展示 三、源码 使用方法…...
全方位 Linux 性能调优经验总结
Part1Linux性能优化 1性能优化 性能指标 高并发和响应快对应着性能优化的两个核心指标:吞吐和延时 图片来自: www.ctq6.cn 应用负载角度:直接影响了产品终端的用户体验系统资源角度:资源使用率、饱和度等 性能问题的本质就是系统资源已经…...
Linux机器网络检查
查看DNS file: dianTestLRSSnapshot:~$ cat /etc/resolv.conf # This file is managed by man:systemd-resolved(8). Do not edit. # # This is a dynamic resolv.conf file for connecting local clients to the # internal DNS stub resolver of systemd-resolved. This file…...
使用示例和应用程序全面了解高效数据管理的Golang MySQL数据库
Golang,也被称为Go,已经成为构建强大高性能应用程序的首选语言。在处理MySQL数据库时,Golang提供了一系列强大的库,简化了数据库交互并提高了效率。在本文中,我们将深入探讨一些最流行的Golang MySQL数据库库ÿ…...
ubuntu 22.04 源码安装 apollo 8.0
对于其他的关于GPU的安装包需求,这里不再列出,因为我之前安装过,偷个懒就不写了,哈哈哈哈1, 安装docker 安装docker命令(这里的安装命令都是在docker官网,还有安装包): 1, 设置docker的apt仓库 # Add Do…...
RK3588编译MXNet框架
目录 1. 背景 2.编译MXNet准备 3.开发板编译 1. 背景 MXNet(也称为Apache MXNet或incubator-mxnet)是一个开源的深度学习框架,它最初由华为和亚马逊AWS共同开发,并于2017年成为Apache软件基金会的孵化项目。MXNet旨在提供高效、…...
港府Web3宣言周年思考:合规困境中的“隐患”
出品|欧科云链研究院 作者|毕良寰 距离《有关虚拟资产在港发展的政策宣言》已过去一年,我们欧科云链研究院在分析全球几个主要国家和地区对Web3的监管政策及态度后,对港府的雄心壮志充满期待。然而,由于近期一些庞氏骗…...
vue点击按钮跳转页面
在Vue.js中,你可以使用<router-link>或this.$router.push()来实现点击按钮跳转页面的功能,前提是你已经配置了Vue Router。以下是两种不同的方法来实现页面跳转: 方法一:使用<router-link> <router-link> 是Vu…...
大中小企业对CRM系统的需求
在以前,CRM客户管理系统是大型企业的专属。如今,不论何种规模的企业都能够使用CRM系统。市面上的CRM有着丰富的功能类型,管理者可以从企业自身规模出发,选择适合的CRM系统。下面说说,大中小企业对CRM系统的需求。 一句…...
.net core iis 发布后登入的时候请求不到方法报错502
.net core iis 发布后登入的时候请求不到方法报错502 502 bad gateway 502 - Web 服务器在作为网关或代理服务器时收到了无效响应。 您要查找的页面有问题,无法显示。当 Web 服务器(作为网关或代理)与上游内容服务器联系时,收到来自内容服务器的无效…...
知识图谱实战应用30-知识图谱在反欺诈情报分析项目中的应用实践
大家好,我是微学AI,今天给大家介绍一下知识图谱实战应用30-知识图谱在反欺诈情报分析项目中的应用实践,现代商业环境中,各类欺诈行为日益猖獗,严重影响企业的运营和社会秩序。传统的欺诈检测方法难以满足实时性和有效性方面的要求。本文介绍了采用知识图谱技术构建反欺诈情报…...
[云原生1. ] 使用Docker-compose一键部署Wordpress平台
文章目录 1. Docker-compose概述1.1 简介1.2 docker-compose 的三大概念1.3 docker-compose配置模板文件常用的字段1.4 docker-compose 常用命令及格式 2. YAML 文件的详细介绍及编写注意事项2.1 简介2.2 yaml的特性2.2.1 语法特点2.2.2 数据结构2.2.3 引号的区别2.2.4 内置类型…...
springboot--基本特性--自定义 Banner
SpringApplication的使用 前言效果1.1 自定义banner1.2 自定义SpringApplication配置文件优先级高于程序化调整的优先级启动自定义banner关闭自定义banner 1.3 FluentBuilder API 前言 修改启动时候的修改banner 效果 1.1 自定义banner banner制定官网链接 在配置文件中设置…...
IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!
5月28日,中天合创屋面分布式光伏发电项目顺利并网发电,该项目位于内蒙古自治区鄂尔多斯市乌审旗,项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站,总装机容量为9.96MWp。 项目投运后,每年可节约标煤3670…...
零基础设计模式——行为型模式 - 责任链模式
第四部分:行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习!行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想:使多个对象都有机会处…...
k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...
HashMap中的put方法执行流程(流程图)
1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...
Web后端基础(基础知识)
BS架构:Browser/Server,浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端。 优点:维护方便缺点:体验一般 CS架构:Client/Server,客户端/服务器架构模式。需要单独…...
十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建
【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...
CppCon 2015 学习:Time Programming Fundamentals
Civil Time 公历时间 特点: 共 6 个字段: Year(年)Month(月)Day(日)Hour(小时)Minute(分钟)Second(秒) 表示…...
