Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Видеокодек глючит
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Аудио/Видео интерфейсы
torik
Имеется кодек TVP5150AM1, преобразующий аналоговый PAL в ITU656. Кодек подключен к ПЛИС, та к TFT. И он имеет место глючить, а именно какие-то проблемы с цветоопределением. С питанием вроде бы все нормально (запитывал от внешних источников). Вот не понимаю в чем дело. Уж какие только регистры кодека не перебирал...
Документацию прилагаю. Может кто натолкнет на мысль, куда смотреть
Самурай
Цитата(torik @ Aug 18 2009, 11:24) *
Имеется кодек TVP5150AM1, преобразующий аналоговый PAL в ITU656. Кодек подключен к ПЛИС, та к TFT. И он имеет место глючить, а именно какие-то проблемы с цветоопределением. С питанием вроде бы все нормально (запитывал от внешних источников). Вот не понимаю в чем дело. Уж какие только регистры кодека не перебирал...
Документацию прилагаю. Может кто натолкнет на мысль, куда смотреть


Посмотрите кварц с обвязкой, может быть частота ушла. А вообще, смотреть с бОльшей вероятностью нужно сперва в свой собственный код, скорее всего это именно у Вас слетает цветовая синхронизация, Cb и Cr путаете, или Y и Cb/Cr smile.gif. Как происходит декодирование ITU656? Как происходит преобразование YCbCr в RGB? Ну и т.д. И что значит "проблемы с цветоопределением"?
torik
Преобразование YCbCr в RGB делаю проверенным модулем (на другом устройтсве отработано). Незнаю как описать чё за проблемы. Даже когда делаю ч/б видео (команду в кодек даю), наблюдаю пульсации по яркости на светлых объектах...
Попробую убрать емкости у кварца.
aaarrr
Цитата(torik @ Aug 18 2009, 11:24) *
Документацию прилагаю. Может кто натолкнет на мысль, куда смотреть

Лучше бы свою схему и конфигурацию приложили. Проблемы могут быть, например, из-за отсутствия pull-down резисторов (многочисленные NOTE в DS).
torik
Пожалуйста, вот схема всего девайса и видеокодера включительно.
Конфигурация - по адресу 03 пишем 09 = разрешение выхода ITU.

Пробовал кое-что еще инициализаровать:
Код
    0    :    LUT_DATA       <=    16'h0309;
    1    :    LUT_DATA       <=    16'h0400;    //
    2    :    LUT_DATA       <=    16'h0d07;    //
    3    :    LUT_DATA       <=    16'h0f08;    //
    4    :    LUT_DATA       <=    16'h2804;    //
    5    :    LUT_DATA       <=    16'h1b17;    //
    6    :    LUT_DATA       <=    16'h0708;    //
aaarrr
Цитата(torik @ Aug 18 2009, 16:05) *
Конфигурация - по адресу 03 пишем 09 = разрешение выхода ITU.

Запишите 0x29, иначе GPCL будет в воздухе.
torik
Вротмненоги, сделал - изображение вообще стало чернобелым. Ну раз чернобелым, значит не видать и "пульсаций цвета на ярких объектах".
Че еще?
aaarrr
Цитата(torik @ Aug 18 2009, 16:57) *
Че еще?

Еще в схеме нет pull-down'ов на HSYNC/VSYNC/AVID/FID. Попробуйте записать 0x2D.
torik
Эффект тот же - картинка устойчивая, но... чернобелая
aaarrr
Ну, попробуйте еще 18.432 с генератора подать, если сейчас кварц используется.
torik
Цитата
Ну, попробуйте еще 18.432 с генератора подать, если сейчас кварц используется.

Генератора такого, увы, нет у меня (тем более на 1.8В). Но перебрал несколько кварцев, результат тот же.
18.432 = 14.318, верно?
aaarrr
Цитата(torik @ Aug 18 2009, 17:42) *
Генератора такого, увы, нет у меня (тем более на 1.8В). Но перебрал несколько кварцев, результат тот же.

А генерация нормальная? Для некоторых кварцев нужно ставить резистор в параллель.

Цитата(torik @ Aug 18 2009, 17:42) *
18.432 = 14.318, верно?

Да, заработался просто.

Из своего опыта работы с TVP5150 могу вынести только несколько моментов, требующих внимания:
1. Не совсем обычная работа I2C
2. Обязательны pull-down'ы на неиспользуемых выводах (но это должно было исправиться конфигурацией)
3. Важно качество клока и питания
Последние два сказываются на цвете.

Проверьте еще питание и клок, посмотрите Quick Start Guide и FAQ, если еще не смотрели.
torik
Еще. Когда принудительно задаем стандарт PAL - видим сбой синхронизации.

Цитата
клок,

а что там увидишь осциллографом?

Цитата
посмотрите Quick Start Guide и FAQ, если еще не смотрели.

а где? на сайте TI?

Перебрал вручную стандарты - стабильная картинка получалась при стандарте PAL-N.
Цвета нет(

Может, чтобы включить цвет, надо еще какие-то настройки задать? Питание пробовал подавать хорошее отдельно - без толку.
aaarrr
Цитата(torik @ Aug 18 2009, 18:14) *
а что там увидишь осциллографом?

Амплитуду и форму, например.

Цитата(torik @ Aug 18 2009, 18:14) *
а где? на сайте TI?

Да.
torik
Большое спасибо за помощь!
Вы оказались абсолютно правы, когда отправили меня смотреть кварц. FAQ посоветовал тоже самое и я наконец сдался. После замены конденсаторов все пришло в норму.

Теперь начинается борьба с помехой. Но это, наверное, уже к специалистам по импульсным ИП...
aaarrr
Цитата(torik @ Aug 19 2009, 09:39) *
Но это, наверное, уже к специалистам по импульсным ИП...

...или специалистам по трассировке ПП.
torik
Цитата
...или специалистам по трассировке ПП.


Трассировку делал сам. Видеосигнал чистенький, все нормально...

А не подскажете, можно как-то сконфигурировать выход видеокодека, чтобы он показывал, есть сигнал на входе или нет? А то что-то найти не могу.
aaarrr
Цитата(torik @ Aug 20 2009, 11:12) *
А не подскажете, можно как-то сконфигурировать выход видеокодека, чтобы он показывал, есть сигнал на входе или нет? А то что-то найти не могу.

Выводы настраиваются в регистрах 0x03 и 0x08. Программно опросить можно через регистр 0x88.
torik
Цитата
Программно опросить можно через регистр 0x88.

Программно мне не подходит, нужен сигнал с кодека, который остальную систему переведет в режим экономии.

Цитата
Выводы настраиваются в регистрах 0x03 и 0x08.


по поводу 08-ого регистра ошибочка вроде, да?

В регистр 03h записываю 29h, в регистр 0fh бит 1 оставляю равным 0. Это должно означать, что на ноге 27 кодека будет сигнал INTREQ.
Далее разрешаем прерывание по обнаружению видео: в c1h пишем 40h. Но осцилом наблюдаю на выходе "0", хоть убери видео, хоть подай...

Мне надо, чтобы на выходе было 0, когда видео нет и 1, когда видео есть. Можно наоборот.
aaarrr
Цитата(torik @ Aug 20 2009, 14:20) *
по поводу 08-ого регистра ошибочка вроде, да?

Ага, посмотрел мимо. 0x0F, конечно.

Цитата(torik @ Aug 20 2009, 14:20) *
В регистр 03h записываю 29h, в регистр 0fh бит 1 оставляю равным 0. Это должно означать, что на ноге 27 кодека будет сигнал INTREQ.
Далее разрешаем прерывание по обнаружению видео: в c1h пишем 40h. Но осцилом наблюдаю на выходе "0", хоть убери видео, хоть подай...

По умолчанию прерывание работает по низкому уровню (регистр 0xC2).

Цитата(torik @ Aug 20 2009, 14:20) *
Мне надо, чтобы на выходе было 0, когда видео нет и 1, когда видео есть. Можно наоборот.

Тогда логичнее будет вывести horizontal lock status на VSYNC, если он не используется.
torik
Цитата
Тогда логичнее будет вывести horizontal lock status на VSYNC, если он не используется.


Ага, спасибо. Это вполне подошло!
ded19842008
добрый день!....сейчас разбираюсь с микросхемой tvp5150...на плате еще имееться мега8...на ней запустил twi...пытаюсь записать в регистр 0х03 tvp5150 значение 0х09...ничего не получаеться не пойму в чем проблема....частота twi 108 кГц...код пишу в winavr...может поможите чем-нибудь...не поделитесь своим кодом для tvp5150!
aaarrr
Обратите внимание на раздел I2C Timing Requirements в DS. И опишите проблему подробнее.
ded19842008
проблема решилась - 7 бит адресса tvp5150 почему то не передавался....оказалось все просто...он передавался со сдвигом на 1 единицу влево ...баг в программе...спасибо за помощь!!!!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.