Есть case structure с определённым количеством кейсов.
Каждый кейс содержит RS-trigger.
Структура управляется от Num control.
Вопрос:
Возможно ли осуществить Reset всех триггеров во всех кейсах одновременно.
Спасибо.
Case
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Case
Это одна из проблем использования реинтрантных FGV. Думаю напрямую не получится.
Я бы заменил то, что запоминается внутри RS Trigger, на массив в сдвиговом регистре. А из содержимого цикла RS Trigger сделал бы один прибор, который даже не должен быть реинтрантным.
Потом в зависимости от кейса, выбирал бы соответствующий элемент массива сдвиг. регистра и применял бы к нему тот созданный RS Trigger.
Может есть решение получше, но это первое, что пришло мне в голову.
Кстати что за RS Trigger? Где он находится? Я почти уверен, что он устроен как FGV, если нет то я ошибся в своём предположении.
Я бы заменил то, что запоминается внутри RS Trigger, на массив в сдвиговом регистре. А из содержимого цикла RS Trigger сделал бы один прибор, который даже не должен быть реинтрантным.
Потом в зависимости от кейса, выбирал бы соответствующий элемент массива сдвиг. регистра и применял бы к нему тот созданный RS Trigger.
Может есть решение получше, но это первое, что пришло мне в голову.
Кстати что за RS Trigger? Где он находится? Я почти уверен, что он устроен как FGV, если нет то я ошибся в своём предположении.
Re: Case
Триггер из интернета.eg писал(а): Кстати что за RS Trigger? Где он находится? Я почти уверен, что он устроен как FGV, если нет то я ошибся в своём предположении.
А что такое "реинтрантных FGV" ?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Case
FGV это функциональная глобальная переменная. Это прибор с циклом While и неициализированном сдвиг. регистром. Цикл при запуске прибора пробегает всего один раз, при этом производится какое то действие над содержимым сдвиг. регистра и в нём же запоминается, до следущего вызова прибора. А реинстрантный потому, что может работать параллельно и независимо от количества инстанций этого прибора. Для каждого такого прибора выделяется отдельный кусок памяти, а прибор клонируется на несколько.
Так где он в нете? Может заскринишь?
Так где он в нете? Может заскринишь?
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Case
Ну да, как я и предполагал (конкретно из за того, что ты "произнёс" слово "Reset"). Там имеется один неициализированный сдвиг. регистр, в котором запоминается значение "Output" до следующего вызова. Хотя я понимал Reset как сброс значения сдвиг. регистра. Но это неважно.
Вот кстати подходящая реализация RS-флип-флопа, без FGV. Но значение Output тебе для каждого такого подприбора нужно будет запоминать вне его. В массиве поключенному к сдвиг. регистру, но в главном приборе. Тогда сможешь сбросить все одновременно, заменив весь массив сразу.
http://www.labviewportal.org/viewtopic.php?f=13&t=1260
Правда может быть я где то ошибаюсь. Может быть ещё кто поможет.
Вот кстати подходящая реализация RS-флип-флопа, без FGV. Но значение Output тебе для каждого такого подприбора нужно будет запоминать вне его. В массиве поключенному к сдвиг. регистру, но в главном приборе. Тогда сможешь сбросить все одновременно, заменив весь массив сразу.
http://www.labviewportal.org/viewtopic.php?f=13&t=1260
Правда может быть я где то ошибаюсь. Может быть ещё кто поможет.
Re: Case
Спасибо.
Тоже интересная моделька.
Это просто продолжение темы про 2D array.
Вариант реализовать ту задачу на триггерах лежал на поверхности и в принципе я сделал, что хотел и всё работает как надо, но громоздко как-то и не гибко. Думал сделать покомпактней, да и не на примитивах.
Тоже интересная моделька.
Это просто продолжение темы про 2D array.
Вариант реализовать ту задачу на триггерах лежал на поверхности и в принципе я сделал, что хотел и всё работает как надо, но громоздко как-то и не гибко. Думал сделать покомпактней, да и не на примитивах.