低成本总线技术——LIN总线协议规范介绍

 关注菲益科公众号—>对话窗口发送 “CANoe ”或“INCA”,即可获得canoe入门到精通电子书和INCA软件安装包(不带授权码)下载地址。

本篇文章主要介绍LIN总线协议规范。

数据帧的结构

LIN的数据帧包括报头,响应两大部分。而报头包含了间隔场,间隔界定,同步场,标识符场等部分。响应包含了数据场和校验和场。

数据帧的结构示意

如上图所示,数据帧按照报头,响应两大部分组成。其中字节间隔位于每个字节之间,响应间隔位于报头和响应之间。其作用在于,实际应用过程中,间隔时间留给MCU足够时间准备反应。

  • 间隔场

间隔场用于表示一帧报文的开始。主节点发出的间隔信号至少有13个显性位,间隔界定符至少有1个隐性位。

同时,从节点需要连续检测到11个显性位才认为是间隔信号。

  • 同步场

同步场,顾名思义就是用于数据同步的。同步场确保所有从节点与主节点使用相同的波特率发送和接收数据。

同步场占一个字节,固定为0xFF。

  • 标识符场

P0 = ID0  ID1  ID2  ID4
P1 = ~(ID1  ID3  ID4  ID5)

ID0~ID5和P0/P1组成了Protected ID。

ID0~ID5的范围也有规范:

  1. 0 - 59 (0x3B) --> 一般数据帧ID范围
  2. 60 (0x3C) and 61 (0x3D) --> 用于诊断命令
  3. 62 (0x3E) and 63 (0x3F) --> 预留的
  • 数据场

数据场是LIN数据帧真正要传输的数据。数据场的长度为1到8个字节。数据发送的顺序是:低字节先发,低位先发;如果数据长度超过1个字节,采用小端模式(低位在前发送)。

因为LIN是基于串口通信,所以,每个字节的传输需要10个位时间。

  • 校验和场

校验和场用于校验接收的数据是否正确,一次提高数据的可靠性。

校验的方法也有两种:经典校验,增强校验。

经典校验:只是校验数据场,不校验标识符场。

增强校验:校验数据场,同时校验标识符场。

标识符0x3C,0x3D的诊断帧只能用经典校验。

经典校验和举例:数据场的数据 = 0x4A, 0x55, 0x93, 0xE5

LIN v2.2A checksum example

checksum = 0xE6.

数据帧的类型

数据帧分为无条件帧,事件触发帧,保留帧,零星帧,诊断帧,自定义帧。

而在真实的项目中,无条件帧,诊断帧应用最多,其他类型基本不用。

LIN v2.2A -- 无条件帧使用举例

无条件帧的标识符ID为0~0x3B。主节点根据调度表发送数据,发出报头接收数据。

诊断帧用于传输诊断命令或者配置信息,一般包含8个字节数据。

0x3C --> 主节点发送请求帧

0x3D --> 从节点响应帧

LDF

LDF是LIN的配置语言规范(LIN description File)。LDF是连接设计,开发,实现,测试的桥梁。

一个完整的LDF文件会定义好各个从节点的基本参数,调度表,数据收发的网络节点。

LDF--信号的定义格式

LDF -- 数据帧的定义格式 LIN2.1/2.2

LDF -- 数据帧的定义格式 LIN2.0

LDF-- LIN的基本参数定义格式

了解更多产品信息,请致菲益科电子官网查询

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/598051.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Visual Studio 2013 “即将退休”

新年快乐! 这也是向各位开发者提醒 Visual Studio 支持生命周期中即将到来的好时机。 对 Visual Studio 2013 的支持即将在今年(2024年)的4月9日结束。如果你正在使用旧版本的 Visual Studio,我们强烈建议您升级您的开发环境到最新的 Visual Studio 20…

浏览器是如何渲染页面的

浏览器是个极其复杂的程序,这里只是挑几个和前端息息相关的重要内容来说 在学习如何渲染之前需要知道一个浏览器浏览器会有多个进程,其中主要进程有浏览器进程,网络进程,渲染进程这里我们主要学习内容就发生在渲染进程。当渲染进程…

【解决openGauss无法使用gs_check等服务器端命令问题】

【解决openGauss无法使用gs_check等服务器端命令问题】 一、问题描述二、问题原因三、解决方法 一、问题描述 [ommopengauss03 ~]$ gs_check -i CheckCPU Parsing the check items config file successfully [GAUSS-53026]: ERROR: Execute SSH command on host 192.168.56.19…

给出一句话来描述想要的图片,就能从图库中搜出来符合要求的

介绍 地址:https://github.com/mazzzystar/Queryable The open-source code of Queryable, an iOS app, leverages the OpenAIs CLIP model to conduct offline searches in the Photos album. Unlike the category-based search model built into the iOS Photos…

项目使用PowerJob

新一代的定时任务框架——PowerJob 简介 PowerJob是基于java开发的企业级的分布式任务调度平台,与xxl-job一样,基于web页面实现任务调度配置与记录,使用简单,上手快速,其主要功能特性如下: 使用简单&…

如何在 Windows 上从电脑硬盘恢复照片

如今,随着相机设备的普及,您可以轻松地一次拍摄一堆照片,将它们传输到硬盘上,然后再拍摄更多照片。但是,如果您的所有照片意外丢失在驱动器中怎么办?你能恢复它们吗? 在本指南中,我…

EasyRecovery2024永久免费版电脑数据恢复软件

EasyRecovery是一款操作安全、价格便宜、用户自主操作的非破坏性的只读应用程序,它不会往源驱上写任何东西,也不会对源驱做任何改变。它支持从各种各样的存储介质恢复删除或者丢失的文件,其支持的媒体介质包括:硬盘驱动器、光驱、…

postgresql可视化导入csv文件

不需要在命令行copy了,只需简单点几下 1.在数据库下建一个schema 右击选中数据库-new schema 2.双击你创建的schema,出现tables 3.右击tables,选择import wizard 4.选择你想导入的文件格式,之后一直next 5.选择你的文件所在位置…

C语言实用第三方库Melon开箱即用之多线程模型

在之前的文章中(开发利器——C 语言必备实用第三方库),笔者介绍了一款Linux/UNIX下C语言库Melon的基本功能,并给出了一个简单的多进程开箱即用的例子。 本文将给大家介绍Melon中多线程的使用方法。 在Melon中有三种多线程模式&a…

Redis 之父锐评 LLM 编程:全知全能 Stupid|一周IT资讯

阿里通义千问上线“科目三”,刘皇叔、奥特曼、马斯克通通没逃过 在刚到的2024年,阿里通义千问 APP 上线图片生成舞蹈功能,用户只需输入一张图片,就能生成爆款舞蹈图片。 不管是“科目三”,还是鬼步舞、兔子舞&#x…

(18)Linux 实现简易版shell

前言:做一个 "会创建,会终止,会等待,会程序替换" 的简易 shell 。 1、显示提示符和获取用户输入 shell 本质就是个死循环,我们不关心获取这些属性的接口,如果要实现 shell: 1&…

015:JS之正则表达式,web乱码和路径问题总结,MVC架构模式

一 JS的正则表达式 1 正则表达式简介 正则表达式是描述字符模式的对象。正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。 语法 var pattnew RegExp(pattern,modifiers);//正则的格式模版,修饰符或者更简单的方式:var pa…

权威测评首家通过!亚信安慧AntDB通过中国信通院数据库迁移工具专项测试

近日,亚信安慧数据库数据同步平台在中国信通院第17批“可信数据库”数据库迁移工具专项测试中,完全符合《数据库迁移工具能力要求》,成为首家通过标准测试的产品。这一成果标志着湖南亚信安慧科技有限公司(简称“亚信安慧”&#…

Pandas透视表及应用

Pandas 透视表概述 数据透视表(Pivot Table)是一种交互式的表,可以进行某些计算,如求和与计数等。所进行的计算与数据跟数据透视表中的排列有关。 之所以称为数据透视表,是因为可以动态地改变它们的版面布置&#xf…

Git保姆级安装教程

Git保姆级安装教程 一、去哪下载二、安装2.1 具体安装步骤2.2 设置全局用户签名 一、去哪下载 1、官网(有最新版本):https://git-for-windows.github.io/ 2、本人学习时安装的版本,链接:https://pan.baidu.com/s/1uAo…

Spark内核解析-数据存储5(六)

1、Spark的数据存储 Spark计算速度远胜于Hadoop的原因之一就在于中间结果是缓存在内存而不是直接写入到disk,本文尝试分析Spark中存储子系统的构成,并以数据写入和数据读取为例,讲述清楚存储子系统中各部件的交互关系。 1.1存储子系统概览 …

LabVIEW开发分布式光纤油气管道泄漏检测及预警系统

LabVIEW开发分布式光纤油气管道泄漏检测及预警系统 随着油气工业的发展,管道泄漏成为一个严峻的安全问题。本文介绍了一种基于LabVIEW的分布式光纤油气管道泄漏检测及预警系统的设计思路和组成结构。系统包括硬件和软件两部分,其中硬件部分详细阐述了分…

redis报错:Creating Server TCP listening socket 127.0.0.1:6379: bind: No error

Redis启动时报错: Creating Server TCP listening socket 127.0.0.1:6379: bind: No error 这个错误说明已经开启了redis,并且已经占用了端口6379,需要停止redis后再开启。 redis-cli.exeshutdownexitredis-server redis.windows.conf 参考…

java每日一题——输出星星塔(答案及编程思路)

前言: 打好基础,daydayup! 题目:请编写输出如下图的星星塔 编程思路:1,计算要输入几行;2,计算每行的⭐数量,及空格的数量;计算相应的关系; 如图:假…