Управление LCD-TFT Требования к контроллеру Задача: Растянуть динамическое изображение в 2 раза Загрузка значения пикселя из области памяти изображения Вычисление адресов области видеопамяти А1 А3 Выполняемые операции: А2 А4 =J*2+I*2+OFFSET А1 = A4+1 A2 = A4+641 Область Изображения 640*480 Область Видеопамяти 1280 * 960 A3 = A4+640 Копирование значения пикселя 640*480 = 307200 точек. Частота процессора 50МГц Скорость обновления 4 к/сек Тогда время на обработку 1 пиксела = 40 тактов Требования к контроллеру А1 А3 А2 Построение переходного цвета по двум точкам Загрузка 4-х точек изображения Вычисление адресов результатов вычислений Вычисление значения пикселя (3 точки): R = (R1+R2)>>1 (красная составляющая) G = (G1+G2)>>1 (зелёная) B = (B1+B2)>>1 (синяя) Копирование результатов вычислений в область видеопамяти Требования к памяти контроллера 320*240 = 76800 точек Глубина цвета 2 байта (65536 цветов) Размер картинки – 150кб Разделение процессов построения изображения и копирования построенного изображения на экран Работа ядра контроллера Область памяти Построения кадра Отображаемая область памяти Работа DMA Требования к контроллеру • • • • • • • Работа с 16 бит данными (65536 цветов) минимум. 32 бит приветствуется Высокая тактовая частота Мощное АЛУ контроллера (аппаратное умножение, деление) Высокая производительность Наличие DMA Большой объём ОЗУ, возможность подключения внешнего ОЗУ Интерфейс для работы с индикатором Схемы подключения Схемы подключения • Параллельный интерфейс 8080 Схемы подключения • Параллельный интерфейс 6800 Схемы подключения • Последовательный SPI интерфейс Контроллеры семейства STM32F10XX для управления LCD-TFT Общие характеристики контроллеров STM32F101xxx STM32F103xxx Ядро ARM-cortex M3 -1.25 DMIPS/MHz -Аппаратное умножение, деление за 1 такт Память -До 1Мб флэш -До 96кб ОЗУ -Контроллер внешней памяти (SRAM, PSRAM, NOR, NAND) в 100 и 144 пинкорпусах DMA 12 каналов Множество интерфейсов обмена Подключение индикатора через контроллер внешней памяти FSMC FSMC представлен в контроллерах серий STM32F101xx STM32F103xx в 100 и 144 – пин корпусах Подключение индикатора через контроллер внешней памяти FSMC 8080-й интерфейс 6800-й интерфейс Применение DMA • • Разгрузка ядра контроллера Ускорение обмена Управление подсветкой, контрастом Яркость подсветки задаётся шириной импульса ШИМ Отрицательное напряжение контраста задаётся частотой U- C1 Младшие модели STM32F1xx Имеют 8 выходов сравнения C2 Другие возможности контроллеров STM32F1xx • • • • • • • • • • • Множество интерфейсов (SPI, I2C, UART, USART, IRDA, USB, CAN, Ethernet MAC) Несколько многоканальных АЦП 12 бит 1MSPS Несколько ЦАП 12 бит Несколько таймеров до 4-х выходов сравнения на каждом Интеллектуальная система тактирования Современная система мониторинга питания 2 сторожевых таймера (классический и оконный) Множество портов ввода-вывода Внутрисхемное программирование JTAG, SWD Boot-загрузка Энергосберегающие режимы Другие возможности контроллеров STM32F1xx Другие возможности контроллеров STM32F1xx Быстро освоить STM32xx $199 $49 $47 $999 Быстро освоить STM32xx -На базе STM32F103RET6 -Интегрированный внутрисхемный отладчик -Графический LCD-TFT -Акселерометр -CAN -USB -USART -I2C -Micro SD -Аудиокодек -Джойстик + внешний коннектор -аккумулятор -Среда Ride7 без ограничений компилируемого кода -Множество примеров программ -Circle OS с открытым кодом Быстро освоить STM32xx