Преобразователь RGB в VGA на STM32F405

Уже десять или двадцать лет назад программисты научились формировать видеосигнал на микроконтроллере. Обычно для этого использовали SPI контроллер. Это такая штука, которая равномерно бит за битом передает данные из оперативной памяти на вывод микроконтроллера. Данные для отправки по SPI подготавливаются блоком и пока этот блок отправляется, процессор может заняться другими делами.

STM32F103


Я подумал, а можно ли использовать два SPI контроллера, по одному данные загружать со скоростью обычного телевизора, а по другому выгружать со скоростью VGA? Т.е. записать в память микроконтроллера STM32 поток данных (видеовыход) с тактовой частотой 10 МГц (для Ориона 128, там разрешение 384x256 50 Гц), а затем выдать его с частотой 18 МГц (VGA 800x600 56 Гц).

Я попробовал. Я использовал самый дешевый и массовый МК STM32F103 стоимостью 35 рублей (в Китае и давно). На STM32F405 я перешел позже.

Читать дальше →