Разработка "VGA SPUTNIK". Часть 06. Подстройка к частоте точек с компьютера
VGA адаптер разрабатывается для подключения к разным компьютерам и станкам с ЧПУ. У них разные частоты вывода точек на экран телевизора. Например, у ZX Spectrum-а = 7 MHz, у БК-0010М = 12 MHz, у УК-НЦ = 12,5 MHz . Как же определить момент записи точек в буфер VGA когда у компьютера и адаптера разные кварцы ?
Для решения этой задачки объединим мощь и скорость FPGA с математическими способностями микроконтроллера ATMEGA. В экранном меню выберем тип компьютера. По типу компьютера атмега найдет в своей памяти количество точек, которое укладывается в длительность строки для данного компьютера.
Затем микроконтроллер запускает в FPGA счетчик импульсов частотой 133 MHz для подсчета интервала времени между двумя строчными синхроимпульсами с компьютера. Далее атмега с помощью языка Си делит это значение на число точек в строке для данного типа компьютера. Получится дробное число — количество импульсов на одну точку.
Затем с помощью этого коэффициента для каждой точки в строке компьютера вычисляем значение счетчика, при котором надо записывать цвет этой точки. В памяти FPGA заполним массив этих значений.
Теперь мы будем запускать счетчик в начале строки и сравнивать со значением из памяти. Как только значения совпадут — запишем точку, увеличим адрес записи в SDRAM и адрес в массиве значений.
Вот такой хитрый прием позволит записывать цвет точки в нужный момент, а затем изображать в нужном масштабе на экране монитора с разрешением FULL HD.
Комментарии
Трекбэков
Всего трекбэков 0
Ссылка трекбэка: