simulink将值传递给mask封装下的模块

参数提升

在这里插入图片描述
在这里插入图片描述
1.Mask-->Create Mask
在这里插入图片描述
2.Parameters & Dialog-->Promote,点击Promote两次
在这里插入图片描述
3. 出现两个变量,点击图中3所示。
在这里插入图片描述
4. 添加Promoted parameters
在这里插入图片描述
在这里插入图片描述
5. 更改参数属性Property editor-->Properties
在这里插入图片描述
在这里插入图片描述
6. 将#2更改为m
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
7. 点击ok
在这里插入图片描述
8. 回到主界面,双击Subsystem,即可更改参数m,b3,3
在这里插入图片描述
9. 运行仿真,查看输出
在这里插入图片描述

使用变量名称引用模块参数

在这里插入图片描述
1.s函数的代码:〔程序代码〕ch2example22Sfun.m
2. 双击ch2example22Sfun模块,输入参数如下图:
在这里插入图片描述
3. 在S-Function模块上右键,Mask-->Create mask
4. 在Parameters & Dialog界面,连续四次点击Edit,创建四个变量#1 #2 #3 #4
在这里插入图片描述
在这里插入图片描述
5. 更改四个变量的PromptName属性如下图,并点击ok结束设置
在这里插入图片描述
6. 回到主界面,双击模块,设置参数为2 10 1 0
在这里插入图片描述
7. Signal Generator设置参数为4 1
在这里插入图片描述
8. 运行仿真,查看示波器输出
在这里插入图片描述

参考链接

  1. Pass Values to Blocks Under the Mask
  2. MATLAB / SIMULINK通信系统建模与仿真实例分析--->第2章 Matlab/Simulink系统建模和仿真基础 --->2.4 用S-函数编写Simulink基本模块--->2.4.3.4 非线性系统模块--->2.4.3.4 非线性系统模块--->实例2.22