Карта сайта | Пишите нам | В избранное | eng
Внимание! У нас изменились номера телефонов. Звоните:
(495) 638-88-00, (499) 940-95-75, факс (499) 735-04-91; +7(909) 638-88-00 и +7(903) 530-10-01 (Билайн). |
Микроэлектронные проекты. Ибрагимов Максим Рафикович. Простой VGA/Видео адаптер.(проект по формированию VGA сигнала при помощи 8-ми битных MCU фирмы AVR) Предыстория проекта. Несколько месяцев назад, задавшись целью подключить VGA-монитор для вывода текстовых данных с микроконтроллерной системы сбора информации - я с удивлением обнаружил, что ничего сколько-нибудь "внятного" и доступного для повторения " на коленке " по этой теме в Интернете отсутствует. Конечно, существуют промышленные платы стандарта PC-104, можно кое-что "нарыть" и на www.opencores.org для реализации на FPGA, есть графические контроллеры Fujitsu, кто-то здесь недавно на местной конференции предлагал за 5000$ проект на ACEX'е :, но надо признать - все это страшно далеко от народа. Хотелось что-то гораздо более "дешевое и сердитое". Предварительные прикидки показывали, что из наиболее распространенных и достаточно быстродействующих микроконтроллеров подходит продукция фирмы ATMEL. 8-ми битное RISC ядро AVR обеспечивает пиковую производительность порядка 16 MIPS на тактовой частоте 16MHz. Плюс на подходе более скоростные семейства Mega48,88,168 поддерживающие официальную тактовую частоту 20MHz.При этом скорость вывода данных через стандартный порт ввода-вывода при FOSC = 16MHz командами вывода в порт (out portx..) 8 MIPS. К тому же я уже имел достаточный опыт разработки устройств на микроконтроллерах AVR. И я засучил рукава.. Результат своей работы я представляю на ВАШ суд. Поставленная техническая задача:Цель которую я поставил для себя, достаточно проста на первый взгляд: Ограничившись одним корпусом распространенного MCU типа Mega8,16,8535 и т.д., и минимумом внешних элементов сконструировать символьный дисплей-адаптер с разрешением > 15x15 символов, который бы выводил информацию на VGA монитор при стандартных частотах VGA сигнала. Информацию символьный адаптер должен получать через стандартный USART порт микроконтроллера. Частота используемого микроконтроллера стандартная -16MHz.Данная задача на данный момент успешно решена. Более того - проект несколько расширен и дополнен введением формирования обычного видео ч.б. (PAL/SECAM) сигнала. Т.е. в зависимости от положения джампера тип формируемого видео сигнала VGA либо Composite Video. Фотографии и схемы проекта: Скачать принципиальную схему простого VGA/Video адаптера. Так все это выглядит в железе, собранном на "коленке" за один час: А вот что мы получаем на экране монитора и телевизора: Технические характеристики проекта:Технические характеристики VGA-адаптера:Количество символов: 20 строк по 20 символов Разрешение матрицы знакогенератора: 8x12 точек Кодовая таблица знакогенератора: WIN 1251 Формируемый сигнал: VGA Разрешение: 640x480 Частота кадровой синхронизации: 60Hz Скорость обмена UART 19200 bps Технические характеристики Video-адаптера: Количество символов: 20 строк по 38 символов Разрешение матрицы знакогенератора: 8x12 точек Кодовая таблица знакогенератора: WIN 1251 Формируемый сигнал: Composite Video(PAL/SECAM) Разрешение: 625 строк (чересстрочная) Частота кадровой синхронизации: 50Hz Скорость обмена UART 19200 bps Тип используемого микроконтроллера: Mega8, Mega16, , Mega32, Mega8535 и т.д. Тактовая частота микроконтроллера стандартная - 16Mhz Примечание:
Пояснения по работе программы: Алгоритм рендеринга изображения достаточно традиционен, главное ноу-хау проекта в использовании для побитного вывода изображения - сдвигового регистра SPI SPDR через бит MOSI. При этом образуется двухступенчатый конвейер рендеринга: В то время, как последующий байт для рендеринга выбирается из памяти, предыдущий байт выводится через сдвиговый регистр SPI SPDR MOSI. Заключение:Поскольку данный проект написан на С (WinAVR GCC), он легко масштабируем для увеличения разрешения и частот регенерации дисплея. Так, на микроконтроллерах Mega48,88,168 поддерживающих официальную тактовую частоту 20MHz возможно получение разрешения 20 строк по 25-30 символов при абсолютно той же схемотехнике (возможности оверклокинга автор намеренно не рассматривает). Применения проекта не ограничиваются одним лишь терминальным вариантом (смотрите примеры в папке examples) - не смотря на серьезную загруженность процессора регенерацией дисплея оставшейся мощности вполне достаточно для организации обработки например нескольких цифровых и аналоговых сигналов и реакции на них, а также выдаче результатов их измерений на дисплей в real-time (охранные системы, АСУТП, КИПиА и т.д.). Автор располагает улучшенными вариантами подобных систем с разрешением символьного дисплея 40x24 символов в режиме VGA, работающими в коммерческих изделиях.Файлы проекта: скачать. Вы можете свободно пользоваться материалами данной публикации в образовательных и некоммерческих целях. Все права на проект зарегистрированы. Перепечатка, публикация в Интернете, журналах, использование в коммерческих приложениях - возможна только после согласования с автором . Полезные ссылки: Теория Видео сигнала Cornell University Electrical Engineering 476- Генерация видеосигнала на AVR Теория VGA сигнала Генерация VGA сигнала на PIC За дальнейшим развитием проекта следите за: http://www.vga-avr.narod.ru/ Автор проекта: Инженер Ибрагимов Максим Рафикович г. Тольятти 20.10.2005 г. |
Правила оформления проектов
Приглашаем специалистов
В России кризис и увольнения персонала, а в Телесистемах, как обычно, не так как у всех: мы расширяем деятельность, набираем новых сотрудников и ищем новых партнеров.
Изделия для разработчиков
| ||||