首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Simulink中声明数组

在Simulink中声明数组
EN

Stack Overflow用户
提问于 2018-01-31 15:58:00
回答 1查看 1.1K关注 0票数 0

我在Simulink上有一个函数,它根据一个数字将一个输入变量复制到一个输出中(比如DEMUX,但可以选择)。

代码语言:javascript
复制
function [device,Var_RX1, Var_RX2, Var_RX3, Var_RX4, Var_RX5, Var_RX6, Var_RX7, Var_RX8, Var_RX9, Var_RX10]  = fcn(device, Var_RX)
Var_RX1 = zeros(50,1,'single');
Var_RX2 = zeros(50,1,'single');
Var_RX3 = zeros(50,1,'single');
Var_RX4 = zeros(50,1,'single');
Var_RX5 = zeros(50,1,'single');
Var_RX6 = zeros(50,1,'single');
Var_RX7 = zeros(50,1,'single');
Var_RX8 = zeros(50,1,'single');
Var_RX9 = zeros(50,1,'single');
Var_RX10 = zeros(50,1,'single');    
    if (device == 1)
        Var_RX1 = Var_RX;
    elseif (device == 2)
        Var_RX2 = Var_RX;
    elseif (device == 3)
        Var_RX3 = Var_RX;
    elseif (device == 4)
        Var_RX4 = Var_RX;
    elseif (device == 5)
        Var_RX5 = Var_RX;
    elseif (device == 6)
        Var_RX6 = Var_RX;
    elseif (device == 7)
        Var_RX7 = Var_RX;
    elseif (device == 8)
        Var_RX8 = Var_RX;
    elseif (device == 9)
        Var_RX9 = Var_RX;
    elseif (device == 10)
        Var_RX10 = Var_RX;
    end
end

问题是,当函数被调用时,我必须将变量(Var_RX)声明为零,否则会出现以下问题:

在某些执行路径上没有分配输出参数'Var_RX1‘。

是否有方法将这些数组声明为此函数的输出,并在程序开始时启动值?

编辑:我没有解释为什么我不希望零出现。问题是,当函数第二次执行时,在读取之前存储在任何变量上的值被替换为零。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-31 17:52:37

我用simulink解决了我的问题-如果是块,那么这个值并不是每次读/写都会被替换。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48546328

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档