Перейти к содержанию
    

Пытаюсь подружить cyclone & камера OV7670

Здравствуйте!

Не могу завести камеру, вывод на монитор. Показывает как телевизор без антенны. При повороте камеры "изображение" меняется. Модуль вывода видео работает (сделал вывод цветных полос для проверки). Код простой, без кадрового буфера. 

always@(posedge PCLK_cam)
    begin 
    
    case(FSM_state)
    
    WAIT_FRAME_START: begin //wait for VSYNC
       FSM_state <= (!VSYNC_cam) ? ROW_CAPTURE : WAIT_FRAME_START;
       frame_done <= 0;
       pixel_half <= 0;
    end
    
    ROW_CAPTURE: begin 
       FSM_state <= VSYNC_cam ? WAIT_FRAME_START : ROW_CAPTURE;
       frame_done <= VSYNC_cam ? 1 : 0;
       pixel_valid <= (HREF_cam && pixel_half) ? 1 : 0; 
       if (HREF_cam) begin
           pixel_half <= ~ pixel_half;
           if (pixel_half) data2fifo[7:0] <= data_cam;
           else data2fifo[15:8] <= data_cam;
       end
    end
    
    
    endcase
    end
// ***************    

always @( posedge clk25)  
     begin
        pixel_data  <=     data2fifo;
 end

Что-то упустил видимо. Помогите в нужном направлении пожалуйста.

Спасибо! 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Без кадрового буфера работать не будет. А в идеале тройная буфферизация.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посчитайте скорость развертки экрана и скорость поступления данных от камеры.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Почитал что за камера и что выдает https://habr.com/ru/articles/283488/

 

Мысль номер раз: я бы сделал симуляцию с этим форматом, в точности выставив все тайминги. Такое можно отладить в симуляции, тестбенч генерирует сигнал, и смотрим как отрабатывает модуль в симуляции, правильно он ловит кадры, с какой частотой ловит, успевает ли, есть ли затыки и провалы потока и прочее. Я так SDI отлаживал, а то что на картинке похоже отдаленно на BT-656, но не суть.

 

Тестбенч можно не только для симуляции приспособить, а как встроенный само-тест с теми же самыми полосками, то есть синтезируемый. И переключать между реальным источником из вне и этим встроенным генератором изображения в формате таком же как у OV7670.

 

Ну и счетчики можно кинуть какие нибудь в UART, точно ли между HREF и прочими сигналами нужное время, считать число таких импульсов в секунду и тоже выводить в UART. Я обычно заморачиваюсь на UART и кидаю в него события с некоторыми заголовками через FIFO, что помогает отлаживать всё, в том числе события с timestamp - UART это сила (но можно и signal tap).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тут проблема в том, что камера выдает данные медленнее чем идет один период развертки экрана. Даже при разрешении экрана 640*480. Без накопления кадра в кадровом буфере нормально выдать картинку мне кажется нереальным. Более того, даже одного буфера может быть мало для нормального вывода. Минимум 2 буфера. А в идеале полноценная тройная буфферизация. Я когда игрался с этой камерой именно так и выводил изображение.  Но само по себе изображение шумное. По-хорошему надо ещё и обработку изображения делать. Ну или я недостаточно изучил даташит на камеру и не совсем корректно настроил её.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

17 hours ago, PICNICK said:

21891ВМ12Я, каким симулятором пользуетесь? Icarus пойдет? 

Спасибо!

Я бы использовал Modelsim Altera Starter Edition. Потому что, как верно выше заметили, когда появится элемент памяти для двойной буферизации или большого FIFO, то уже может не получиться подключить модель элемента блочной памяти в Icarus Verilog. Но мысли "а не задействовать ли симулятор" - очень правильные, точно быстро найдете причины проблем, если они в логике а не сбоях модуля камеры как такового.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...