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