【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定义
- LinTrcv_Init
- LinTrcv_SetOpMode
- LinTrcv_GetOpMode
- LinTrcv_GetBusWuReason
- LinTrcv_GetVersionInfo
- LinTrcv_CheckWakeup
- 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)dxd(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 常用命令: frame.len 帧数据总长度:包含MAC头IP头UDP头UDP数据 eg: 1、 重传命令的长度是62, Frame.len 62 2、 长度大于200的包,frame.len > 200 3、 长度小于80的包,frame.len < 80 Ip.src 数据包的发送源IP地…...
Thinkphp 6.0多语言
本节课我们来学习一下如何配置的多语言功能,并实现调用方法。 一.多语言 1. 如果要开启多语言切换功能,中间件定义文件 middleware.php 开启; // 多语言加载 \think\middleware\LoadLangPack::class, 2. 配置文件在 config/lang…...

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

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

乐鑫 × 全国大学生物联网设计竞赛|探究基于 ESP32-S3 的农业革新应用
2023 年全国大学生物联网设计竞赛(下简称“竞赛”)现已官宣启幕!乐鑫科技 (688018.SH) 作为竞赛金牌合作伙伴,将为同学们带来基于 AI SoC ESP32-S3 的独立竞赛任务,并全程提供软硬件开发资源、技术培训…...

【技术分享】华为防火墙多出口接入到Internet
组网需求 如图1所示,FW作为安全网关部署在网络出口,企业分别从ISP1和ISP2租用一条链路。 企业希望访问Server 1的报文从ISP1链路转发,访问Server 2的报文从ISP2链路转发。 当其中一条链路故障时,后续流量可以通过另一条链路转发…...

Winnolin绘制药时曲线图C-T
文章目录前言一、各受试者C-T图1.导入数据2.设置-运行2.查看结果,修改参数二、各制剂C-T图1.导入数据2.设置-运行2.查看结果,修改参数三、平均C-T图1.计算统计量2.设置统计量计算参数(Set Up)3.绘图XY Plot4.查看结果,…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)
题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...

Python实现prophet 理论及参数优化
文章目录 Prophet理论及模型参数介绍Python代码完整实现prophet 添加外部数据进行模型优化 之前初步学习prophet的时候,写过一篇简单实现,后期随着对该模型的深入研究,本次记录涉及到prophet 的公式以及参数调优,从公式可以更直观…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...