文档

使用枚举来控制LED显示

这个例子展示了如何使用枚举MATLAB函数块。这个例子显示了如何MATLAB函数块枚举数据交换与其他仿真软件金宝app®块。

emldemo_led_switch模型使用枚举来表示模式的一种设备,控制LED显示的颜色。的MATLAB函数块接收枚举输入信号表示模式。枚举的输出信号代表了LED显示屏的颜色。

金宝app模型

打开模型,在命令提示符,输入:

emldemo_led_switch

表中列出的模型包含块。

金宝app仿真软件块 描述

一步

提供开/关信号的来源。输出一个初始值为0(关闭)和10秒值的步骤1(上)。

数据类型转换int32

转换一步信号的类型输入int32

数据类型转换int32枚举类型switchmode

转换的值类型int32枚举类型switchmode

数据类型转换块参数有这些设置:

  • 输出最小:[]

  • 输出最大:[]

  • 输出数据类型:枚举:switchmode

MATLAB函数利用checkState

评估枚举输入状态确定枚举的值输出ledval状态继承它的枚举类型switchmode从信号模型的一步。金宝appledval有类型枚举:领导

显示

显示的值ledval

枚举类定义

switchmode枚举表示允许的输入模式利用checkstate块。

classdefswitchmode < 金宝appSimulink.IntEnumType枚举(0)(1)结束结束

领导枚举代表的颜色利用checkstate块可以输出。

classdef< Simu金宝applink.IntEnumType领导枚举绿(1),红(8)结束结束
枚举类继承与内置类型金宝appSimulink.IntEnumType和驻留在MATLAB®路径。

MATLAB函数块功能

这个函数利用checkState使用枚举来激活一个LED显示,根据设备的状态。这灯绿色LED显示屏显示状态。这灯一个红色LED显示屏显示离开状态。

函数ledval =利用checkState(状态)% # codegen如果= = switchmode状态。在ledval = led.GREEN;其他的ledval = led.RED;结束

模拟

当你模拟模型显示块LED显示屏的显示状态。如果你模拟模型不到10秒钟,国家取消了。显示块显示红色的。如果你模拟模型超过10秒,状态。的显示块显示绿色

相关的话题