【AUTOSAR-COM-BswM】-1.2-Frame_Message_CAN_ID变周期Periodic发送--BswM实现

本文档详细介绍了如何通过AUTOSAR的BswM模块配置,实现CAN Frame在不同周期(如1000ms和100ms)之间的切换。内容包括Transmission Mode概述、准备工作(确认Arxml参数配置)、BswM模块配置步骤(创建Mode Declaration Group, Notification Port, Expression, Action, Action Lists和Rules)以及测试和配置效果。" 122533411,11592737,C语言考研:指针详解,"['C语言', '编程基础', '内存管理']

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

项目案例背景(通过BswM):共20页

  • 实现CAN Frame(Ipdu,CAN ID,CAN Message)在不同周期(1000ms和100ms)之间切换。
  • APP层有条件的控制CAN Frame(Ipdu,CAN ID,CAN Message)发送:禁止发送;正常发送。

在《AUTOSAR-COM-1-Frame/Message/CAN_ID变周期Periodic发送--API实现》中,我们介绍了手动调用API来实现CAN Frame(Ipdu,CAN ID,CAN Message)在不同周期(1000ms和100ms)之间切换。下面我们讲讲通过BswM模块配置实现这个“变周期”效果。

目录

1 Transmission Mode概述

2 准备工作

3 BswM模块配置 

 3.1 创建Mode Declaration Group

 3.2 创建Mode Notification Port

 3.3 创建Expression

 3.4 创建Action

 3.5 创建Action Lists

 3.6 创建Rules

 4 Davinci Develop中配置

### AUTOSAR 启动流程与配置方法 #### 一、AUTOSAR 启动流程概述 AUTOSAR(汽车开放系统架构)的启动流程涉及多个模块之间的协作,主要包括硬件抽象层 (HAL) 初始化、基础软件模块 (BSW) 初始化以及操作系统 (OS) 的启动。以下是基于经典 AUTOSAR 架构的核心启动阶段: 1. **Bootloader 执行** Bootloader 是第一个运行的程序,负责加载初始代码并将其传递给主应用程序入口点 `Main()` 函数[^1]。 2. **Main() 函数调用 Ecum_Init()** 在进入 Main() 函数后,会立即调用 EcuM(ECU 管理模块)的初始化函数 `Ecum_Init()`。该函数分为两个主要阶段:`ZERO` 和 `ONE`。这两个阶段分别完成低级外设和高级功能的初始化工作,并最终触发 OS 的启动。 3. **操作系统启动** 当 OS 被成功启动后,控制权由 RTOS 接管,此时任务调度开始生效。通常情况下,一个名为 `StartupTwo_Task` 的任务会被激活,用于继续后续的 BSW 层初始化操作。 4. **EcuM_StartupTwo() 调用 BSWM 初始化** 在 `StartupTwo_Task` 中进一步调用了 `EcuM_StartupTwo()` 函数,这一步骤主要用于完成剩余的基础软件模块初始化,特别是行为状态管理器 (BSWM),从而实现整个系统的完全可用性。 --- #### 二、AUTOSAR 配置方法详解 为了使 AUTOSAR 系统能够按照预期运作,需要对其进行详细的配置。以下是一些关键环节及其具体实施方式: 1. **DEM 模块配置** DEM(诊断事件管理器)作为 AUTOSAR 核心组成部分之一,在车辆诊断过程中扮演重要角色。通过阅读相关技术文档[^2],可以了解到其完整的配置流程包括但不限于以下几个方面: - 定义诊断事件及其关联条件; - 设置存储策略以决定何时保存特定类型的错误信息; - 明确与其他子系统之间通信接口的标准协议; 2. **MCU 初始设置与测试** MCU 即微控制器单元,它是电子控制系统的心脏部分。在其基本参数设定完毕之后可以通过编写简单的实验脚本来检验实际效果,比如确认能否顺利进入待机模式等功能特性^。 3. **生成与集成 BSW 代码** 使用工具链自动生成符合规范要求的基础软件组件源码文件,并妥善安排它们在整个项目结构内的位置关系以便于后期维护升级等工作开展^。 --- ```c // 示例:简单演示如何定义一个典型的 AUTOSAR 应用程序框架下的周期型任务 void PeriodicTask(void){ // 实现具体的业务逻辑... } ``` ---
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

汽车电子助手

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

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

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

打赏作者

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

抵扣说明:

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

余额充值