АЛГОРИТМЫ УСТРОЙСТВА ОТОБРАЖЕНИЯ ИНФОРМАЦИИ С ДОСТУПОМ ПО ЛОКАЛЬНОЙ СЕТИ - Студенческий научный форум

VIII Международная студенческая научная конференция Студенческий научный форум - 2016

АЛГОРИТМЫ УСТРОЙСТВА ОТОБРАЖЕНИЯ ИНФОРМАЦИИ С ДОСТУПОМ ПО ЛОКАЛЬНОЙ СЕТИ

Магомедов А.Д. 1, Асланов К.А. 1, Тагиров Х.Ю. 1
1Дагестанский Государственный Технический Университет
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF
В последние годы резко возрос интерес к использованию светодиодных систем отображения информации. Это объясняется как высокими эксплуатационными характеристиками и качеством изображения, так и снижением цен на светодиоды. Развитие дисплейных технологий направлено не только на разработку новых способов отображения информации, но и на создание алгоритмов обработки, позволяющих существенно повысить характеристики существующих систем отображения информации.

При разработке устройства отображения основной задачей является обработка поступающего на вход потока данных для передачи и распределения этих данных между модулями и управления светодиодами. Рассмотрим некоторые алгоритмические решения, лежащие в основе построения этих перспективных устройств.

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

В разработанном устройстве реализованы различные режимы вывода информации. Многообразие используемых режимов обусловлено различными функциями, реализуемыми при отображении информации. При разработке алгоритма необходимо учесть все процессы, происходящие в устройстве. Так как информация, предназначенная для вывода, поступает извне, по CAN-шине, возникает необходимость ее обработки таким образом, чтобы это не сказывалось на выполнении остальных функций. Для этого целесообразно использовать механизм обработки прерываний. В этом случае, при поступлении данных по CAN, будет срабатывать прерывание, после чего оно попадает в обработчик прерываний и впоследствии принятые данные записываются в память. Таким образом, можно обеспечить гибкость функционирования устройства при поступлении новой информации. Также стоит задача организации вывода информации на табло таким образом, чтобы не возникал эффект мерцания. Так как используется динамическая индикация необходимо организовать процесс вывода так, чтобы обеспечить быстрое последовательное отображение отдельных элементов – строк информационного табло. Целостность восприятия обеспечивается за счет инерционности человеческого зрения. [1]

В памяти микроконтроллера отводится массив display_buf – образ табло для записи выводимой информации, которая может постоянно обновляться в зависимости от выбранного режима. Вывод на дисплей также должен организовываться по прерываниям, так как это обеспечит гибкость работы и не вызовет проблем с представлением информации.

На микроконтроллер ложится большая нагрузка, поэтому возникает необходимость организации распределения ресурсов, при которой МК будет своевременно выполнять предписанные ему функции. С этой целью был разработан алгоритм работы устройства отображения информации (См. рис. 1) . Каждый блочный символ помечен координатами расположения на листе (столбцы помечаются арабскими цифрами, а строки – буквами латинского алфавита) [2]. Данный алгоритм реализует процесс принятия данных и инструкций по отображению, их буферизацию и последующее отображение в выбранном режиме.

Рис. 1. Алгоритм функционирования устройства отображения информации

Блок A1. Инициализация периферии, которая включает в себя: настройку портов ввода-вывода; настройку периодических таймеров и их запуск; настройку RTC модуля и его запуск; настройку интерфейсов передачи информации – CAN и SPI; настройку прерываний от таймеров и CAN.

Блок B1. Загрузка новой информации производится по прерыванию. При поступлении прерывания от CAN контроллера устанавливается флаг принятия новых данных и инструкций. При установленном флаге принятия новых данных и инструкций, МК записывает поступившие данные и инструкции в память, после чего сбрасывает данный флаг. Затем осуществляется переход к следующему блоку. Передавая информация должна иметь заранее определенный формат, что позволяет различить информацию, предназначенную для вывода от инструкций по режиму отображения. Таким образом, данные записываются в видеопамять, а инструкции в переменную, предназначенную для определения режима отображения.

Блок C1. В соответствии с выбранным режимом производится вывод информации.

Для каждого режима предусмотрен свой формат отображения. Последовательность действий соответствующая отдельным режимам описана в алгоритме подпрограммы вывода информации.

Блок D1. Производится проверка флага принятия новых данных. Если поступила новая информация, то переход к блоку B1, в противном случае – к блоку E1.

Блок E1. Осуществляется проверка необходимости дальнейшего отображения информации. Завершение работы может задаваться как по наступлению определенного времени, так как МК оснащен модулем RTC, так и по заданию значения интервального таймера. Кроме того, закончить выполнение работы в любое время можно осуществить нажатием кнопки подачи питания. Если функционирование должно продолжиться – переход к блоку C1, если же нет, то отображение информации прекращается и на этом алгоритм функционирования устройства отображения информации заканчивается.

На рис. 2 представлен алгоритм выбора реализуемого режима отображения информации, соответствующего блоку C1 на рис. 1.

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

Блок A2. Проверяется, что стартовая позиция для вывода информации меньше конечной. Если значение конечной позиции больше сообщение игнорируется, т.е. устанавливается флаг ошибки (блок L7) и выполняется выход из подпрограммы.

Блок B2. Информация на дисплей может выводиться все время или в течение некоторого промежутка времени. В данном блоке выполняется проверка этого условия, и в зависимости от результата осуществляется переход к блоку C2 или L6.

Блок C2. В случае, если информация должна выводиться некоторое количество времени, то настраивается таймер1 на время заданное в принятых инструкциях.

Блок D2. Если информация выводится не все время, то она может выводиться, либо один раз, либо же повторяться с каким-то интервалом. Если информация должна быть выведена один раз, то переход в блок E2, в противном случае – E3.

Блок E2. Если задано использование статической индикации переход к блоку F2, если динамической – F3. [3]

Рис. 2. Алгоритм выбора реализуемого режима отображения информации

Таким образом, все параметры одного из возможных режимов являются определенными и можно приступить к его реализации. Реализация данного режима подразумевает вывод статичной информации в течение заданного интервала времени. Для этого в блоке F2 осуществляется непосредственно вывод информации на дисплей. Затем запускается таймер1 (блок G2) и до тех пор пока таймер не переполнится выведенная информация не сменяется. Контроль переполнения производится в блоке I2. После того как таймер отсчитает необходимое количество времени информация стирается и осуществляется возврат к предыдущему состоянию, т.е. на дисплее отображается информация, предшествовавшая данной.

В случае, если текущий режим подразумевает динамическую индикацию, то в соответствии со скоростью движения текста настраивается таймер2 (блок F3). Затем аналогично предыдущему случаю выполняется запуск таймеров (блок G3) и контроль их переполнения (блоки I3 и J3). Когда таймер2 переполняется, выполняется сдвиг текста на одну позицию (блок K3) и проверка условия завершения выполнения данного режима (блок L3). В данном случае окончание означает, что выводимая информация прокручена на табло необходимое количество раз. Если задача выполнена, то, как и в предыдущем случае, на табло возвращается информация, предшествовавшая данной информации (блок P5). Если информация должна повторяться с определенной цикличностью, то необходимо использовать таймер для отсчитывания интервалов времени между повторами (блок E3). Далее для режима статической индикации выполняется запуск таймеров (блок G4) и вывод информации на дисплей (блок H4). Затем осуществляется вывод новой информации в течение заданного времени. Время, в течение которого должно выводиться сообщение измеряется посредством таймера1 (блоки J4 и I5). После этого выполняется проверка заполнения таймера2, который отсчитывает время между выводами а дисплей данного сообщения. В том случае, если таймер2 заполнен выполняется переход к выводу на дисплей этого же сообщения. В противном случае осуществляется возврат к предыдущему состоянию дисплея (блок P5) и выход из подпрограммы. При переполнении таймера2 генерируется прерывание, которое осуществляет переход к блоку K4. Для режима динамической индикации последовательно выполняются следующие действия: настройка таймера3 в соответствии со скоростью движения текста (блок G5); запуск таймеров (блок H5); вывод на дисплей (блок I6); контроль переполнения таймера3 (блоки J5, K5); сдвиг текста на одну позицию. После этого проверяется, прокрутился ли текст необходимое количество раз (блок M5). Если требования не выполнены переход к блоку I5, в противном случае к блоку N5. Как и в предыдущем случае при переполнении таймера2 генерируется прерывание, которое осуществляет переход к блоку N5, а затем к блоку I6. Если таймер2 не заполнен осуществляется его инкрементирование (блок O5) и возврат к предыдущему состоянию дисплея (блок P5).

Когда информация на дисплей выводится все время, возможны также режимы статической и динамической индикации. Их выбор осуществляется в блоке L6. При статической индикации информация выводится на дисплей (блок M6) и более никаких манипуляций над ней не производится. [4]

Для режима динамической индикации выполняются следующие действия: настройка таймера1 в соответствии со скоростью движения текста (блок M7); запуск таймера (блок N7); вывод на дисплей (O7); контроль переполнения таймера1 (блоки P7, Q7); сдвиг текста на одну позицию (блок R7). Затем проверяется, сменилась ли информация, предназначенная для вывода на дисплей, и в частности скорость, с которой движется текст на табло. Если есть изменения, выполняется выход из подпрограммы, в противном случае переход к блоку O7. Кроме того, необходимо отметить, что при реализации устройства отображения информации с доступом по локальной сети были использованы вышеприведенные алгоритмы. Был написан программный код, реализующий управление данным устройством, прием информации и ее отображение во всех указанных режимах. Также была произведена его апробация.

После проведенного анализа параметров и режимов функционирования был выбран микроконтроллер TM4C1230C3PM серии Tiva™ C. Данное семейство микроконтроллеров обеспечивает требуемую производительность и достаточный набор периферии.

Выводы:

Таким образом, наше устройство может использоваться для отображения статических картинок и текста. Важной особенностью устройства является возможность поддержки любых символов и пиктограмм. Устройство отображения информации позволяет: - отображать текстовую информацию при помощи различных шрифтов на разных языках, с использованием разнообразных эффектов ввода-вывода сообщения; - отображать графическую информацию и различные анимационные эффекты; - оперативно менять и редактировать информацию при помощи многофункционального программного обеспечения для управляющего контроллера. Основные характеристики разработанного устройства: - управление и мониторинг осуществляются с помощью встроенного контроллера или ПК через последовательный CAN интерфейс; - удобное и надежное программное обеспечение, позволяющее легко осуществлять настройку вводимой информации, вводить и редактировать отображаемую информацию, загружать различные графические и анимационные эффекты, создавать собственное расписание выводимой на табло информации;

Литература

  1. Мирзабеков М.М., Тагиров Х.Ю. Устройство отображения информации с доступом по локальной сети// Международный студенческий научный вестник. – 2015. – № 1;

  2. Москатов Е. А. Электронная техника. – Таганрог, 2004. – 121 с.

  3. Никлаус В. Алгоритмы и структуры данных. – ДМК Пресс, 2010. – 274 с.

  4. Яншин В. В. Анализ и обработка изображений: принципы и алгоритмы. – Машиностроение, 1994. – 112 с.

Просмотров работы: 924