主要内容

配置数据接口

嵌入式编码器®减少了配置和功能接口的数据工作提供一种方式来指定类别的默认配置的数据元素和功能在一个模型。应用默认配置可以节省时间和减少引入错误代码的风险,特别是对于较大的模型和模型的生成多实例代码。应用默认配置之后,可以有选择地覆盖默认设置单个数据元素和功能。

定制的数据接口模型RollAxisAutopilot通过配置功能RollAxisAutopilot_step:

  • 读取输入数据从外部文件中定义的全局变量声明和roll_input_data.hroll_input_data.c

  • 输出数据写入代码生成器声明的全局变量output_data.h和定义output_data.c

变化,在当前的MATLAB使用这些外部代码文件®工作文件夹。

  • roll_input_data.c

  • roll_input_data.h

  • roll_heading_mode.c

  • roll_heading_mode.h

你做依靠的数据接口配置更改这些文件被访问的代码生成和构建过程。构建过程编译生成的代码的代码在这些文件。

配置默认代码生成数据

港口和外港配置默认代码生成配置模型。

  1. C代码选项卡上,选择代码接口>默认的代码映射

  2. 模型的根级别的配置尺寸块出现在生成的代码作为单独的全局变量定义为外部代码。在代码映射编辑器中,港口和外港,选择类别港口。设置默认存储类ImportFromFile

    这个设置,生成的代码没有定义全局变量表示尺寸数据。相反,一个# include语句包含一个头文件,声明的输入变量。您指定的名称与属性检查器头文件。

  3. 单击图标来配置额外的代码映射属性图标和设置HeaderFileroll_input_data.h

  4. ,看看走读生在外部头文件声明roll_input_data.h名字输入变量,在MATLAB命令窗口,打开roll_input_data.h在你当前的工作目录。

    走读生boolean_T AP_Eng;走读生real32_T HDG_Ref;走读生real32_T Rate_FB;走读生real32_Tφ;走读生real32_T Psi;走读生real32_T助教;走读生real32_T Turn_Knob;
  5. 为全局变量配置代码生成的命名规则。默认情况下,代码生成器全局变量名称的前缀rt。代码生成器生成的代码相匹配的外部变量声明roll_input_data.h,配置相应的代码生成全局变量的命名规则。

    1. 打开模型配置参数对话框。在将来发布,C代码选项卡上,单击设置

    2. 导航到代码生成>标识符窗格。

    3. 设置参数全局变量的命名规则N M美元(删除rt前缀)。令牌$ N代表模型中数据元素的名称,例如,轮廓尺寸的名称或输出港。令牌M美元代表名称改编的文本代码生成器插入,如果有必要,避免与其他代码中的全局变量名称冲突。

    4. 应用更改。

  6. 配置外港块模型的根级别出现在生成的代码作为单独的全局变量。在代码映射编辑器中,在数据默认值选项卡,为类别外港,设置存储类ExportToFile

    生成的代码声明并定义头文件和定义文件的输出变量指定属性检查器。

  7. 单击图标来配置额外的代码映射属性图标和设置HeaderFileroll_output_data.hDefinitionFileroll_output_data.c

  8. 配置模型的代码生成包括外部源文件roll_input_data.croll_heading_mode.c。在配置参数对话框中,设置代码生成>自定义代码>代码信息>源文件roll_input_data.croll_heading_mode.c。然后,单击应用好吧

  9. 保存模型。重新生成代码,点击构建

    一个编译错误表明变量HDG_Mode不是宣布。这个变量不是在头文件中声明roll_input_data.h,您声明为港口的默认头文件。你修复这个错误在本教程的下一节。

    模型配置为打开代码生成代码生成完成后报告。这份报告窗口最小化勘探后在本教程中。

  10. 你配置轮廓尺寸块使用外部头文件声明和定义输入变量。在代码视图中,确认生成的代码包括通过搜索这个外部头文件roll_input_data.h

  11. 寻找根水平轮廓尺寸块名称,HDG_Ref。类型,选择绿色的搜索建议V图标。这个搜索建议发现的实例HDG_Ref作为一个变量在生成的代码中。确认HDG_Ref被定义为一个单独的全局变量。

  12. 在模型中,RollAxisAutopilot,单击外港Ail_Cmd。将您的鼠标停留在省略号块上方菜单并单击导航到代码。在代码视图强调代码RollAxisAutopilot.c相对应的块。在代码中,将您的鼠标停留在输出变量Ail_Cmd。可追溯性对话框显示变量定义。确认的对话框Ail_Cmd被定义为一个单独的全局变量。单击定义代码的定义roll_output_data.c

覆盖默认设置为单个数据元素

你选择一个类别下的设置数据默认值适用于在一个模型元素的类别。覆盖默认设置为单个数据元素,使用映射编辑器的代码。

当你为港口和外港配置默认设置后生成的代码,编译器错误表明变量HDG_Mode不是宣布。你可以修复错误通过重写默认配置尺寸块HDG_Mode

  1. 在代码映射编辑器中,在港口选项卡上,选择源HDG_Mode

  2. 存储类ImportFromFile

  3. 单击图标来配置额外的代码映射属性图标和设置标识符HDG_Mode头文件roll_heading_mode.h

    基于这些设置,代码生成器导入声明外部变量HDG_Mode的头文件roll_heading_mode.h

    走读生boolean_T HDG_Mode;
  4. 保存模型和重新生成代码。

    最小化窗口代码生成报告探索后在本教程中。

  5. 在代码视图中,搜索roll_heading_mode.h并确认它是包括在生成的代码中使用默认配置文件roll_input_data.h

  6. 搜索HDG_Mode并确认它被定义为一个单独的全局变量。

接下来,配置一个模型参数生成的代码是一个全局变量。作为一个全局变量,您可以在运行时调整参数值。