主要内容

自动 AUTOSAR 数据类型生成

当您为 AUTOSAR 组件模型生成符合 AUTOSAR 标准的 C 代码时,Embedded Coder® 会在代码中生成 AUTOSAR 平台数据类型。AUTOSAR 类型生成允许您为顶层模型、引用模型和共享实用工具生成 AUTOSAR 平台数据类型,而无需配置 Simulink® 数据类型替换。

AUTOSAR 标准定义 AUTOSAR 软件组件使用的平台数据类型。在 Simulink 中,您可以对元素(如数据元素、操作参量、标定参数、测量变量和可运行实体间变量)中使用的 AUTOSAR 数据类型进行建模。要对 AUTOSAR 数据类型进行建模,请使用对应的 Simulink 内置数据类型。有关详细信息,请参阅Model AUTOSAR Data Types

当您编译 AUTOSAR 模型时,C 代码生成会将 Simulink 数据类型替换为对应的 AUTOSAR 平台数据类型。下表显示对应的 Simulink 和 AUTOSAR 数据类型:

Simulink 数据类型AUTOSAR 4.x 平台类型
booleanboolean
singlefloat32
doublefloat64
int8sint8
int16sint16
int32sint32
int64sint64
uint8uint8
uint16uint16
uint32uint32
uint64uint64

您可以在 AUTOSAR 字典的 XML 选项中配置 AUTOSAR 平台类型打包和命名行为的各个方面。有关详细信息,请参阅AUTOSAR Platform Types

例如,假设您创建一个包含 Gain 和 Delay 模块的简单 AUTOSAR 模型,并将 Gain 模块参数输出数据类型设置为 int8。当您生成代码时,符合 AUTOSAR 标准的 C 代码会引用 AUTOSAR 数据类型 sint8,而不是 Simulink 数据类型 int8

void Runnable_Step(void)
{
  sint8 rtb_Delay;
  ...

  simple_DW.Delay_DSTATE[1] = (sint8)-rtb_Delay;
}

另请参阅

主题