Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Ветвление программы

Отправлено S 26 августа 2008 г. 11:01


При работе программа проверяет условия, которые выражаются в проверке значений с датчиков. Эти действия отображаются на индикаторе. В случае несовпадения условия, программа ожидает установления на датчике значения, соответствующего условию. На индикаторе оператор наблюдает, что программа ожидает выполнения условия - происходит зацикливание на условии. По нажатию кнопки оператором, программа должна пропустить не выполняющееся условие.

Возник вопрос: как правильно реализовать прерывание(пропуск) невыполнящегося условия и организовать последовательное прохождение всех датчиков? При этом, этих условий проверятся множество, последовательно друг за другом. И нужно ещё обеспечить возможность пропуска раздела (датчики в программе проверяются по типам, например: температурные, напряжения) датчиков.
Нажатие1 - пропуск зацикливание на датчике.
Нажатие2 - пропуск зацикливание на датчике и пропуск проверяемого типа датчиков.


Пока пришла в голову следующая реализация:

while(1) //проверка одного типа датчиков
{
while(1)
{
if((условие для датчика)|(нажатие1|нажатие2 - пропуск данного условия))
break; //переходим к следующему датчику
else
{
вывод на ЖКИ, что происходит зацикливание на датчике
}
}
if(нажатие2 - пропус данного типа датчиков)break;//
....
....
....
while(1)
{
if((условие для датчика)|(нажатие - пропуск данного условия))
break;
else
{
вывод на ЖКИ, что происходит зацикливание на датчике
}
}
break; //выход, т.к. все датчики обработаны
}


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 45:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru