关于在simulink中开发一些硬件环境模型,有时候会碰到一些模块的执行先后顺序问题。比如说在一个通过UDP发送指令命令给客户端,要求发送的指令有先后的时间顺序,只有在前一条命令发送完以后,才可以进行下一条的命令发送。这时候会有一个问题,simulink是一个图形化的开发平台,他不像C、C++、JAVA那样是代码开发,它的模型开发过程中,没有一个执行的先后过程。在同一个模型下,所有在同一级的模块都默认是同时执行的(当然,执行过程中,由于运算的快慢,有的模块会抢先执行)。在代码开发程序执行过程中,总是按照源文件文本的先后顺序,从上到下执行代码,即代码源程序是默认时间执行顺序的。

那么,为了能够在simulink中顺序执行模块,我有两种思路:

第一种:根据模块的优先级顺序执行

在simulink中,每个模块都可以为其分配一个优先级,该优先级是一个从0开始的整数,优先级越低,其会先执行。这样可以保证执行顺序。

做法:在要分配执行优先级的模块上,右键单击,选择block property,在priority(优先级)中填写定义的优先级值。

注意:该优先级只在存在优先级值的模块之间发挥作用,对于没有优先级值的模块,不能保证有优先级值的模块运行一定比没有优先级值的模块快。

第二种:为每一个模块设置一个使能开关,只有当达到预定的值的时候,才让指定模块使能

可以利用变量分配模块,分配一个变量,专门用来指定哪一个模块执行。当一个模块执行完后,让该变量加1,达到下一个使能预定值,以进行下一个的指定模块运行,并同时禁用其他模块。

最新文章

  1. as3 中文转拼音
  2. [译]针对科学数据处理的统计学习教程(scikit-learn教程2)
  3. Beginning Android 4 中 Demo Basic/Switch 的问题.
  4. 数据库 基础篇2(mysql)
  5. java获取classpath文件路径空格转变成了转义字符%20的问题
  6. myeclipse6.5中使用Alt+/不自动提示的修改
  7. OpenStack 计算节点删除
  8. 升级IOS 9 和 XCode 7 引起的问题
  9. IOS 作业项目(4)步步完成 画图 程序(问题处理)终结
  10. Eclipse导入jre方法
  11. keil uVision4的安装以及KEIL_Lic.exe的注冊
  12. U11认识与学习bash
  13. 转:【Java集合源码剖析】LinkedHashmap源码剖析
  14. 大数据Hadoop学习之搭建Hadoop平台(2.1)
  15. SQL Server中是否可以准确获取最后一次索引重建的时间?
  16. (后端)出现org.hibernate.NonUniqueResultException的原因即解决办法
  17. MT【221】几个常用的多元恒等式
  18. JPA原理与实践、多数据源配置
  19. 你应该学会使用的5个ruby方法
  20. Numpy 利用数组进行数据处理

热门文章

  1. Entity Framework生成的SQL语句
  2. liunx查看端口使用情况
  3. Jquery 如何替换html字符串中标签属性值 ??
  4. StatefulWidget 有状态组件 、 页面上绑定数据、改变页面数据
  5. oracl ocp认证到底有没有用!!!
  6. Visual Studio 2010安装
  7. ubuntu 16.04 Chrome安装
  8. ping Hyper-V内虚拟机网络延迟
  9. 使用chrome自带的实时字幕功能
  10. 实践:Oracle 数据库基于 RMAN 备份至 腾讯云COS