AutoSAR 学习笔记3:AutoSAR 接口

本文介绍了AutoSAR接口的概念,包括SWC和BSW模块间通过端口的通信,以及标准AutoSAR接口提供的预定义服务。同时,阐述了标准接口,即在AutoSAR规范中明确定义的API,主要用于同一ECU内部模块间通信。最后,文章列出了AutoSAR各层级软件模块的访问规则,强调了层级间的访问权限和限制。
摘要由CSDN通过智能技术生成

1 AutoSAR 接口(AutoSAR Interface)

AutoSAR 接口定义了 SWC 之间、BSW 模块之间以及 SWC 和 BSW 模块之间交互的信息。AutoSAR 接口通过 SWC 和/或 BSW 模块端口(Port)的形式实现。通过这些端口,SWC 和 BSW 模块之间实现了数据的收发和服务的调用。这些端口之间的通信既可以是本地的,也可以是通过通信网络实现的。 AutoSAR 接口传递的数据或提供的服务是标准中没有定义的,需要根据具体的应用场景进行设计。

2 标准 AutoSAR 接口(Standardized AutoSAR Interface)

标准 AutoSAR 接口指的是 AutoSAR 标准中对语法和语义有明确定义的 AutoSAR 接口(AutoSAR Interface)。主要的应用是定义 BSW 模块提供给 SWC 的标准 AutoSAR 服务。与 AotoSAR 接口(AutoSAR Interface)的不同指出在于标准 AutoSAR 接口(Standardized AutoSAR Interface)提供的服务在相关 BSW 模块的规范中给出了明确的定义。

3 标准接口(Standized Interface)

标准接口(Standardized Interface)是指 AutoSAR 标准各软件模块中明确定义的 API。例如,在 AutoSAR 规范 Specification of DIO Drive 中,为 DIO 模块定义了如下的 API。这些 API 就属于标准接口,如下:

标准接口主要用于在同一 ECU 内部的软件模块之间的通信。两个不在同一个 ECU 内且靠通信网络建立联系的软件模块之间不能采用标准接口进行通信。标准接口本质上是函数调用关系,不像 AutoSAR 接口(AutoSAR Interface)通过端口传递数据和服务。

4 AutoSAR 各层级软件模块间的访问规则

  1. 允许服务层(Service Layer)内部软件模块间的相互访问。
  2. 允许 ECU 抽象层(ECU Abstraction Layer)内部软件模块之间的相互访问。
  3. 允许复杂驱动(Complex Drives)访问其他 BSW 子模块。
  4. 允许顶层软件访问同功能组的下一层级软件模块的全部接口。例如 Memory Service 相关软件模块可以访问 Memory Hardware Abstraction 中所有软件模块的接口。
  5. 允许硬件抽象层(I/O HW Abstrction)访问除其同功能组内的 MCAL I/O Drivers 外的其他功能组 MCAL 驱动。例如 Communication Drivers。
  6. 允许所有软件层级的模块访问 System Service 相关模块。
  7. 禁止 MCAL 软件模块间的相互访问。
  8. 避免上层软件模块跨层级访问下层软件模块。例如禁止 Service Layer 中的软件模块跨过 ECU Abstraction Layer 直接访问 MCAL 的模块。
  9. 禁止上层软件模块跨越两级或以上访问下级软件。例如禁止 SWC 直接访问 MCAL 。
  10. 禁止上层软件模块跨过 MCAL 直接访问 MCU 硬件。
    如下图:
    在这里插入图片描述
    详细的访问规则,如下图:
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值