d9e5a92d

Блок переключателя Switch Case


Назначение:

Обеспечивает формирование управляющих сигналов для подсистем Case Action Subsystem. Блок является аналогом оператора Switch языка программирования C.

 

Параметры:

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

 

Например, выражение {1,[7,9]} задает два выходных Case порта.

На первом из них управляющий сигнал формируется, если входной сигнал блока равен 1, а на втором, – если входной сигнал равен 7 или 9. В выражении Case conditions можно использовать также диапазоны значений. Например, выражение {1:5} определяет, что для единственного выходного Case-порта выходной сигал будет вырабатываться, если входной сигнал блока равен 1, 2, 3, 4 или 5.

 

Show default case (флажок) – Показать default case-порт. На выходе default case-порта формируется управляющий сигнал, если входной сигнал блока не совпадает ни с одним значением, перечисленным в списке Case conditions.

 

На рисунке 9.9.8 показан пример использования блока Switch Case совместно с подсистемами Switch Case Action Subsystem. В примере первая подсистема пропускает через себя входной сигнал, если входной сигал блока Switch Case равен 1, вторая – если входной сигнал равен –1 (минус один), и третья – если входной сигнал не равен ни -1 ни +1.

С-код, соответствующий алгоритму работы блока Switch Case в приведенном примере выглядит следующим образом:

 

switch (u1) { case 1: Switch Case Action Subsystem 1; break; case -1:

Switch Case Action Subsystem 2; break; default: Switch Case Action Subsystem 3; }

 

 





Содержание раздела