主要内容

使用枚举来控制LED显示

枚举在MATLAB函数块

这个例子展示了如何与其他仿真软件MATLAB函数块枚举数据交换®块。金宝app模型使用枚举来表示模式的一种设备,控制LED显示的颜色。MATLAB功能块接收枚举输入信号表示模式。枚举的输出信号代表了LED显示屏的颜色。

在这个模型中,一步块提供开/关的源信号。此块输出一个初始值为0(关闭),10秒后,步骤1(上)的价值。两个数据类型转换块转换这个信号,首先从类型输入int32,然后从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秒,状态。的显示块显示绿色

相关的话题