当前位置: 首页 > news >正文

盖县网站开发网站建设服务器篇

盖县网站开发,网站建设服务器篇,河北建筑工程学院本科招生网官网,广州网站制作功能文章目录 前言 项目背景 en类型 du类型 ex类型 组合类型 分析和应用 总结 参考资料 前言 见《【研发日记】Matlab/Simulink技能解锁(六)——六种Simulink模型架构》 见《【研发日记】Matlab/Simulink技能解锁(七)——两种复数移相算法》 见《【研发日记】Matlab/Simul… 文章目录 前言 项目背景 en类型 du类型 ex类型 组合类型 分析和应用 总结 参考资料 前言 见《【研发日记】Matlab/Simulink技能解锁(六)——六种Simulink模型架构》 见《【研发日记】Matlab/Simulink技能解锁(七)——两种复数移相算法》 见《【研发日记】Matlab/Simulink技能解锁(八)——分布式仿真》 见《【研发日记】Matlab/Simulink技能解锁(九)——基于嵌入式处理器仿真》 见《【研发日记】Matlab/Simulink技能解锁(十)——PID调参技巧》 项目背景 近期在一个嵌入式项目中用到了Stateflow中的en、du和ex深究时遇到了一些疑惑查阅官方文档中的说明也没有完全理解。利用周末时间亲自摸索了一下把它们的一些基本规律和技巧总结下来。 官方文档中的说明如下 en类型 当程序跳转到某个State时进入该State后的第一个运行周期要执行的就是en后面的代码。如果程序在该State中连续停留多个运行周期那么第二个周期以及后面的周期都不会执行en后面的代码。如果程序从该State退出后再次进来那么跟前面第一次进来是一样的效果只在第一个运行周期要执行的就是en后面的代码。示例如下 与en作用类似的还有一个用法是跳转线上{}里边的执行代码。当程序经过一跟跳转线进入某个state时也是在第一个运行周期执行该代码示例如下 上述两种用法都能发挥相同的作用但是二者也有一些区别。当一个State有多根跳转进来的转换线时如果使用en那么不管从哪个方向进来都会执行相同的代码如果使用跳转线上的{}那么从不同方向进来就可以执行不同的代码。 du类型 当程序进入到某个State后要在该State中连续停留多个运行周期时那么从第二个周期开始以及后面的周期都会执行一次du后面的代码。如果程序从该State退出后再次进来那么跟前面第一次进来是一样的效果除了第一个运行周期不执行du后面都要执行du后面的代码。示例如下 与du作用类似的还有一个用法是增加一个无条件的跳转线优先级要最低。当程序不满足跳出当前state的条件时就会循环重复回到当前state那么这时候放在en后面的代码也会像du一样每个运行周期都执行一遍直到跳出该state示例如下 Tip1这次的示例中s2向s1的跳转条件没有使用after(5,tick)是因为这个函数的计数起点为进入当前State的第一个运行周期如果退出当前State计数就会清零本示例是循环重复进入s2计数一直达不到5次跳出的条件。 Tip2每个States的跳出转换线上的条件判断在每个运行周期都会查询查询的时间点是在当前State中的内容先执行完之后类似于do while()。如果条件符合发生了跳转是会暂时停在那个跳转线上等着下一个周期的时间到了才执行后面的State。 上述两种用法都能发挥相同的作用但是二者也有一些区别区别就在于进入State的第一个运行周期是否执行目标代码。因为在一些应用中是一样在代码的最前面执行一些初始化的准备工作的有的应用就不需要区别对待所以就可以根据应用的差异选择适合自己的Stateflow写法。 ex类型 当程序要从某个State中退出时退出后紧挨着的第一个运行周期就执行ex后面的代码而且只执行一次后续就跟这个State没有关系了。如果程序从该State退出后再次进来那么退出的时候跟前面是一样的效果在退出后紧挨着执行一次ex后面的代码。示例如下 与ex作用类似的还有一个用法是跳转线上{}里边的执行代码。当程序经过一根跳转线退出当前state时也是在退出后紧挨的第一个运行周期执行该代码示例如下 上述两种用法都能发挥相同的作用但是二者也有一些区别。当一个State有多根跳转出去的转换线时如果使用ex那么不管从哪个方向出去都会执行相同的代码如果使用跳转线上的{}那么从不同方向出去就可以执行不同的代码。 组合类型 前面分别介绍了en、du和ex的单独应用但是在一些应用中一个State需要同时使用其中的两个类型简单的方法就是把相同的代码分别在两种类型后面都写一遍。但是还有的应用是三种类型都要用上那么相同的代码写三遍就会显得很臃肿这里官方就提供了一种高效的组合使用方法示例如下 与上述组合用法作用类似的还有一个隐藏用法是直接在State里边不写任何en、du和ex这种用法就是默认的en和du组合。示例如下 上述两种用法都能发挥相同的作用但是二者也有一些细微区别。当一个State中的代码前面没有任何类型限定时虽然代码足够简洁但是代码的可读性也大大降低了适合于经验丰富的编程人员对于普通的程序员不太友好。 分析和应用 在使用Simulink开发软件时如果能熟练地使用Stateflow灵活和精准运用en、du、ex和跳转线就能给软件的复杂度降低非常多也能减少很多不必要的隐形Bug。 总结 以上就是本人在研发中使用Stateflow中的en、du、ex和跳转线时一些个人理解和分析的总结主要介绍了en、du、ex和跳转线的基本规律和技巧展示了仿真运行的效果并分析了它们的特点和适用场景。 后续还会分享另外几个最近解锁的Matlab/Simulink新技能欢迎评论区留言、点赞、收藏和关注这些鼓励和支持都将成文本人持续分享的动力。 另外上述例程使用的Demo工程可以到笔者的主页查找和下载。 参考资料 Mathworks Help - Stateflow 版权声明原创文章转载和引用请注明出处和链接侵权必究
http://www.dnsts.com.cn/news/120613.html

相关文章:

  • 怎么用虚拟主机做网站步骤网站怎样推广 优帮云
  • 招聘seo网站推广想自己做个网站怎么做
  • 企业门户网站建设 验收怎样可以提升自己的网站
  • 所以免费爱做网站互联网软件门户网站
  • 渭南做网站价格深汕特别合作区房价
  • 雄安做网站价格it外包服务网
  • 锦州网站建设市场网站开发设计内容
  • 长尾关键词挖掘站长工具php多语言网站怎么做
  • 做推广用的网站私企建筑公司排名
  • 网站建设的五大原则梅州新农村建设网站
  • 可以做产品推广的网站越南网站建设
  • 阿里云服务器上的网站怎么做修改做创意ppt网站
  • 重庆做网站建设找谁建立网站和新媒体信息发布制度
  • 石景山网站建设好的公司外贸出口流程12步骤图
  • 凡客网能直接做网站青岛网站建设找正信
  • 北京网站的建设软件公司 网站模板
  • 微信平台的微网站怎么做的深圳机房建设公司
  • 赣州建设局 网站wordpress 修改html代码
  • 营销型企业网站推广的方法有哪些怎么做app网站
  • 网站推广途径沈阳网站开发招聘
  • xxx美食网站建设规划书谷歌账号
  • 唐山石家庄做网站哪家好做网站是用什么语言做成的
  • 北京中小型网站建设wordpress有广告
  • 网站建设人员需求电子商务安全问题 网站权限
  • 南阳医疗网站建设公司商务网站建设论文总结
  • 番禺建设网站外包iis部署网站 asp 物理路径
  • 自己怎么做外贸网站空间网站建设加盟招商
  • 装修在线设计网站2007年怎么做网站
  • 个人网站注册步骤图解建设通查项目经理
  • 织梦免费企业模板网站最好的医疗网站建设