CP_AutoSar目录(更新中....)

本文详细解读了AutoSAR的RTE、模式和状态管理、BSW(包括操作系统、Can通信栈、存储栈和诊断)以及CDD和工具链相关内容,涵盖了CANAPE、lauterbach和DaVinci等开发工具。还涉及了工程优化和常见BUG记录,是理解和应用AutoSAR的实用指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

  一些笔记和日常记录。有部分未包含在此目录中

  
  

[AutoSar]AutoSar 官方文档如何阅读及分类和缩写说明

一、RTE

[AutoSar]基础部分 RTE 01 介绍
[AutoSar]基础部分 RTE 02 S/R Port 显式/隐式
[AutoSar]基础部分 RTE 03 C/S Port 同步/异步
[AutoSar]基础部分 RTE 04 数据类型的定义及使用
[AutoSar]基础部分 RTE 05 Port的实例化和初始化
[AutoSar]基础部分 RTE 06 对runnable的触发和SWC的影响
[AutoSar]基础部分 RTE 07 VFB虚拟功能总线
[AutoSar]基础部分 RTE 08 runnable mapping

二、模式和状态管理

[AutoSar]状态管理(一)单核 ECUM
[AutoSar]状态管理(二)单核 ECUM wakeup 流程——Can唤醒流程(TJA1043)
[AutoSar]状态管理(三)单核BswM(一)
[AutoSar]状态管理(四)单核BswM(二)流程、配置、 代码
[AutoSar]状态管理(五)Dcm与BswM、EcuM的复位实现

三、BSW

[AutoSar]基础部分 autosar分层架构及BSW介绍
[AutoSar]BSW_ECUC模块介绍
[AutoSar]BSW_ECUC模块配置
[AutoSar]BSW_ OS CORE, Physical core,EcuC core,EcuC partition,OSApplication的关系

3.1 OS

[AutoSar]BSW_OS 01 Autosar OS入门
[AutoSar]BSW_OS 02 Autosar OS_STACK
[AutoSar]BSW_OS 03 priority ceiling protocol(PCP)
[AutoSar]BSW_OS 04 Autosar OS_ISR 中断
[AutoSar]BSW_OS 05 Autosar OS_schedule table
[AutoSar]BSW_OS 06 Autosar OS_Alarms
[AutoSar]BSW_OS 07 Autosar OS_时间保护
[AutoSar]BSW_OS 08 Autosar OS_内存保护
[AutoSar]BSW_OS 09 Autosar OS_Application
[AutoSar]BSW_OS 10 Inter OS Application Communicator (IOC)

3.2 Can 通信栈

[AutoSar]BSW_Com 01 Can通信入门
[AutoSar]BSW_Com02 PDU详解
[AutoSar]BSW_Com03 DBC详解 (一)
[AutoSar]BSW_Com03 DBC详解 (二)
[AutoSar]BSW_Com04 从零开始创建DBC文件
[AutoSar]BSW_Com05 CAN2.0 和CANFD DBC 的相互转换
[AutoSar]BSW_Com06 CAN报文应用层到Can总线的函数调用
[AutoSar]BSW_Com07 CAN报文接收流程的函数调用
[AutoSar]BSW_Com08 CAN driver 模块介绍及参数配置说明 (一)
[AutoSar]BSW_Com08 CAN driver 模块介绍及参数配置说明 (二)
[AutoSar]BSW_Com09 CAN driver 模块FULL(BASIC)CAN、FIFO选择
[AutoSar]BSW_Com010 CAN IF 模块介绍
[AutoSar]BSW_Com011 CAN IF 模块配置
[AutoSar]BSW_Com012 CAN TP 模块介绍
[AutoSar]BSW_Com013 CAN TP 模块配置
[AutoSar]BSW_Com014 PDUR 模块介绍
[AutoSar]BSW_Com015 PDUR 模块配置
[AutoSar]BSW_Com016 硬件滤波、软件滤波、mask、code 配置
[AutoSar]BSW_Com017 COM模块介绍(一)
[AutoSar]BSW_Com018 COM模块介绍(二)
[AutoSar]BSW_Com019 COM模块配置
[AutoSar]BSW_Com020 Handle_ID,Global_PDU,Local_PDU的联系
[AutoSar]BSW_Com021单帧 首帧 流控帧 连续帧 详解

[AutoSar]在Davinci developer中mapping Com interface port
[AutoSar]在Davinci Configurator中导入Dbc Cdd 文件

3.3 存储栈

[AutoSar]BSW_Memory_Stack_001 存储栈概述
[AutoSar]BSW_Memory_Stack_002 NVM介绍
[AutoSar]BSW_Memory_Stack_003 NVM与APP的显式和隐式同步
[AutoSar]BSW_Memory_Stack_004 创建一个简单NV block并调试
[AutoSar]BSW_Memory_Stack_005 NVM 队列与优先级
[AutoSar]BSW_Memory_Stack_006 NVM 的常用实现方式 (Per_instance/NVBlockSwComponent)
[AutoSar]BSW_Memory_Stack_007 FEE 模块介绍
[AutoSar]BSW_Memory_Stack_008 FEE 的sector switch (翻页)
[AutoSar]BSW_Memory_Stack_009 FEE 的配置更新操作


[AutoSar] [AutoSar] NVM 模式跳转配置和说明-实现下电写NVblock
[AutoSar] FEE NVM BUG记录
[AutoSar]NVM模块介绍和使用说明

3.4 诊断

[AutoSar]BSW_Diagnostic_001 (UDS)诊断概述及入门
[AutoSar]BSW_Diagnostic_002 DCM模块介绍
[AutoSar]BSW_Diagnostic_003 ReadDataByIdentifier(0x22)介绍
[AutoSar]BSW_Diagnostic_004 ReadDataByIdentifier(0x22)的配置和实现

[AutoSar]BSW_Diagnostic_005 bootloader跳转流程和配置

[AutoSar]BSW_Diagnostic_005 RoutineControl service (0x31)介绍
[AutoSar]BSW_Diagnostic_006 RoutineControl (0x31)的配置和实现
[AutoSar]BSW_Diagnostic_007 BootLoader 跳转及APP OR boot response 实现




DCM相关:EB tresos 配置RID并经过RTE层

[AutoSar]BSW_Com021单帧 首帧 流控帧 连续帧 详解

3.5 其他

[AutoSar] VADC 模块配置及使用说明(一)
嵌入式 复位单元RCU (Reset Control Unit)说明
[AutoSar] WDGM checkpoint 说明及应用
vector autosar RTM使用与集成




四、CDD

[autosar] TLF35584 (SBC)的喂狗设计和实现(一)
[autosar] TLF35584 (SBC)的诊断策略(二)
[AutoSar] TLF38854 产品对SBC的一般需求(一)

五、工具链相关

5.1 CAN APE

如何将CanApe的A2L文件在Canoe中使用
用 CanApe 发送CAN/XCP/报文
vector canape 使用说明(一)
vector canape 使用说明(二)
vector CanApe 离线标定方法和代码实现
vector CanApe 开关XCP使能触发器
vector CanApe 实现上电立即自动上传(Resume)

5.2 lauterbach

[AutoSar]lauterbach_001_ORTI_CPUload_Trace
[AutoSar]lauterbach_002_同步编译环境和调试环境

5.3 DaVinci

[AutoSar]导出task mapping 表到excel

六、杂项

[AutoSar]DaVinci Developer 命名规范
[AutoSar]在 英飞凌TIRCORE芯片中实现两个工程的跳转
[AutoSar]在Davinci developer中mapping Com interface port
[AutoSar]在Davinci Configurator中导入Dbc Cdd 文件
[AutoSar]CP autosar 面试题
Iread/write port 没有在RTE层生成buffer
autosar section运行到指定Dflash
[python]用python实现对arxml文件的操作
[python]用python根据模板批量生成代码
[python]用python获取EXCEL文件内容并保存到DBC

七、优化相关

[AutoSar]工程中的cpuload陷阱(一)
[AutoSar]工程中的cpuload陷阱(二)
[AutoSar]工程中的cpuload陷阱(三)测试
[AutoSar]一种ECU间CAN通信的优化方法

八、BUG记录

[BUG记录]Can没有按照预期的周期刷新
[BUG]TDA4 main域 CAN 无法进中断
[BUG] FEE NVM BUG记录
[BUG记录]UART占用CPUload过高问题
[BUG记录]跨核间RAM值读取异常
[BUG记录]TDA4 main domain multi_core OS 启动后很快会挂掉
[BUG记录]0X10 会话切换服务响应NRC 0x10

03-21
### AUTOSAR 标准介绍 AUTOSAR(Automotive Open System Architecture)是一种开放式的汽车电子系统架构标准,其目标在于提升汽车电子系统的互操作性、可重用性和可扩展性[^1]。该标准通过定义统一的软件架构和接口规范,简化了汽车嵌入式系统的开发过程。 #### AUTOSAR 的分类 AUTOSAR 主要分为两个平台版本:Classic Platform 和 Adaptive Platform。其中 Classic Platform (AUTOSAR-CP) 是针对传统实时控制需求设计的标准版本,适用于硬实时场景下的 ECU 开发。 --- ### AUTOSAR 开发文档概述 AUTOSAR 提供了一系列详细的开发文档和技术规范,涵盖了从基础软件到应用层的设计与实现。以下是几个核心文档类别: 1. **技术规范** 技术规范详细描述了 AUTOSAR 各个组件的功能和服务,例如 BSW(Basic Software Module)、RTE(Runtime Environment Layer)以及 Application Layer 等[^2]。 2. **方法论指南** 方法论指南提供了基于 AUTOSAR 架构进行 ECU 开发的具体流程和最佳实践。这些文档帮助开发者理解如何将功能需求转化为实际的 SWC(Software Component),并通过工具链完成集成测试[^3]。 3. **功能安全文档** 针对 ISO 26262 功能安全标准,AUTOSAR 定义了一套完整的解决方案,确保软件层面能够满足 ASIL ( Automotive Safety Integrity Level)等级的要求[^4]。 --- ### AUTOSAR 软件架构详解 AUTOSAR 的软件架构采用了分层设计理念,主要包括以下几个层次: 1. **Application Layer** 应用层由多个 SWC 组成,每个 SWC 表示一个独立的功能模块。SWC 可以与其他 SWC 或外部设备通信,并支持多种接口类型(如 S/R 接口和 C/S 接口)。这种模块化的结构增强了系统的灵活性和可维护性[^5]。 2. **Runtime Environment (RTE)** RTE 层位于应用层和基础软件之间,负责协调不同 SWC 之间的交互行为。它屏蔽了下层硬件细节,使上层应用程序具备更高的抽象程度。 3. **Basic Software Modules (BSW)** 基础软件模块包含了操作系统、驱动程序以及其他通用服务函数。它们共同构成了车辆网络的基础框架,保障了整个系统的稳定运行。 4. **Complex Drivers and ECUs Interfaces** 复杂驱动器和 ECU 接口主要用于处理特定传感器或执行机构的数据传输任务,在 CP 平台中尤为常见。 --- ### 示例代码展示 SWC 的基本实现方式 以下是一个简单的 SWC 数据交换逻辑演示,假设我们有两个 SWC 分别发送和接收信号值 `temperature`: ```c // Sender SWC Code Example void SendTemperature(void) { int temperature = GetSensorValue(); // 获取温度传感器读数 Rte_Write_TemperatureOut(temperature); // 将数据写入端口 TemperatureOut } // Receiver SWC Code Example int ReceiveTemperature(void) { int receivedTemp; Rte_Read_TemperatureIn(&receivedTemp); // 从端口 TemperatureIn 中获取数据 ProcessData(receivedTemp); // 对接收到的数据进一步处理 } ``` 上述代码片段展示了如何利用 AUTOSAR 的 S/R 类型接口完成跨 SWC 的数据传递。 ---
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老灰╮(╯-╰)╭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值