Jump to content

    

LVDS данные с КМОП-матрицы

Всем привет! Имеется отладочная плата с сенсором MT9v124. При подаче питания на выходе LVDS  следующий непонятный сигнал (см. Прикрепленные) . Сигнал снимался с линий LVDS относительно друг друга. Причем переключение на   плате джмапера Standby mode никаких изменений не вызывает. Ток потребления 10 мА (который по всей видимости потребляет только кварц, потому что при его отключении ток падает до 0). Возможно требуется прописать в регистр матрицы какую-то команду через I2C, чтоб она  "завелась"? Описание регистров  (удобнее всего смотреть в браузере internet explore) и  считанные данные с регистров матрицы на плате  тоже прикрепляю.

MT9V124-REV2.xsdat

EVBUM2468-D.PDF

MT9V124-D-1101616.pdf

27127.jpg

unnamed.jpg

Share this post


Link to post
Share on other sites

С этой матрицей дело не имел. Но расскажу как я обычно запускаю новые сенсоры. Сначала проверяю, что работает I2C/SPI. Что регистры пишутся/читаются правильно. Сталкивался с тем, что ID матрицы не читается пока не выведешь её из standby mode.

Потом проверяю что приходит по LVDS. Если уж и смотреть осциллографом LVDS, то не на развертке 5 ms. Смотрю, например, анализатором какие приходят слова. Добиваюсь сдвигом бит, чтобы слова приходили похожие на полезный сигнал. Т.е значения данных меняются от света. Или ищу заведомо известные значения слов, например, используемые как маркеры начала/конца строки. Или если в слове есть известные биты, то по ним определяю, что правильно синхронизовался.

P.S Первым делом конечно же проверяю тестером все напряжения питания, напряжение смещения LVDS. Осциллографом тактовые и другие сигналы.

Share this post


Link to post
Share on other sites
В 19.04.2019 в 07:28, dinam сказал:

С этой матрицей дело не имел. Но расскажу как я обычно запускаю новые сенсоры. Сначала проверяю, что работает I2C/SPI. Что регистры пишутся/читаются правильно. Сталкивался с тем, что ID матрицы не читается пока не выведешь её из standby mode.

Потом проверяю что приходит по LVDS. Если уж и смотреть осциллографом LVDS, то не на развертке 5 ms. Смотрю, например, анализатором какие приходят слова. Добиваюсь сдвигом бит, чтобы слова приходили похожие на полезный сигнал. Т.е значения данных меняются от света. Или ищу заведомо известные значения слов, например, используемые как маркеры начала/конца строки. Или если в слове есть известные биты, то по ним определяю, что правильно синхронизовался.

P.S Первым делом конечно же проверяю тестером все напряжения питания, напряжение смещения LVDS. Осциллографом тактовые и другие сигналы.

Да, регистры пишутся/читаются правильно через I2C. Пока непонятно какие значения в регистрах нужно выставить и где. Прописал для PLL в регистрах pll_dividers и pll_p_dividers  значения, взятые из в программе MT9v124 Register Wizard специально для этой матрицы (на картинке), но пока безрезультатно. В техподдержке написали "Initialization file with default register settings is included in this software package". Насколько я понимаю это файл с описанием регистров, которые прикреплял ранее , но есть еще INI файл, в котором  "The [Demo Initialization] section contains all optimized register settings for running the sensor in the demo environment" (тоже прикрепляю) . Пока не могу понять  как применить его по назначению 

  

MT9V124-REV2.ini

1.jpg

Share this post


Link to post
Share on other sites
В ‎19‎.‎04‎.‎2019 в 07:28, dinam сказал:

С этой матрицей дело не имел. Но расскажу как я обычно запускаю новые сенсоры. Сначала проверяю, что работает I2C/SPI. Что регистры пишутся/читаются правильно. Сталкивался с тем, что ID матрицы не читается пока не выведешь её из standby mode.

Потом проверяю что приходит по LVDS. Если уж и смотреть осциллографом LVDS, то не на развертке 5 ms. Смотрю, например, анализатором какие приходят слова. Добиваюсь сдвигом бит, чтобы слова приходили похожие на полезный сигнал. Т.е значения данных меняются от света. Или ищу заведомо известные значения слов, например, используемые как маркеры начала/конца строки. Или если в слове есть известные биты, то по ним определяю, что правильно синхронизовался.

P.S Первым делом конечно же проверяю тестером все напряжения питания, напряжение смещения LVDS. Осциллографом тактовые и другие сигналы.

Запустилась)) Проблема была в банальной невнимательности. После задания настроек для PLL и timing setting нужно было записать одну команду для запуска процессора матрицы :dash2:

Спойлер

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now