Прошу прощения за тупые вопросы. Занимаюсь сабжем эпизодически, а на курсы начальство, в связи с кризисом, не посылает
А как бы сделать, чтобы цикл вайл выполнялся без прогонки всего цикла ивент (там много чего будет, что должно выполняться только эпизодически)?
В общем, где бы примеры посмотреть (можно экзамплесы и байшпили) про циклы и параллельные задачи на LabView?
Выполнение блока по условию
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Выполнение блока по условию
Угадал, параллельность в этом случае правилный подход, но...
для новичка пойдёт и использование таймаут ивента. Выстави таймаут = 0 для ивент сртруктуры, помести содержимое цикла туда. А сам цикл обведи вокруг ивент структуры.
для новичка пойдёт и использование таймаут ивента. Выстави таймаут = 0 для ивент сртруктуры, помести содержимое цикла туда. А сам цикл обведи вокруг ивент структуры.
- banderlog
- user
- Сообщения: 71
- Зарегистрирован: 23 апр 2008, 20:44
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Выполнение блока по условию
То есть, добавить кейс на таймаут? А что останется в кейсе на кноб?
З.Ы. Ну, блин, и сказанул )))
З.Ы. Ну, блин, и сказанул )))
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Выполнение блока по условию
А, ну да, неподумал об этом. Можно кноб засунуть туда же.
А ты уверен что тебе нужно стартовать цикл именно по ивенту маус ап на кнобе и останавливать по нажатию на кнопку стоп? Уверен? Мне в жизни такое не пригождалось. Поясни зачем? Может быть найдём другое, более правильное решение.
Если же всё таки нужно именно это решение, то заведи сдвиг. регистр, в котором сохраняется условие выполнения этого кусочка кода. В одном ивенте (кноб маус ап) выставляешь ТРУ, а в другом (стоп вэлью ченж) выставляешь ФОЛС, а содержимое таймаут ивента соответственно в кейс структуру.
А ты уверен что тебе нужно стартовать цикл именно по ивенту маус ап на кнобе и останавливать по нажатию на кнопку стоп? Уверен? Мне в жизни такое не пригождалось. Поясни зачем? Может быть найдём другое, более правильное решение.
Если же всё таки нужно именно это решение, то заведи сдвиг. регистр, в котором сохраняется условие выполнения этого кусочка кода. В одном ивенте (кноб маус ап) выставляешь ТРУ, а в другом (стоп вэлью ченж) выставляешь ФОЛС, а содержимое таймаут ивента соответственно в кейс структуру.
- banderlog
- user
- Сообщения: 71
- Зарегистрирован: 23 апр 2008, 20:44
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Выполнение блока по условию
По изменению значений управляющих элементов я выставляю параметры управления прибором. Если делать без событий, то связь с прибором и изменение его настроек будут идти постоянно. А зачем мне куча трейсов? Я беру один снимок спектра и на нём уже ищу пики, настраиваюсь на них и т.д. Но должна быть возможность изменять одновременно по желанию и настройки. А этого как-раз нет ((( У меня же выполнение блокируется в цикле с пиками. Так что ищу пути.eg писал(а):А ты уверен что тебе нужно стартовать цикл именно по ивенту маус ап на кнобе и останавливать по нажатию на кнопку стоп? Уверен? Мне в жизни такое не пригождалось. Поясни зачем? Может быть найдём другое, более правильное решение.
-
Eugen Graf
- guru
- Сообщения: 6502
- Зарегистрирован: 13 ноя 2007, 02:20
- Награды: 4
- Версия LabVIEW: 2009
- Откуда: Saarbrücken
- Контактная информация:
Re: Выполнение блока по условию
Вот, если интерессно, почитай про параллельные потоки:
/viewtopic.php?f=23&t=153&start=0
/viewtopic.php?f=23&t=153&start=0
- banderlog
- user
- Сообщения: 71
- Зарегистрирован: 23 апр 2008, 20:44
- Версия LabVIEW: 8.5
- Контактная информация:
Re: Выполнение блока по условию
Про параллельные потоки прочитал. Занимательно, но немного не то - слишком наворочено получается. Посидел, нарсовал квадратики со схемой выполнения на бумажке - и ... вуаля. В общем, я неверно понимал таймаут ивент без параметров. Надо бы матчасть подучить :)