typedef struct {unsigned int p1: 1;unsigned int p2: 1;unsigned int p3: 1;}my_struct_type
1。打开示例模型ex_struct_bitfield_CSC
。该模型包含三个常数阻塞和三个输出港。
2。打开模型数据编辑器。在建模选项卡上,单击模型数据编辑器。
3所示。在模型数据编辑器中,在参数选项卡,价值列,观察到第一固定块的价值p1
。旁边的参数值,点击操作按钮(按钮有三个垂直点)和选择创建。
4所示。在创建新的数据对话框中,设置价值来万博1manbetxSimulink.Parameter(假)
。点击创建。一个万博1manbetxSimulink.Parameter
对象,p1
,出现在工作区中。对象存储一个布尔值,假
,使用的数据类型布尔
。
5。在万博1manbetxSimulink.Parameter
属性对话框中,单击好吧。
6。使用模型数据编辑器配置其他常数块引用新的参数对象命名p2
和p3
。
7所示。打开嵌入式编码器应用程序。
8。在C代码选项卡上,选择代码接口>单个元素的代码映射。
9。在代码映射编辑器中,在参数选项卡上,单击更新代码的映射按钮。
10。使用存储类列应用存储类设置
所有参数对象。
10。在属性检查器,上交所结构体名称列配置每个对象使用相同的结构类型,my_struct
。
11。从模型中生成代码。
生成的头文件ex_struct_bitfield_CSC.h
定义了结构类型my_struct_type
。
/ *自定义存储类类型定义:设置* / typedef struct myStruct_tag {uint_T p1: 1;/ *引用:“< Root > / Constant1”* / uint_T p2: 1;/ *引用:“< Root > / Constant2”* / uint_T p3: 1;/ *引用:“< Root > / Constant3”* /} myStruct_type;
生成的源文件ex_struct_bitfield_CSC.c
定义并初始化变量结构my_struct
。
/ *定义自定义存储类:设置* / myStruct_type myStruct = {/ * p1 * / 0 / * p2 0 * /, / * p3 * / 0};