Два цикла

Простейшие вопросы в области инженерной разработки
Ответить
danya
junior
junior
Сообщения: 52
Зарегистрирован: 23 мар 2015, 18:29
Версия LabVIEW: 2010
Контактная информация:

Два цикла

Сообщение danya »

Здравствуйте! У меня есть некая программа, она включает в себя непрерывный цикл, в котором, в зависимости на какую кнопку нажал пользователь, происходит последовательность действий. Но мне нужно контролировать время, т.е. есть некий флаг который отвчает за питание, максимум в 1 он может находится 90 сек, а далее выполнение главного цикла должно прекращаться на 10 мин, и затем возобнавляться вновь причем с того места где остановился. Не совсем понимаю в каком направлении двигаться. Предполагала сделать параллельный цикл, поймать момент когда флаг стал 1 и пустить таймер на 90 сек, а вот дальше как быть не знаю, каким образом остановить другой цикл и затем возобновить его вновь с места останова???
Аватара пользователя
ladik

Silver
developer
developer
Сообщения: 275
Зарегистрирован: 18 ноя 2014, 11:45
Награды: 1
Версия LabVIEW: 2015, 2019
Откуда: Екатеринбург
Благодарил (а): 4 раза
Поблагодарили: 3 раза
Контактная информация:

Re: Два цикла

Сообщение ladik »

danya, Вам принципиально нужно останавливать цикл? А если сделать case structure в цикле и, чтобы "во время останова" выполнялся пустой кейс? Данные можно в таком случае в сдвиговых регистрах хранить. Можно и Вашу идею использовать. Например в первом цикле отлавливать флаг и отправлять команду в уведомитель во второй. Вот втором выставить тайм-аут функции Wait on Notification=-1, чтобы ждал уведомление пока оно не придёт. Далее, после получения уведомления 2-м циклом, в нём считать длительность выполнения, сравнивать с нужной и обновлять уведомитель. Если время вышло, в уведомитель ничего не отправлять.
Дорогу осилит идущий.
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Для чайников»