2:07视频长度为2:07。
使用状态流为MATLAB应用程序提供逻辑
在本视频中,我们使用状态流®图形化地设计状态机和定时逻辑,这对于用MATLAB创建的Lamp应用程序来说很难用文本实现®程序设计师。
您可以从MATLAB创建一个独立的状态图,该状态图存储为.sfx文件,并且可以实例化为MATLAB对象以供应用程序使用。
这个灯逻辑状态图是应用程序设计器创建的应用程序的一部分。
注意关闭状态的动画,表明它是活动的。关闭状态包含直接关闭灯的MATLAB代码,并禁用GUI中的模式和闪烁速度小部件。
当我们在GUI中打开灯时,打开事件被发送到状态流图,导致状态机离开关闭状态并进入打开状态。此状态有MATLAB代码来启用GUI中的模式和闪烁速度小部件。我们还可以看到子状态“solid”是活动的,并且包含打开灯的代码。
在这里,我们可以看到在App Designer中编写的代码,用于生成状态流图中使用的开启和关闭事件。
这盏灯有两种工作模式:固态,也就是现在的状态,以及闪烁。选择闪烁模式使灯开始闪烁。注意,闪烁状态内的开和关状态之间的转换一直在发生。这些状态下的MATLAB代码将打开和关闭GUI中的灯。
通过改变眨眼速度,我们可以减慢或加快转换之间的时间。由于使用了after关键字,这些转换基于自动生成的MATLAB计时器发生。
这个例子展示了如何将状态流程图用作App的一部分。然而,状态流程图可以在任何MATLAB程序中用于表示复杂的逻辑和状态机,而无需编写嵌套很深的if-else或switch-case语句。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。