Тандем МК-модулей для управления с использованием графического интерфейса
В настоящее время на рынке микроконтроллеров (МК) имеется ряд моделей, имеющих встроенный контроллер цветного графического дисплея. Однако использование единственного в системе микроконтроллера и для целей управления, и для обслуживания дисплея часто ограничивает скорость выполнения этих процессов. Для создания развитого интерфейса пользователя требуется разработать библиотеку графики.
Обеспечить быструю обработку событий в микроконтроллерной системе с развитым и дружественным интерфейсом оператора можно, используя два или несколько МК, каждый из которых специализируется на выполнении одной или нескольких функций. Связи между ними могут быть организованы через последовательные интерфейсы. При таком подходе отображение на цветном графическом дисплее может формировать специализированный 32-разрядный микроконтроллер, а управление системой выполнять другой микроконтроллер, в том числе 16- или 8-разрядный (рис. 1).
Рис. 1. Структура микроконтроллерной системы с разделением функций отображения и управления
Компания Терраэлектроника разработала модули TE-ULCD56 и TE-STM32F107, которые позволяют реализовать 32-разрядную микроконтроллерную систему с разделением функций управления и отображения информации.
Универсальный дисплейный модуль TE-ULCD56 выполнен на основе 5,6" цветного графического дисплея с сенсорным экраном и 32-разрядного ARM7-микроконтроллера LPC2478 компании NXP. В память программ микроконтроллера на этапе изготовления загружается библиотека графических функций, которые могут быть вызваны из прикладной программы при помощи SPI-команд. Это значительно упрощает формирование изображения на TFT-дисплее, а также обслуживание сенсорного экрана. Имеется возможность обновления загруженной библиотеки. Для хранения графических объектов пользователя предназначена карта microSD. На рис. 2 представлен вид модуля TE-ULCD56.
Рис. 2. Дисплейный модуль TE-ULCD56
Для разработчика дисплейный модуль представляется в виде программно-логической модели, которая включает список программно-доступных регистров и набор SPI-команд. Ресурсы модуля описаны в документах «Руководство пользователя» и «Руководство оператора».
Отлаживать программное обеспечение модуля можно без управляющего контроллера с использованием скриптов, записанных на SD-карту. Примеры создания графических изображений на дисплее, их переключения при нажатии на изображения клавиш через сенсорный экран приведены в приложениях к документу «Руководство оператора».
В системе с разделением функций управления и отображения графической информации (рис. 1) SPI-команды на дисплейный модуль должен подавать управляющий микроконтроллер. В настоящее время мы рекомендуем использовать для этого микроконтроллерный модуль TE-STM32F107.
Встраиваемый модуль TE-STM32F107 выполнен на основе 32-разрядного микроконтроллера STM32F107 компании STMicroelectronics. Семейство STM32 появилось в 2007 году в результате сотрудничества с компанией ARM. Оно имеет в основании ядро Cortex-M3 и демонстрирует существенное превосходство над традиционными микроконтроллерами ARM7.
Основные преимущества архитектуры Cortex-M3 на примере микроконтроллеров семейства STM32 выглядят следующим образом. Современная структура и технология производства позволили достичь показателя энергопотребления ядра Cortex-M3 в 0,19 мВт/МГц против 0,39 мВт/МГц у микроконтроллеров с ядром ARM7. При этом производительность по тесту Dhrystone составляет 1,25 DMIPS/MГц против 0,95 DMIPS/MГц для ARM7TDMI на наборе команд Thumb. Максимальная тактовая частота микроконтроллеров STM32 составляет 72 МГц. Компания STMicroelectronics заявляет о способности своих микроконтроллеров с ядром Cortex-M3 превосходить DSP других компаний в области целочисленных вычислений. Таким образом, микроконтроллеры с ядром Cortex-M3 не только более экономичны, но и более производительны, чем традиционные ARM7.
Важным отличием ядра Cortex-M3 от ядра ARM7 является наличие контроллера вложенных прерываний. Для программиста его работа проявляется в том, что при возникновении запроса прерывания значения программного счетчика, регистров состояния и общего назначения автоматически помещаются в стек, а после выполнения процедуры обслуживания производится автоматическое восстановление их значений. Контроллер дополнен блоком обработки внешних прерываний, преобразующим сигналы с внешних выводов в запросы. Детекторы входных сигналов могут быть программно настроены на идентификацию фронта сигнала, спада и импульса.
Микроконтроллеры семейства STM32 имеют в своем составе 12-разрядные самокалибрующиеся АЦП c быстродействием 1 Msps. Несколько полезных опций, таких как сканирующий опрос каналов и синхронная работа нескольких преобразователей, существенно упрощают работу. Интегрированный в кристалл датчик температуры может быть подключен к АЦП. Поскольку в составе микроконтроллеров STM32 старших моделей имеется еще и 12-разрядный ЦАП, то к ним можно применить термин «Аналого-цифровые процессоры» (Mixed Signal Processors).
Большим удобством для многих применений является возможность использования в качестве источника синхросигнала внутреннего RC-генератора с частотой 8 МГц.
В целом архитектура Cortex-M3 устанавливает новый стандарт качества среди 32-разрядных микроконтроллеров, а невысокая цена позволяет рекомендовать эти микроконтроллеры разработчикам для перехода с 8- и 16-разрядных микросхем на 32-разрядные.
Микроконтроллер STM32F107 относится к линейке Connectivity Line семейства STM32. При общих для семейства технологических нормах и степени интеграции чипа акцент в нем сделан в сторону увеличения набора коммуникационных интерфейсов. Процессорное ядро Cortex-M3 (Fmax = 72 МГц); flash-память программ уменьшена до 256 Кбайт, зато в набор интерфейсов входят порты Ehternet, USB OTG и два порта CAN. TE-STM32F107 позиционируется компанией Терраэлектроника как универсальный модуль с расширенным набором коммуникационных интерфейсов. Кроме того, этот модуль рекомендуется как управляющий для работы в тандеме с дисплейными модулями TE-ULCD35/56. Вид модуля TE-STM32F107 приведен на рис. 3.
Рис. 3. Микроконтроллерный модуль TE-STM32F107
Отличительные особенности модуля TE-STM32F107:
- Микроконтроллер STM32F107VCT6: 72МГц Cortex-M3, 256 Кбайт флэш-памяти программ, 64 Кбайта ОЗУ, два 12-разрядных АЦП (16 внешних каналов), два 12-разрядных ЦАП, Ethernet MAC 10/100, USB OTG, 2xCAN, 5х USART, 3х SPI, I2C, корпус LQFP100;
- SPI флэш-память AT45DB161D (16 Мбит);
- Разъем и драйвер порта Ethernet;
- Разъем порта USB OTG;
- Два разъема и драйверы портов CAN;
- Два разъема порта UART;
- Разъем JTAG;
- Аудио усилитель и динамик;
- 31 линия портов микроконтроллера выведена на разъем;
- Разъем питания 7,5...9,0В;
- Размеры платы модуля 85х70мм.
В комплект модуля входит компакт-диск с установочными файлами среды программирования ECLIPSE/GCC, руководством по установке среды, тестирующими программами и руководством по проверке модуля. Тестирующие программы проверяют микроконтроллерное ядро модуля, интерфейсы Ethernet, CAN1 и CAN2. Тестирующая программа интерфейса Ethernet выполнена в виде WEB-сервера.
Для подключения к дисплейному модулю TE-ULCD56 на плате TE-STM32F107 имеются посадочные места двух разъемов. Через один из них подается питание, а второй служит для организации SPI-интерфейса. На рис. 4 представлен вид микроконтроллерной системы на основе модулей TE-ULCD56 и TE-STM32F107, а на рис. 5 - набор интерфейсов этого тандема.
Рис. 4. Микроконтроллерная система на основе TE-ULCD56 и TE-STM32F107
Рис. 5. Интерфейсы системы на основе TE-ULCD35 и TE-STM32F107
Заключение
Тандем модулей Терраэлектроники TE-ULCD56 и TE-STM32F107 представляет собой готовое решение для интеграции в научные, промышленные, торговые и бытовые изделия, для управления которыми требуется формирование цветных графических изображений и интерактивной связи с оператором.
Получение технической информации, заказ образцов, поставка - e-mail: info@terraelectronica.ru
Ваш комментарий к статье | ||||