|
LPC2138 vs видеосигнал, ОЧЕНЬ нужна помощь... |
|
|
|
 |
Ответов
|
Jun 14 2007, 10:19
|

Местный
  
Группа: Свой
Сообщений: 387
Регистрация: 20-12-06
Из: Obninsk
Пользователь №: 23 719

|
Цитата(tolik_zp @ Jun 13 2007, 17:48)  Проблема в том, что: 1) не удается засинхронизироваться от видеосигнала (вход в прерывание - величина не постоянная); 2) не хватает скорости порта, чтобы выводить нужную мне информацию (проц не /01) 1) Считаешь время прошедшее с проедыдущего прерывания. Если больше 48мкс - это строчная, если меньше - кадровая. Схема выделения в аттаче. 2) В свое время был сделан титлер на АТ90S2313 10Мhz. Все прекрасно успевал. Выводил текст наложением на видеосигнал.
Прикрепленные файлы
SYNC.zip ( 9.79 килобайт )
Кол-во скачиваний: 83
|
|
|
|
|
Jun 14 2007, 10:30
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 2-08-06
Пользователь №: 19 265

|
Цитата(KAlex @ Jun 14 2007, 13:19)  1) Считаешь время прошедшее с проедыдущего прерывания. Если больше 48мкс - это строчная, если меньше - кадровая. Схема выделения в аттаче. 2) В свое время был сделан титлер на АТ90S2313 10Мhz. Все прекрасно успевал. Выводил текст наложением на видеосигнал. спасибо, такая схема у меня присутствует на макете, прерыванием выделяю поля и активные строки. но даже из бесконечного цикла вход в прерывание выполняется через различное время, в результате чего при выводе картинки я получаю гребенку, ползущую вверх. соответственно возникают проблемы и с синхронизацией ацп при записи кадра.
|
|
|
|
|
Jun 14 2007, 10:47
|

Местный
  
Группа: Свой
Сообщений: 387
Регистрация: 20-12-06
Из: Obninsk
Пользователь №: 23 719

|
Цитата(tolik_zp @ Jun 14 2007, 14:30)  но даже из бесконечного цикла вход в прерывание выполняется через различное время, в результате чего при выводе картинки я получаю гребенку, ползущую вверх. соответственно возникают проблемы и с синхронизацией ацп при записи кадра. Возможно не учитываешь разницу между четными и нечетными полями. Отсюда и гребенка. У меня алгоритм такой: ловлю первый кадровый, далее следует еше несколько - пропускаем, как только попался строчный - начинаем отсчет активных строк. Еше возможно проскакивают ложные импульсы из за замусоренного сигнала. Лечится подключением по входу конденсатора на землю на 470р.
|
|
|
|
|
Jun 14 2007, 11:05
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 2-08-06
Пользователь №: 19 265

|
Цитата(KAlex @ Jun 14 2007, 13:47)  Возможно не учитываешь разницу между четными и нечетными полями. Отсюда и гребенка. У меня алгоритм такой: ловлю первый кадровый, далее следует еше несколько - пропускаем, как только попался строчный - начинаем отсчет активных строк. Еше возможно проскакивают ложные импульсы из за замусоренного сигнала. Лечится подключением по входу конденсатора на землю на 470р. как же не учитывать, если разница в пол строки  я делал генератор синхроимпульсов через модуль сравнения и прерывания. в этом же прерывании дергал ногами - генерил синхроимпульсы и вертикальные полосы, естесственно получал гребенку. переделал генератор с прерываний на полностью программный - эффект исчез, но "точку" шириной менее пяти миллиметров на диагонали 14" так и не получил, думаю что из-за медленного порта. Цитата(rat @ Jun 14 2007, 13:49)  Несомненно справится, и даже на меньшей частоте, поймите, дело не в мегагерцах, а в разнице по сути между ПЛИС и процами, процы есть вещь последовательная, а ПЛИС за 1 такт может любой "огород сгородить". Блэкфин без ПЛИСа можно поставить, если Вы не собираетесь делать еще что-то серьезное, кроме врезки, да и последущее развитие и усложнение проекта в будущем будет под вопросом, потому как задачи будут "толкаться за время". Поставьте ПЛИС и, при любых усложнениях в последствии, Вы будете иметь гарантированные времянки. Строго говоря, это стратегия разработок - на потоках ПЛИСы, на математике и сервисе - процы. Кроме врезки необходимо тактировать АЦП и ОЗУ для оцифровки сигнала, реализовать простенький детектор движения, записать кадр в MMC-карту, потом считать и вывести на экран тактированием ОЗУ и R2R ЦАПа. Если зватит времени - добавится еще и сжатие в JPEG. думаю, что самая критичная к времени задача - именно синхронизация от внешней синхросмеси (не считая сжатия). Ну а по мере усложнения проекта ПЛИС может быть и добавится. Я все-таки с ними еще не работал по серьезному, только схемы рисовал, так что изучение может занять достаточно много времени, учитывая их сомнительную полезность в текущем проекте. Ну а далее, естественно, и до ПЛИСов доберусь.
|
|
|
|
|
Jun 14 2007, 11:09
|

Местный
  
Группа: Свой
Сообщений: 497
Регистрация: 9-06-05
Из: Новосибирск
Пользователь №: 5 852

|
Цитата(tolik_zp @ Jun 14 2007, 18:05)  как же не учитывать, если разница в пол строки  я делал генератор синхроимпульсов через модуль сравнения и прерывания. в этом же прерывании дергал ногами - генерил синхроимпульсы и вертикальные полосы, естесственно получал гребенку. переделал генератор с прерываний на полностью программный - эффект исчез, но "точку" шириной менее пяти миллиметров на диагонали 14" так и не получил, думаю что из-за медленного порта. Кроме врезки необходимо тактировать АЦП и ОЗУ для оцифровки сигнала, реализовать простенький детектор движения, записать кадр в MMC-карту, потом считать и вывести на экран тактированием ОЗУ и R2R ЦАПа. Если зватит времени - добавится еще и сжатие в JPEG. думаю, что самая критичная к времени задача - именно синхронизация от внешней синхросмеси (не считая сжатия). Ну а по мере усложнения проекта ПЛИС может быть и добавится. Я все-таки с ними еще не работал по серьезному, только схемы рисовал, так что изучение может занять достаточно много времени, учитывая их сомнительную полезность в текущем проекте. Ну а далее, естественно, и до ПЛИСов доберусь. ПЛИС, батенька, только ПЛИС, у Вас слишком много задач.
|
|
|
|
|
Jun 14 2007, 11:20
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 2-08-06
Пользователь №: 19 265

|
Цитата(rat @ Jun 14 2007, 14:09)  ПЛИС, батенька, только ПЛИС, у Вас слишком много задач. расскажите пожалуйста поподробнее, почему в данном случае нельзя обойтись без ПЛИС? какие на него надо будет возложить функции, с которыми не справится DSP?
|
|
|
|
|
Jun 14 2007, 11:43
|

Местный
  
Группа: Свой
Сообщений: 387
Регистрация: 20-12-06
Из: Obninsk
Пользователь №: 23 719

|
Цитата(tolik_zp @ Jun 14 2007, 15:20)  расскажите пожалуйста поподробнее, почему в данном случае нельзя обойтись без ПЛИС? какие на него надо будет возложить функции, с которыми не справится DSP? ПЛИС: 1.Снимает сигнал с АЦП, кладет в ОЗУ. При необходимости сжимает, кладет во флеш или др. носитель. 2. Раскрутка видео из ОЗУ. 3. Наложение OSD. 4. Доступ ЦП к ОЗУ. (рисуем в ОSD, детектор движения и пр.) 5. При желании реализуются функции зум, сглаживание и пр. Прелесть в том, что делается это все в нескольких потоках, никоим образом не мешая друг другу. Цитата(tolik_zp @ Jun 14 2007, 15:32)  у меня стоит задача сделать что-то подобное ASV-MF05. на сколько мне известно, в нем Вы обошлись без блэкфинов, ПЛИСов...  Там всем рулит SX48 тактовая 40М. Но только отдельные ч\б кадры. 512х256 точек. В сквозняке ч\б меню на 256х256 точек наложением(врезкой) из ОЗУ.
|
|
|
|
|
Jun 14 2007, 12:03
|
Частый гость
 
Группа: Участник
Сообщений: 127
Регистрация: 2-08-06
Пользователь №: 19 265

|
Цитата(KAlex @ Jun 14 2007, 14:43)  ПЛИС: 1.Снимает сигнал с АЦП, кладет в ОЗУ. При необходимости сжимает, кладет во флеш или др. носитель. 2. Раскрутка видео из ОЗУ. 3. Наложение OSD. 4. Доступ ЦП к ОЗУ. (рисуем в ОSD, детектор движения и пр.) 5. При желании реализуются функции зум, сглаживание и пр. Прелесть в том, что делается это все в нескольких потоках, никоим образом не мешая друг другу. Там всем рулит SX48 тактовая 40М. Но только отдельные ч\б кадры. 512х256 точек. В сквозняке ч\б меню на 256х256 точек наложением(врезкой) из ОЗУ. С одной стороны - надо сделать быстро, пусть и просто. С другой стороны - еще больше хочется сделать что-нибуть более стоящее, но боюсь что не успею в срок, влезая в незнакомую для меня область. Говорят, что на нормальное освоение плис нужно не менее месяца. Это не считая того, что в ЦОС я неграмотен. Да еще и делаю практически все "на коленке", из приборов - полуубитый С1-81 и моя голова. Цитата(GetSmart @ Jun 14 2007, 14:47)  По-моему всё абсолютно без проблем можно сообразить на арме. Непостоянная задержка входа в прерывание - совсем не проблема. Так или иначе строчную синхронизацию нужно делать через программный ФАПЧ. как сделать ФАПЧ, если я не могу с уверенностью сказать, когда пришел строчный синхроимпульс? Где про это почитать?
Сообщение отредактировал tolik_zp - Jun 14 2007, 12:18
|
|
|
|
|
Jun 14 2007, 12:25
|

Местный
  
Группа: Свой
Сообщений: 387
Регистрация: 20-12-06
Из: Obninsk
Пользователь №: 23 719

|
Цитата(tolik_zp @ Jun 14 2007, 16:03)  как сделать ФАПЧ, если я не могу с уверенностью сказать, когда пришел строчный синхроимпульс? Никаких ФАПЧей не нужно. С той моей схемки идет прекрасный сигнал. Можно даже увидить на полуубитом С1-81. Подаешь его на ногу проца. Конфигурируешь прерывания по порту на спад фронта. Если есть другие прерывания - устанавливаем наивысший приоритет, либо вообще запрещаем(про вложенные прерывания тут недавно было). В прерывании считываем и обнуляем таймер. Смотрим что получилось, кадровый или строчный. Все.
|
|
|
|
Сообщений в этой теме
tolik_zp LPC2138 vs видеосигнал Jun 13 2007, 13:48 Abo Цитата(tolik_zp @ Jun 13 2007, 17:48) Доб... Jun 13 2007, 14:19 tolik_zp Цитата(Abo @ Jun 13 2007, 17:19) Если оче... Jun 13 2007, 14:42  Abo Цитата(tolik_zp @ Jun 13 2007, 18:42) spi... Jun 13 2007, 15:02   tolik_zp Цитата(Abo @ Jun 13 2007, 18:02) Там есть... Jun 13 2007, 15:11    KAlex Цитата(tolik_zp @ Jun 13 2007, 19:11) воб... Jun 14 2007, 11:13     tolik_zp Цитата(KAlex @ Jun 14 2007, 14:13) Делаем... Jun 14 2007, 11:32 rezident ИМХО лучше всего PIP (Picture-In-Picture) реализов... Jun 13 2007, 15:16 tolik_zp чтобы не мудрить, вопрос 2:
реально ли применить д... Jun 13 2007, 15:38 etoja Блэкфин может сжимать такие картинки со скоростью ... Jun 14 2007, 03:10 Alex03 А чем ПЛИС то не нравится?
Внешняя шина проца на П... Jun 14 2007, 03:48 tolik_zp Цитата(Alex03 @ Jun 14 2007, 06:48) А чем... Jun 14 2007, 08:26  rat Цитата(tolik_zp @ Jun 14 2007, 15:26) тог... Jun 14 2007, 08:40   tolik_zp Цитата(rat @ Jun 14 2007, 11:40) У меня в... Jun 14 2007, 08:44    rat Цитата(tolik_zp @ Jun 14 2007, 15:44) а к... Jun 14 2007, 08:56     tolik_zp Цитата(rat @ Jun 14 2007, 11:56) Циклон, ... Jun 14 2007, 09:29      rat Цитата(tolik_zp @ Jun 14 2007, 16:29) afa... Jun 14 2007, 09:34       tolik_zp Цитата(rat @ Jun 14 2007, 12:34) Малацы, ... Jun 14 2007, 10:05        rat Цитата(tolik_zp @ Jun 14 2007, 17:05) мне... Jun 14 2007, 10:34         tolik_zp Цитата(rat @ Jun 14 2007, 13:34) Поставьт... Jun 14 2007, 10:39          rat Цитата(tolik_zp @ Jun 14 2007, 17:39) блэ... Jun 14 2007, 10:49      rat Цитата(tolik_zp @ Jun 14 2007, 18:20) рас... Jun 14 2007, 11:26         tolik_zp Цитата(KAlex @ Jun 14 2007, 15:25) Никаки... Jun 14 2007, 12:31          KAlex Цитата(tolik_zp @ Jun 14 2007, 16:31) Это... Jun 14 2007, 12:41           tolik_zp Цитата(KAlex @ Jun 14 2007, 15:41) Да хот... Jun 14 2007, 12:54            rat Цитата(tolik_zp @ Jun 14 2007, 19:54) На ... Jun 15 2007, 05:26 rat Цитата(KAlex @ Jun 14 2007, 17:19) 1) Счи... Jun 14 2007, 10:40 GetSmart По-моему всё абсолютно без проблем можно сообразит... Jun 14 2007, 11:47 GetSmart Реакция на FIQ от (с запасом) 3 до 30 тактов проца... Jun 14 2007, 12:40 GetSmart Цитата(KAlex)Да хоть 3000. Но оно всегда будет одн... Jun 14 2007, 13:14 tolik_zp Цитата(GetSmart @ Jun 14 2007, 16:14) 213... Jun 14 2007, 14:12 GetSmart Из флэша можно дёргать с теми же 2-3 тактами. Нужн... Jun 14 2007, 19:25 tolik_zp Цитата(GetSmart @ Jun 14 2007, 22:25) Из ... Jun 15 2007, 06:12 proba может это оффтоп, но аналогичное устроиство зделан... Jun 15 2007, 06:25 tolik_zp Цитата(proba @ Jun 15 2007, 09:25) может ... Jun 15 2007, 06:32 KAlex Цитата(proba @ Jun 15 2007, 10:25) может ... Jun 15 2007, 06:38
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|