roboforum.ru

Технический форум по робототехнике.


Видео-выход на AVR

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Видео-выход на AVR

Сообщение HarryStar » 15 сен 2011, 11:43

Делаю себе модуль с видеовыходом на телик (нужно получить некоторые данные в графическом виде, через СОМ лениво загонять их в комп, там еще придется прогу писать отдельную).

В принципе почти сделал, но есть вопрос.

По стандарту требуются уравнивающие импульсы до и после вертикальной синхронизации.
Обязательны-ли они сейчас?

Раньше я понимаю, они были нужны, но сейчас электроника в теликах покрутела, ей не нужно время что-бы какой-то там виртуальный "луч" успел куда-то переместится и т.д. Я так понимаю в ЛСД телевизорах алгоритмы совсем другие, не как в ЭЛТ.

PS: Я проверил - без них все работает, синхронизация идеальная, вопрос в том, не вредно ли отсутствие уравнивающих импульсов для электроники телевизора.
Аватара пользователя
HarryStar
 
Сообщения: 995
Зарегистрирован: 15 ноя 2010, 13:56
Откуда: Нижний Новгород
прог. языки: С, С++, РНР

Re: Видео-выход на AVR

Сообщение Michael_K » 15 сен 2011, 12:08

ЭЛТ телевизорам тоже по барабану.
Если вы не делаете чересстрочную развертку (то есть не пытаетесь попасть строками кадра _точно_между_ строками предыдущего), то по барабану. Вы же наверняка не делаете лишние полустроки в кадре.

Добавлено спустя 18 минут 28 секунд:
Это все я написал про ЧБ-картинку. Если про цвет говорить, то тоже можно, только фазы поднесущей цвета будут ползти - эависит от способа генерации/синхронизации поднесущей.
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Видео-выход на AVR

Сообщение HarryStar » 15 сен 2011, 13:03

Нет, я делаю чересстрочную развертку.
без чересстрочный развертки у меня на 40" изображение стабильно, а на мелком 4.7" без нее мерцает

я вывожу 625 строк, делаю вертикальные импульсы на 1,2, 313 и 314 строках

Добавлено спустя 20 секунд:
конечно речь про ЧБ картинку

Добавлено спустя 5 минут 46 секунд:
а можно ее не делать разве? (чересстрочную развертку) Я просто не знал, везде в описании упоминается она
Аватара пользователя
HarryStar
 
Сообщения: 995
Зарегистрирован: 15 ноя 2010, 13:56
Откуда: Нижний Новгород
прог. языки: С, С++, РНР

Re: Видео-выход на AVR

Сообщение Michael_K » 15 сен 2011, 15:47

Да, обычно можно - делаете 312 строк в (полу)кадре и не паритесь, хотя это упрощение, конечно.

У вас получается что в одном полукадре 312 строк, а в другом - 313.
А в стандарте по 312,5 строк, поэтому и добавляются выравнивающие строчные в середине строки.

Я бы кадровые сделал пошире, не стесняясь - строк пять, например :)
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Видео-выход на AVR

Сообщение HarryStar » 16 сен 2011, 13:49

Действительно все работает и без чередования строк. Программа существенно упростилась.
Передаю 312 строк в каждом кадре, из них 2 строки - кадровая синхронизация

Сделал тестовый вывод - все работает. Получилось пока 32х32х16 разрешение(т.е 16 градаций серого).
Но быстродействия впритык. Мне нужно несколько видеорежимов, в частности еще как минимум 128х64х2 для текстового вывода, но боюсь с побитовым сдвигом на Си не получится. Буду пробовать.

Основной вопрос - такой режим синхронизации без чередования строк не вреден для электроники? Просто после того, как спалил LCD монитор при попытке программного формирования VGA как то побаиваюсь.

PS: Michael_K, Спасибо за подсказку!
Аватара пользователя
HarryStar
 
Сообщения: 995
Зарегистрирован: 15 ноя 2010, 13:56
Откуда: Нижний Новгород
прог. языки: С, С++, РНР

Re: Видео-выход на AVR

Сообщение HarryStar » 19 сен 2011, 13:56

Продолжаю допиливать свой видео-модуль.

Случайно допустил в программе ошибку и вместо 312 строк стали формироваться 256 (переменную из инт в чар переделал и забыл, что строк больше 256).

Как ни странно все продолжало работать:
1) Частота кадров соотв. пропорционально возросла до 60 Гц
2) Изображение стало намного более стабильным и четким
3) Размер пикселя по вертикали увеличился и соотв в экран убирается только 230 строк

Вопросы:
1) Насколько для LCD телевизора плохо 60 Гц? Я вообще удивлен что он еще показывал.
2) Почему? Как этого добиться на 50 Гцах?

PS: 230 строк сильно неудобней для вычислений чем 312. В 312 я просто оставлял сверху-снизу черные полосы и работал со средними 256 строками, а тут кака, но это ладно я переживу.
Аватара пользователя
HarryStar
 
Сообщения: 995
Зарегистрирован: 15 ноя 2010, 13:56
Откуда: Нижний Новгород
прог. языки: С, С++, РНР

Re: Видео-выход на AVR

Сообщение Michael_K » 19 сен 2011, 15:27

HarryStar писал(а):Основной вопрос - такой режим синхронизации без чередования строк не вреден для электроники?

нет, не вреден.

HarryStar писал(а):Насколько для LCD телевизора плохо 60 Гц? Я вообще удивлен что он еще показывал.

Вообще, сейчас они все сильно всеядные.
LCD - ничего не сделается (то есть даже если он из синхронизьма выйдет, то не умрет).

Но эта всеядность зависит от времязадающих цепей - я бы не расчитывал, что и другие телевизоры настолько же всеядны.
А вот ЭЛТ телевизор скорее всего не будет разворачивать картинку на весь экран. И это не очень хорошо, хотя, наверное не смертельно (строчная-то у вас не выросла же?)

HarryStar писал(а):3) Размер пикселя по вертикали увеличился и соотв в экран убирается только 230 строк

Это он слишком умный у вас :)
Наверняка там "многостандартный" чип стоят - они вообще допускают сильные отклонения (сейчас они многие такие).

Я бы все-таки делал 312 из которых рабочих 256 - так и постандартнее и поудобнее (ну, с моей точки зрения).
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Видео-выход на AVR

Сообщение HarryStar » 19 сен 2011, 15:59

Разобрался. Эта умная падла переключилась в NTCS как наиболее близкий по параметрам к сигналу.
Почитал этот стандарт, подогнал все к нему поточнее - картинка супер, гораздо лучше чем с PAL.

Т.е. сейчас у меня 262 строки по 63.5 мкс, из них 4 - вертикальная синхронизация, получается 59,94 Гц что точно соответствует NTSC.

Только видимое вертикальное разрешение упало до 240 строк - теперь под него подгоняю все вычисления.
Аватара пользователя
HarryStar
 
Сообщения: 995
Зарегистрирован: 15 ноя 2010, 13:56
Откуда: Нижний Новгород
прог. языки: С, С++, РНР

Re: Видео-выход на AVR

Сообщение Michael_K » 19 сен 2011, 16:28

Может быть вам это и не надо, но я бы скорее ориентировался на квадратные пиксели...
Ну мало-ли - круглый компас псевдографикой нарисовать или еще что-нибудь такое :)
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Видео-выход на AVR

Сообщение =DeaD= » 19 сен 2011, 16:49

Круглый компас можно и прямоугольными пикселями нарисовать, главное знать соотношение сторон пикселя ;)
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Видео-выход на AVR

Сообщение Michael_K » 19 сен 2011, 16:58

Да это-то понятно... Но имхо неудобно, стрелочки получаются кривые... и все такое :)
Ну может это только мои заморочки :)) А может это и ненужно вовсе в данном случае.

Может быть и вообще псевдографика не нужна, и можно оставить промежутки между знакоместами
(обычно так программировать попроще).
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб

Re: Видео-выход на AVR

Сообщение HarryStar » 19 сен 2011, 20:17

Пикселы конечно квадратные у меня - так удобней хотябы при подготовке изображений в граф редакторе да и вообще я так привык.

Вопрос еще один возник. При отображение на 40" телике пиксель около 1 см х 1 см и при перепадах яркости у него четко видна граница из за не мгновенного и неравномерного спада и подъема. Вопрос: как сделать, чтоб уровни более четко переключались? Поставить ключи на транзисторах? Сейчас у меня ЦАП на резисторах прямо с выходов МК.
Аватара пользователя
HarryStar
 
Сообщения: 995
Зарегистрирован: 15 ноя 2010, 13:56
Откуда: Нижний Новгород
прог. языки: С, С++, РНР

Re: Видео-выход на AVR

Сообщение Michael_K » 19 сен 2011, 21:23

эмиттерный повторитель.
Аватара пользователя
Michael_K
 
Сообщения: 6028
Зарегистрирован: 07 окт 2009, 00:29
Откуда: СПб


Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 13