默认的行为
今天我将向你展示如何使用
嵌入式编码器
™在生成的代码中保留参数表达式。
我们来看Guy模型中使用变量的部分
区域
(我稍后会解释为什么我省略了斜边):
在哪里
区域
使用以下代码创建:
a = 万博1manbetxSimulink.Parameter(3);
b = 万博1manbetxSimulink.Parameter(4);
area = 万博1manbetxSimulink。参数(slexpr(“(a *) * 0.5”));
指定存储类来保存表达式
Embedded Coder可以通过做两个更改来保留生成代码中的数学表达式:
- 为一个而且b改变存储类来定义
- 为区域,设置存储类为ExportedGlobal
我喜欢用
代码映射编辑器
(ctrl+shift+C),因为我可以用ctrl+click批量编辑代码生成设置:
然后在代码中,
区域
将显示为可调参数:
定义是
区域
包含数学表达式:
因为我用了
定义
的存储类
一个
而且
b
,它们在模型头文件中显示为宏:
这些并不是您可以使用的惟一存储类。一般规则是:
在我的例子中,我省略了斜边(
√b ^ ^ 2 + 2)
参数,因为只支持某些数学表达式,而且斜边的计算有两个不支持的部分万博1manbetx
sqrt ()
功能和
^
操作符
现在轮到你了
我们知道这个功能有很多
限制
并且只支万博1manbetx持
有限的操作集
.我们正在考虑增加对更多操作的支持,并消除其中一些限制万博1manbetx。如果您对该功能感兴趣,但受到限制,请在下面的评论中告诉我们,以帮助我们确定优先级。
评论
如欲留言,请点击在这里登录到您的MathWorks帐户或创建一个新帐户。