查看: 454|回复: 3|关注: 0

[已解决] function caller怎么设置输入参数为bus类型

[复制链接]

新手

10 麦片

财富积分


050


7

主题

15

帖子

0

最佳答案
Bus:RANG_Protect_Param定义如下
1.png
在设置成如下图所示的情况时,报错
2.png
在不填写输入参数的时候也报错
3.png
请问要怎么修改才能在function caller中输入bus类型数据呢?

回复主题 已获打赏: 0 积分

举报

论坛优秀回答者

32

主题

1638

帖子

104

最佳答案
QQ
  • 关注者: 543
发表于 2020-9-7 23:04:45 | 显示全部楼层 |此回复为最佳答案
帮助文档里有这么一段:
Input Argument Specification for Bus Data Type
Create a bus with two signals, and then specify the Input argument specification parameter for a Function Caller block. The Function Caller block calls a Simulink Function block that accepts the bus as input.

A bus input to a Function Caller block must be a non-virtual bus using a bus object.

Create a Simulink® bus object myBus.

myBus = Simulink.Bus;
Add elements A and B.

myBus.Elements(1).Name = 'A';
myBus.Elements(2).Name = 'B';
Create a MATLAB structure myBus_MATLABstruct with fields A and B.

myBus_MATLABStruct.A = 0;
myBus_MATLABStruct.B = 0;
Create a Simulink parameter object myBus_parameter and assign the MATLAB structure to the Value parameter.

myBus_parameter = Simulink.Parameter;
myBus_parameter.DataType = 'Bus: myBus';
myBus_parameter.Value = myBus_MATLABStruct;

For the Function Caller block dialog box, set the Input argument specification parameter to myBus_parameter.

For the Argument In block dialog box of the Simulink Function block, set the Data type parameter to Bus: myBus.
纸上得来终觉浅,绝知此事要躬行。
微信公众号:基于模型的设计
回复此楼 已获打赏: 0 积分

举报

新手

10 麦片

财富积分


050


7

主题

15

帖子

0

最佳答案
 楼主| 发表于 2020-9-8 20:42:02 | 显示全部楼层
老胡 发表于 2020-9-7 23:04
帮助文档里有这么一段:
Input Argument Specification for Bus Data Type
Create a bus with two signals, ...

非常感谢您的回答。
按图中方式配置,可以正常生成代码了。

但是我还是有点疑问,为什么Input argument specifications不能填myBus(1)呢?myBus是总线类型,myBus_parameter是myBus类型的参数,例子里面的int8(1)不就是填写的数据类型吗?
当我有三个myBus类型的数据需要经过function caller,有没有必要创建myBus_parameter1,myBus_parameter2,然后在三个function caller的Input argument specifications中分别填写myBus_parameter(1),myBus_parameter1(1),myBus_parameter2(1)呢?

回复此楼 已获打赏: 0 积分

举报

新手

10 麦片

财富积分


050


7

主题

15

帖子

0

最佳答案
 楼主| 发表于 2020-9-8 20:44:02 | 显示全部楼层
附两张图
1.png 2.png
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /5 下一条

快速回复 返回顶部 返回列表