Переключите случай

Выберите выполнение подсистемы с помощью логики, подобной оператору switch

  • Библиотека:
  • Simulink / Ports & Subsystems

Описание

Блок Switch Case с блоками Subsystem Действия Случая Переключателя, содержащими Блокировки порта Действия, реализует логика переключения, чтобы управлять выполнением подсистемы.

Блок Switch Case имеет один вход. Чтобы выбрать случай, задайте входное значение с помощью параметра Case conditions. Случаи оценены верхняя часть вниз начиная с первого случая.

Каждый случай сопоставлен с выходным портом, который присоединен к блоку Subsystem Действия Случая Переключателя. Когда случай выбран, связанный выходной порт отправляет сигнал действия выполнить подсистему.

Случай default выбран после того, как все другие условия случая оценивают ко лжи. Обеспечение случая default является дополнительным, даже если другие условия случая не исчерпывают каждое возможное входное значение.

Случаи для блока Switch Case содержат подразумеваемый пропуск после того, как блок Subsystem Действия Случая Переключателя будет выполняться. Поэтому существует, не проваливаются поведение для блока Simulink® Switch Case, как найдено в стандартных операторах C switch.

Порты

Входной параметр

развернуть все

Вход к порту маркировал u1 блока Switch Case, может быть:

  • Скалярное значение со встроенным типом данных, который поддерживает Simulink. Однако блок Switch Case не поддерживает булевскую переменную или типы данных с фиксированной точкой, и это обрезает числовые входные параметры до 32-битных целых чисел со знаком.

  • Скалярное значение любого перечислимого типа данных.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | enumerated

Вывод

развернуть все

Вывод от портов Case и default является сигналами действия, соединенными с блоками Subsystem Действия Случая Переключателя.

Параметры

развернуть все

Задайте значения случаев с помощью добавления комментария к ячейке MATLAB®.

{1}

Задайте выходной порт маркированный case[1] выходные параметры сигнал действия, когда значением входного порта будет 1.

список портов с передачей производства по делу

Задайте несколько использований случаев и портов добавление комментария к ячейке MATLAB. Например, ввод {1,[7,9,4]} указывает, что выходной порт, case[1] запущен, когда входным значением является 1 и выходной порт case [7 9 4], запущен, когда входным значением является 7, 9 или 4.

Можно использовать обозначение двоеточия, чтобы задать область значений целочисленных условий случая. Например, ввод {[1:5]} указывает, что выходной порт, case[1 2 3 4 5] запущен, когда входным значением является 1, 2, 3, 4 или 5.

В зависимости от размера блока случаи из длинного списка условий случая отображены в сокращенной форме на поверхности блока Switch Case, с помощью останавливающегося знака (...).

Можно использовать функцию enumeration, чтобы задать условия случая, которые включают случай для каждого значения в перечислимом типе.

Программируемое использование

Параметры блоков: CaseConditions
Ввод: символьный вектор
Значения: '{1}' | '<list of cases>'
Значение по умолчанию: '{1}'

Управляйте отображением выходного порта по умолчанию.

'off'

Скройте выходной порт по умолчанию.

на

Отобразите выходной порт по умолчанию как последний случай на блоке Switch Case. Это позволяет вам задавать случай по умолчанию, который выполняется, когда входное значение не совпадает ни с одним из других значений случая.

Программируемое использование

Параметры блоков: ShowDefaultCase
Ввод: символьный вектор
Значения: 'off' | 'on'
Значение по умолчанию: 'off'

Управляйте обнаружением пересечения нулем.

на

Обнаружьте нулевые пересечения.

'off'

Не обнаруживайте нулевые пересечения.

Программируемое использование

Параметры блоков: ZeroCross
Ввод: символьный вектор
Значения: 'on' | 'off'
Значение по умолчанию: 'on'

Характеристики блока

Типы данных

double | enumerated | integer | single

Прямое сквозное соединение

yes

Многомерные сигналы

no

Сигналы переменного размера

no

Обнаружение пересечения нулем

yes

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Представлено до R2006a

Для просмотра документации необходимо авторизоваться на сайте