Два цикла
-
- junior
- Сообщения: 52
- Зарегистрирован: 23 мар 2015, 18:29
- Версия LabVIEW: 2010
- Контактная информация:
Два цикла
Здравствуйте! У меня есть некая программа, она включает в себя непрерывный цикл, в котором, в зависимости на какую кнопку нажал пользователь, происходит последовательность действий. Но мне нужно контролировать время, т.е. есть некий флаг который отвчает за питание, максимум в 1 он может находится 90 сек, а далее выполнение главного цикла должно прекращаться на 10 мин, и затем возобнавляться вновь причем с того места где остановился. Не совсем понимаю в каком направлении двигаться. Предполагала сделать параллельный цикл, поймать момент когда флаг стал 1 и пустить таймер на 90 сек, а вот дальше как быть не знаю, каким образом остановить другой цикл и затем возобновить его вновь с места останова???
-
ladik
- developer
- Сообщения: 275
- Зарегистрирован: 18 ноя 2014, 11:45
- Награды: 1
- Версия LabVIEW: 2015, 2019
- Откуда: Екатеринбург
- Благодарил (а): 4 раза
- Поблагодарили: 3 раза
- Контактная информация:
Re: Два цикла
danya, Вам принципиально нужно останавливать цикл? А если сделать case structure в цикле и, чтобы "во время останова" выполнялся пустой кейс? Данные можно в таком случае в сдвиговых регистрах хранить. Можно и Вашу идею использовать. Например в первом цикле отлавливать флаг и отправлять команду в уведомитель во второй. Вот втором выставить тайм-аут функции Wait on Notification=-1, чтобы ждал уведомление пока оно не придёт. Далее, после получения уведомления 2-м циклом, в нём считать длительность выполнения, сравнивать с нужной и обновлять уведомитель. Если время вышло, в уведомитель ничего не отправлять.
Дорогу осилит идущий.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение