我的模型中有一个2D矩阵/数组,如图所示。我需要能够随机索引/访问它并将其作为信号传递。我该怎么做?
我不能使用From File块,因为我的嵌入式设计强制存储的容量是双倍和太大。
似乎没有我可以使用From Workspace块...因为这个数组在我的模型中被定义为SoundArray。
这看起来应该很简单,但我无法弄清楚。我能想到的唯一方法是使用自定义C代码......我不想这样做。
由于
答案 0 :(得分:0)
如果matlab功能块(以前称为EML块)位于“参数”范围中并且您在功能块中定义了参数输入,则它可以获取模型工作区数据。然后,您可以使用其他输入来控制随机访问,然后将所需位置作为Matlab功能块的信号输出返回。
function y = fcn(i,j,soundArray)
y = soundArray(i,j);
(其中soundArray定义为参数,i和j是输入)
编辑: 或者定义数据存储内存(添加定义块)。然后为该存储器放置一个数据存储读取块,该块被路由到具有2维的选择器块和这两个维度的“起始索引(端口)”。 我相信您可以使用Model Workspace数据初始化数据存储内存,但我不认为模拟工作区数据在模拟过程中是“实时”的。