|
|
  |
i.MX53. Не могу считать данные с CSI-порта. |
|
|
|
Nov 22 2012, 12:06
|
Группа: Новичок
Сообщений: 3
Регистрация: 22-11-12
Пользователь №: 74 510

|
Разбираюсь с платой i.MX53. Передо мной поставлено парт. задание принять с камеры, подключенной к CSI, кадр и записать его в память. Решительно не врубаюсь как это сделать.
У меня есть стандартный набор документации: - IMX53AEC.pdf - IMX53ATFS.pdf - IMX53CEC.pdf - IMX53IEC.pdf - IMX53QKSTRTFS.pdf - IMX53QSBRM.pdf - iMX53RM.pdf - IMX53RQKSTRTFS.pdf - IMX53SBRAUTFS.pdf - IMX53SMDHUG.pdf - MX53UG.pdf
И ещё вот такое - i.mx51_linux_vpu_api.pdf (здесь ничего умного для себя пока не нашел)
По-ангийски читаю очень медленно. Поштудировал UG, 20-ю главу (Supporting the i.MX53 Camera Sensor Interface CSI0).
Потом подсказали почитать RM, главу 45 (Image Processing Unit (IPU)). Оттуда узнал, что CSI - это часть IPU, и что надо каким-то образом это IPU сконфигурировать, чтобы данные с CSI шли на AXI (шину данных), т. е. вроде как данные с CSI (через какие-то блоки) должны записываться в оперативку i.MX53.
До этого всю дорогу занимался высокоуровнемым программированием, и, видимо, это обстоятельство стопорит всё дело. Может кто-нибудь подскажет считывал ли он данные с CSI, как это делать, или, на край, что можно почитать на эту тему? Может что-то полезное (вряд ли, конечно) есть на русском языке. Может как-то можно надыбать какие-то примеры (на freescale.com найти ничего не удалось, может опять-таки не умею).
Короче, верю, надеюсь, жду. Заранее спасибо.
|
|
|
|
|
Nov 22 2012, 14:06
|
Знающий
   
Группа: Участник
Сообщений: 745
Регистрация: 28-12-06
Пользователь №: 23 960

|
Цитата(EKoshelev @ Nov 22 2012, 16:06)  Разбираюсь с платой i.MX53. Передо мной поставлено парт. задание принять с камеры, подключенной к CSI, кадр и записать его в память. Решительно не врубаюсь как это сделать. Вы что, пытаетесь организовать закат солнца вручную ??? Бросте эту затею срочно - погибнете. Разве что вы работаете непосредственно в freescale и вам дано задание допилить дрова. Цитата До этого всю дорогу занимался высокоуровнемым программированием, Вот и работайте с V4L2 или что там вместо него в WinCE.
|
|
|
|
|
Nov 22 2012, 19:27
|
Местный
  
Группа: Свой
Сообщений: 231
Регистрация: 7-12-06
Из: Киев
Пользователь №: 23 248

|
Если пытаетесь CSI запустить без оси, тогда на странице i.MX535: i.MX535 Multimedia Applications Processor скачайте IMX53_QSB_OBDS. Там должны быть исходники и на CSI и на какой то сенсор. Если не секрет - с какой платой работаете, чем компилите и отлаживаетесь?
|
|
|
|
|
Nov 23 2012, 05:49
|
Группа: Новичок
Сообщений: 3
Регистрация: 22-11-12
Пользователь №: 74 510

|
SergeyDDD, Ось стоит, Ubuntu 10.04. До сих пор написал только Hellow-World, компилировал g++'ом, отлаживать не приходилось (т. к. тупо не знаю что (и как) ещё писать). Плата i.MX53, проц на плате MC IMX535 DVV1C.
_3m, оставь телефон диллера.
|
|
|
|
|
Nov 23 2012, 06:43
|
Местный
  
Группа: Свой
Сообщений: 231
Регистрация: 7-12-06
Из: Киев
Пользователь №: 23 248

|
Цитата(EKoshelev @ Nov 23 2012, 08:49)  SergeyDDD, Ось стоит, Ubuntu 10.04. До сих пор написал только Hellow-World, компилировал g++'ом, отлаживать не приходилось (т. к. тупо не знаю что (и как) ещё писать). Плата i.MX53, проц на плате MC IMX535 DVV1C. Тогда действительно в LTIB соберите образ линукса для i.MX53 и пользуйтесь SDK для запуска CSI Это будет и быстрее и проще
|
|
|
|
|
Nov 26 2012, 10:05
|
Группа: Новичок
Сообщений: 3
Регистрация: 22-11-12
Пользователь №: 74 510

|
Ну собственно и вопрос весь в том какими именно манипуляциями с CSI можно что-то считать.
На данный момент понял только то, что CSI входит в состав другой сущность (модуля там или я фиг знает) название которой IPU. Кроме прочего это IPU соединено с шиной данных (которая связана с памятью) посредством контроллера IDMAC (входящего в состав всё той же IPU). CSI и IDMAC внутри IPU связаны. Но не непосредственно, а через некоторые узлы. Вот.
Можно предположить, что если сконфигурировать IPU (или, что одно и тоже, узлы внутри IPU), то это IPU при приёме на CSI каких-либо данных будет писать их прямо в память платы i.MX53. А может быть механизм несколько иной.
Короче, когда я создавал топик и спрашивал "как это сделать" я имел в виду как раз то, какими конкретно API-функциями платы нужно воспользоваться, чтобы осуществить чтение. Ну это в идеале. На край можно предложить название документа, в котором об этом можно прочитать.
|
|
|
|
|
Nov 26 2012, 12:20
|
Местный
  
Группа: Свой
Сообщений: 231
Регистрация: 7-12-06
Из: Киев
Пользователь №: 23 248

|
Цитата(EKoshelev @ Nov 26 2012, 13:05)  Ну собственно и вопрос весь в том какими именно манипуляциями с CSI можно что-то считать... Я ведь дал ссылку на IMX53_QSB_OBDS. Там весь исходный код для запуска периферии iMX53 ручками. Для запуска CSI под линуксом скачайте документы L2.6.35_11.09.01_ER_docs.tar.gz для iMX53. Из этого архива воспользуйтесь документом mx53_linux.pdf. Найдите главу Chapter 11 Image Processing Unit (IPU) Drivers Там найдете описание драйвера и ссылки на исходники в BSP Думаю что этого более чем достаточно
Сообщение отредактировал IgorKossak - Nov 26 2012, 13:33
Причина редактирования: избыточное цитирование
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|