Чтобы улучшить удобочитаемость графика Stateflow®, используйте enumerated data. С перечислимыми данными вы можете:
Создайте ограниченное множество значений и обратитесь к тем значениям по наименованию.
Связанные с группой значения в отдельные типы данных.
Постарайтесь не задавать длинный список констант.
Перечислимые данные поддерживаются в диаграммах Stateflow в моделях Simulink®.
Перечислимый тип данных является конечным набором перечисляемых значений, состоящих из имени и базового целочисленного значения. Например, этот график использует перечисленные данные, чтобы относиться к набору цветов.

Перечислимые данные output ограничивается конечным множеством значений. Можно обратиться к этим значениям их именами: Red, Yellow, и Green.
| EnumeratedValue | Имя | Целочисленное значение |
|---|---|---|
Red(0) | Red | 0 |
Yellow(1) | Yellow | 1 |
Green(2) | Green | 2 |
Этот файл MATLAB® задает перечислимый тип данных BasicColors ссылаемый графиком.
classdef BasicColors < Simulink.IntEnumType enumeration Red(0) Yellow(1) Green(2) end end
Перечислимый тип данных не функционирует как числовой тип несмотря на существование базовых целочисленных значений. Вы не можете использовать перечисляемые значения непосредственно в математическом вычислении. Можно использовать перечисленные данные для поведения диаграммы управления на основе присвоений и сравнений. Чтобы присвоить или сравнить перечисленные данные, используйте операции, перечисленные в этой таблице.
| Пример | Описание |
|---|---|
| Присвоение |
| Сравнение, равенство. |
| Сравнение, неравенство. |
В графике, который использует C в качестве языка действия, можно сравнить перечисленные данные с различными типами данных. Перед сравнением график бросает перечислимые данные к их базовым целочисленным значениям.
Графики, которые используют MATLAB в качестве языка действия, не могут сравнить перечисленные данные с различными типами данных.
Чтобы относиться к перечисляемому значению, используйте снабженные префиксом или неснабженные префиксом идентификаторы.
Чтобы предотвратить конфликты по совпадению имен при обращении к перечисляемым значениям в диаграммах Stateflow, можно использовать снабженные префиксом идентификаторы формы TypeИмяВвод перечислимый тип данных и Name имя перечисляемого значения. Например, предположите, что вы задаете три типа данных (Colors, Temp, и Code) это содержит перечислимое имя Red. При помощи снабженного префиксом обозначения можно отличить Colors.Red от Temp.Red и Code.Red.
Чтобы минимизировать длину идентификатора при обращении к уникальным перечисляемым значениям, можно использовать неснабженные префиксом имена перечисляемого значения. Например, предположите что перечислимое имя Red принадлежит только типу данных Colors. Можно затем отослать к этому значению с неснабженным префиксом идентификатором Red.
Если ваш график использует типы данных, которые содержат идентичные перечислимые имена (такие как Colors.Red и Temp.Red), используйте снабженные префиксом идентификаторы, чтобы предотвратить конфликты по совпадению имен.
Используйте перечисленные данные на этих уровнях иерархии Stateflow:
График
Субдиаграмма
Состояние
Используйте перечисленные данные в качестве аргументов для:
Состояния активности
Условие и действия перехода
Вектор и индексирование матриц
Функции MATLAB
Графические функции
Функции Simulink
Блоки Таблицы истинности и функции таблицы истинности
Если вам установили Simulink Coder™, можно использовать перечисленные данные для симуляции и генерации кода.