Отладка ПО и использование встроенной перспективы

Таким образом, для нашей задачи мы инициализируем пять потоков, поток 1 является родительским. Потоки 2 и 6 осуществляют чтение данных из стандартных устройств — последовательных портов ser2 и ser485 — и обработку этих данных. В потоке 4 выполняется чтение данных из буфера DMA и их анализ (листинг 2).

Потоки 4 и 5 осуществляют обработку прерываний от АЦП, поэтому при инициализации этих потоков инициализируется событие, выполняющее уведомление о прерывании.

Потоки 4 и 5 находятся в постоянном ожидании аппаратного прерывания, при возникновении которого генерируется событие event и выполняется процедура обработки прерывания isrhandler (листинг 3, 4).

В начале работы наше приложение cayl запускает указанные потоки, как видно по результатам работы тестовой утилиты pidin (листинг 5).

Отладка ПО, использование встроенной перспективы IDE momentics

Интегрированная среда разработки IDE Momentics позволяет записать лог-файл работы инструментальной системы и проанализировать его с помощью QNX System Profiler. Можно посмотреть информацию о загрузке каждого процессора, распределении памяти, времени выполнения, миграции потоков между процессорами. По временной шкале (Timeline) можно проследить, как работает программа cayl. Мы видим все наши шесть потоков (Thread). Поток I активизируется раз в несколько миллисекунд, что соответствует работе таймера в Photon, по которому обновляется графический интерфейс. Поток 2 примерно раз в 1 секунду обрабатывает пакет, пришедший от КУ. Поток 3 постоянно ожидает прихода новых данных и выполняет их чтение и обработку. Потоки 4 и 5 каждые 600 мс обрабатывают аппаратные прерывания от АЦП. Поток 6 неактивен и ожидает прихода команды от АСУ.

Рассмотренная в статье работа — уже третий проект, реализованный программистами отдела сепараторов. Первые два, завершённые в 2010 и 2011 годах, прошли проверку временем и успешно функционируют в более чем 100 изделиях, что свидетельствует о надёжности системы, обеспечивающей функционирование сепаратора алмазов.

Особенность данного проекта — большой объём математической онлайн-обработки, выполняющей задачу так называемого распознавания образов, или машинного зрения. Эта часть проекта была выполнена специалистами московского ООО «Визиллект Сервис», а затем встроена в ПО на платформе QNX одним из авторов статьи.

10.02.2014

Добавить страницу в мои закладки:

Смотрите также:

Что вы чаще всего делаете в Интернете?

Загрузка ... Загрузка ...