Графическая имитация работы в VI
Добавлено: 03 окт 2017, 19:21
Здравствуйте, господа.
Появилась проблемка - решил обратиться к вам. Есть структура EventCtructure, у которой выставлен EventTimeout в 100мс. При возникновении события (приходит команда через COM) возводится флаг, и в вкладке TimeOut начинает воспроизводится отображение работы комплекса. Алгоритм такой:
1. С 0 по 6 секунду горит красный индикатор
2. С 2 по 6 секунду на экране последовательно загорается 5-4-3-2-1
3. С 7 по 12 секунд горит зеленый индикатор.
4. После 12 секунд - красный индикатор моргает (режим "ожидание").
Система вызова такая - есть переменная FF, которая по умолчанию равна 121. Как происходит событие - она обнуляется, и через ShiftRegister начинает добавлять по единичке каждую 0.1 сек.
Проблема заключается в том, что в этой реализации период зажигания красного и отсчёта (т.е. эти 7 секунд) колеблется от 6,5 до 7,5 секунд (отстает/спешит от комплекса, на комплексе - время с GPS). И похоже, временные процедуры в LV не очень точны. Вопрос - может есть более правильная реализация этого цикла, дабы исключить это отставание/спешку? Хотелось бы синхронизовать изображение с оборудованием...
Заранее спасибо!
Появилась проблемка - решил обратиться к вам. Есть структура EventCtructure, у которой выставлен EventTimeout в 100мс. При возникновении события (приходит команда через COM) возводится флаг, и в вкладке TimeOut начинает воспроизводится отображение работы комплекса. Алгоритм такой:
1. С 0 по 6 секунду горит красный индикатор
2. С 2 по 6 секунду на экране последовательно загорается 5-4-3-2-1
3. С 7 по 12 секунд горит зеленый индикатор.
4. После 12 секунд - красный индикатор моргает (режим "ожидание").
Система вызова такая - есть переменная FF, которая по умолчанию равна 121. Как происходит событие - она обнуляется, и через ShiftRegister начинает добавлять по единичке каждую 0.1 сек.
Проблема заключается в том, что в этой реализации период зажигания красного и отсчёта (т.е. эти 7 секунд) колеблется от 6,5 до 7,5 секунд (отстает/спешит от комплекса, на комплексе - время с GPS). И похоже, временные процедуры в LV не очень точны. Вопрос - может есть более правильная реализация этого цикла, дабы исключить это отставание/спешку? Хотелось бы синхронизовать изображение с оборудованием...
Заранее спасибо!