当前位置: 首页 > news >正文

【AUTOSAR】【Lin通信】LinTrcv

目录

一、概述

二、功能说明

2.1 LIN收发器驱动程序操作模式

2.2 LIN收发器硬件操作模式

2.3 LIN收发器唤醒类型

2.4 LIN收发器唤醒模式

2.5 错误分类

2.5.1 开发错误

三、API接口

3.1 API定义


一、概述

        该规范规定了模块LIN收发器驱动程序的功能、API和配置。它负责处理一个ECU上的LIN收发器硬件。

        LIN总线收发器是一种硬件设备。它是LIN协议控制器和物理LIN总线之间的接口。一方面,一个LIN协议控制器的传输数据流被转换为符合LIN物理层的总线信号。另一方面,LIN总线的数据流被转换为协议控制器的输入信号。一个LIN协议控制器通常是一个微控制器的实现。

        大多数LIN收发器都支持通过总线进行电源控制和唤醒。市场上有很多不同的唤醒/睡眠和电源供应的概念。

【规范】LIN收发器驱动程序抽象了应用的LIN收发器硬件,并覆盖了到更高层的硬件独立接口。它还通过使用MCAL层的api访问LIN收发器硬件,从ECU布局进行抽象。

二、功能说明

2.1 LIN收发器驱动程序操作模式

【规范】LIN收发器驱动器的操作模式如下图所示:

2.2 LIN收发器硬件操作模式

LIN收发器硬件可能比软件支持更多的模式转换。决定哪个LIN收发器硬件状态由哪个LIN收发器驱动程序软件状态的实现。一个实现必须保证所描述的LIN收发器驱动程序的整个功能是由该实现给出。

2.3 LIN收发器唤醒类型

        方案一:单片机不供电,ECU的部分包括LIN收发器硬件供电。所考虑的LIN收发器硬件处于LINTRCV_TRCV_MODE_SLEEP模式。通过LIN收发器硬件检测到LIN上的唤醒事件。LIN收发器硬件导致单片机供电。就AUTOSAR而言,这是作为一个冷的开始,而不是作为一个唤醒。

        方案二:单片机处于低功耗模式,部分ECU包括LIN收发器硬件被供电。根据硬件实现的不同,所考虑的LIN收发器硬件要么处于LINTRCV_TRCV_MODE_STANDBY模式或LINTRCV_TRCV_MODE_SLEEP模式。通过LIN收发器硬件检测到LIN上的唤醒事件。LIN收发器硬件正在通知单片机关于唤醒。就AUTOSAR而言,这是作为LIN通道和单片机的唤醒。

        方案三:单片机处于全功率模式,至少为包括LIN收发器硬件在内的部分ECU供电。根据硬件实现的不同,所考虑的LIN收发器硬件要么处于LINTRCV_TRCV_MODE_STANDBY模式或LINTRCV_TRCV_MODE_SLEEP模式。通过LIN收发器硬件检测到LIN上的唤醒事件。LIN收发器硬件正在通知单片机唤醒或周期性地轮询唤醒事件。就自动存储器而言,这是作为一个LIN通道的唤醒。

        方案四:单片机处于全功率模式,至少为包括LIN收发器硬件在内的部分ECU供电。根据硬件实现的不同,所考虑的LIN收发器硬件要么处于LINTRCV_TRCV_MODE_STANDBY模式或LINTRCV_TRCV_MODE_SLEEP模式。单片机现在正在将LIN收发器硬件设置为LINTRCV_TRCV_MODE_NORMAL模式,并正在唤醒LIN通道。就AUTOSAR而言,这是作为一个LIN通道的内部唤醒(通过单片机)。

2.4 LIN收发器唤醒模式

【规范】唤醒通知必须由Lin收发器驱动程序支持,因此Lin收发器驱动程序覆盖2种唤醒模式,上层内部唤醒或Lin通道外部唤醒。

  • 内部唤醒:内部唤醒由上层启动,例如通过调用LinTrcv_Init()或LinTrcv_SetOpMode。
  • 外部唤醒:由LIN收发器驱动程序检测到的唤醒通过API LinTrcv_CheckWakeup被转发到上层,它必须由LinIf调用。

【规范】唤醒模式的选择应通过配置参数LinTrcv唤醒支持来完成。

【规范】应通过配置参数LinTrcv唤醒线分别开启和关闭每个LIN收发器通道的唤醒支持。

【规范】LinTrcv司机应使用ICU司机提供的以下api,以启用和禁用唤醒事件通知:

  • Icu_EnableNotification
  • Icu_DisableNotification

【规范】当收发机传输到待机模式(LINTRCV_STANDBY)时,LinTrcv驱动器应启用ICU通道。

【规范】当收发器传输到正常模式(LINTRCV_NORMAL)时,LinTrcv驱动程序应禁用ICU通道。

2.5 错误分类

2.5.1 开发错误

三、API接口

3.1 API定义

  1. LinTrcv_Init
  2. LinTrcv_SetOpMode
  3. LinTrcv_GetOpMode
  4. LinTrcv_GetBusWuReason
  5. LinTrcv_GetVersionInfo
  6. LinTrcv_CheckWakeup
  7. LinTrcv_SetWakeupMode

相关文章:

【AUTOSAR】【Lin通信】LinTrcv

目录 一、概述 二、功能说明 2.1 LIN收发器驱动程序操作模式 2.2 LIN收发器硬件操作模式 2.3 LIN收发器唤醒类型 2.4 LIN收发器唤醒模式 2.5 错误分类 2.5.1 开发错误 三、API接口 3.1 API定义 一、概述 该规范规定了模块LIN收发器驱动程序的功能、API和配置。它负责…...

UE4C++学习篇(十九)-- 动画蒙太奇初级使用

用一个第三人称的射击案例来简单介绍一下动画蒙太奇的使用,动画蒙太奇的具体介绍这里就不多说了,不知道的小伙伴可以去搜一下了解。 这里介绍角色射击,射击的时候播放一个射击动画。 选中需要创建出动画蒙太奇的动画,点击创建&am…...

子集和问题

目录 子集和问题 程序设计 程序分析 子集和问题 【问题描述】子集和问题的一个实例为〈S,c〉。其中,S={ x1 , x2 ,…,xn }是一个正整数的集合,c是一个正整数。子集和问题判定是否存在S的一个子集S1,使得: 试设计一个解子集和问题的回溯法。 对于给定的正整数的集…...

苹果蓝牙耳机太贵了买哪个替代?苹果蓝牙耳机平替推荐

随着人们生活水平的提高,蓝牙耳机已经遍布在我们生活的各个角落。同时随着科技的发展,许多人果粉选择苹果耳机平替。下面我们一起来看看2023年有哪些适用于苹果的平替蓝牙耳机吧! 一、南卡小音舱Lite2蓝牙耳机 蓝牙版本:5.3 售…...

CK-UR05-US桌面式超高频RFID发卡器开发手册之USB控制命令格式

CK-UR05-US桌面式超高频RFID发卡器支持USB控制命令格式,本文重点就此格式展开说明! CK-UR05-US桌面式超高频RFID发卡器1、取版本号(GetReaderVersion) 功能:取读写器的硬件、软件版本 命令码: 02H 命令参数:无 命令包: 『40H 02H 02H BCH』 举例: 如…...

【华为OD机试】1025 - 字符串加解密

文章目录一、题目🔸题目描述🔸输入输出🔸样例1二、代码参考作者:KJ.JK🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 🌈 &#x…...

阿里云版GPT官宣,我们问了它10个问题

4月7日,阿里云宣布自研大模型“通义千问”,目前已开始邀请用户测试体验。 阿里达摩院在NLP自然语言处理等前沿科研领域早已布局多年,并于2019年启动大模型研发,通义千问便是其最新成果,相当于阿里云版的“ChatGPT”。 …...

ORM框架之NHibernate

什么是NHibernate NHibernate是一个开源的对象关系映射(ORM)框架,它允许开发人员使用面向对象的方式来访问关系型数据库。它是Hibernate框架的C#版本,Hibernate框架是Java平台上的ORM框架。 使用NHibernate,您可以将…...

凑微分练习

前言 在学习第一类换元法(凑微分法)时,我们常常需要凑微分。为了更加熟练地运用凑微分法,下面有几道凑微分例题供大家练习。 记住df(x)f′(x)dxdf(x)f(x)dxdf(x)f′(x)dx 例题1 dx‾d(ax)dx\underline{\quad}d(ax)dx​d(ax)dx‾…...

JavaWeb——多线程使用哈希表

目录 一、HashMap 1、定义 二、HashTable 1、定义: 2、区别: 三、ConcurrentHashMap 1、定义: 2、优化 (1)、加锁粒度不同——触发锁冲突的频率不同 (2)、充分利用CAS机制——无锁编程…...

anaconda permission denied

可能是路径不对 我的是只写了dir,没写文件名,而我要的是某个文件的路径,所以就报这个错。 具体,我需要某个权重的路径,比如pytorch_resnet50.pth,但我只写了这个权重所在的dir,比如F:/software/…...

蓝桥杯带刷,带刷!!!

A:::::::::::::::::::::::::::::::::::m计划(双指针,滑动窗口,倍增) 题目描述 小明是个鹅卵石收藏者,从小到大他一共收藏了 nn 块鹅卵石,编号分别为 1∼n,价值分别为 a1​,a2​&…...

第03讲:MinIO分布式文件服务器

一、什么是MinIO Minio 是个基于 Golang 编写的开源对象存储套件,虽然轻量,却拥有着不错的性能。 官网地址:MinIO | High Performance, Kubernetes Native Object Storageopen in new window官网文档地址:MinIO | The MinIO Qui…...

WireShark

wireshark 常用命令&#xff1a; frame.len 帧数据总长度&#xff1a;包含MAC头IP头UDP头UDP数据 eg: 1、 重传命令的长度是62, Frame.len 62 2、 长度大于200的包&#xff0c;frame.len > 200 3、 长度小于80的包&#xff0c;frame.len < 80 Ip.src 数据包的发送源IP地…...

Thinkphp 6.0多语言

本节课我们来学习一下如何配置的多语言功能&#xff0c;并实现调用方法。 一&#xff0e;多语言 1. 如果要开启多语言切换功能&#xff0c;中间件定义文件 middleware.php 开启&#xff1b; // 多语言加载 \think\middleware\LoadLangPack::class, 2. 配置文件在 config/lang…...

生成式AI已形成全球性“AI再造业务”趋势

3月28日至31日&#xff0c;博鳌亚洲论坛2023年年会在海南举行。实体经济与数字经济如何融合发展&#xff0c;产业数字化如何加速向深层次拓展&#xff0c;生成式AI会给产业经济带来哪些变革&#xff1f;这些话题成为今年论坛热点。 百度集团执行副总裁、百度智能云事业群总裁沈…...

kubesphere 安装 skywalking

kubesphere 安装 skywalking 前言 在测试ELK过程中&#xff0c;框架内部使用skywalking来插入的traceId&#xff0c;没有服务端导致Ignored_Trace&#xff0c;先安装下试试skywalking使用效果&#xff0c;后面考了替换为Tlog 先来安装skywalking… 1. 导入helm原 地址&#x…...

乐鑫 × 全国大学生物联网设计竞赛|探究基于 ESP32-S3 的农业革新应用

​​​​​​​ 2023 年全国大学生物联网设计竞赛&#xff08;下简称“竞赛”&#xff09;现已官宣启幕&#xff01;乐鑫科技 (688018.SH) 作为竞赛金牌合作伙伴&#xff0c;将为同学们带来基于 AI SoC ESP32-S3 的独立竞赛任务&#xff0c;并全程提供软硬件开发资源、技术培训…...

【技术分享】华为防火墙多出口接入到Internet

组网需求 如图1所示&#xff0c;FW作为安全网关部署在网络出口&#xff0c;企业分别从ISP1和ISP2租用一条链路。 企业希望访问Server 1的报文从ISP1链路转发&#xff0c;访问Server 2的报文从ISP2链路转发。 当其中一条链路故障时&#xff0c;后续流量可以通过另一条链路转发…...

Winnolin绘制药时曲线图C-T

文章目录前言一、各受试者C-T图1.导入数据2.设置-运行2.查看结果&#xff0c;修改参数二、各制剂C-T图1.导入数据2.设置-运行2.查看结果&#xff0c;修改参数三、平均C-T图1.计算统计量2.设置统计量计算参数&#xff08;Set Up&#xff09;3.绘图XY Plot4.查看结果&#xff0c;…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

IGP(Interior Gateway Protocol,内部网关协议)

IGP&#xff08;Interior Gateway Protocol&#xff0c;内部网关协议&#xff09; 是一种用于在一个自治系统&#xff08;AS&#xff09;内部传递路由信息的路由协议&#xff0c;主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

376. Wiggle Subsequence

376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

关于 WASM:1. WASM 基础原理

一、WASM 简介 1.1 WebAssembly 是什么&#xff1f; WebAssembly&#xff08;WASM&#xff09; 是一种能在现代浏览器中高效运行的二进制指令格式&#xff0c;它不是传统的编程语言&#xff0c;而是一种 低级字节码格式&#xff0c;可由高级语言&#xff08;如 C、C、Rust&am…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

FFmpeg:Windows系统小白安装及其使用

一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】&#xff0c;注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录&#xff08;即exe所在文件夹&#xff09;加入系统变量…...

深入浅出Diffusion模型:从原理到实践的全方位教程

I. 引言&#xff1a;生成式AI的黎明 – Diffusion模型是什么&#xff1f; 近年来&#xff0c;生成式人工智能&#xff08;Generative AI&#xff09;领域取得了爆炸性的进展&#xff0c;模型能够根据简单的文本提示创作出逼真的图像、连贯的文本&#xff0c;乃至更多令人惊叹的…...