Перейти к основному содержимому

Использование MIPI камер ov13850 и ov13855

В настоящее время плата разработки поддерживает две камеры с интерфейсом MIPI: OV13850 и OV13855. Конкретные изображения показаны ниже:

  • 13-мегапиксельная камера OV13850 с интерфейсом MIPI
13-мегапиксельная камера OV13850 с интерфейсом MIPI
  • 13-мегапиксельная камера OV13855 с интерфейсом MIPI
13-мегапиксельная камера OV13855 с интерфейсом MIPI

Обе камеры подключаются к одной плате, но к разным разъемам. Кабель FPC показан на рисунке ниже. Обратите внимание, что кабель FPC имеет направление: конец с надписью TO MB должен быть подключен к порту камеры на плате разработки, а конец с надписью TO CAMERA должен быть подключен к плате адаптера камеры.

Кабель FPC

На плате адаптера камеры имеется три интерфейса камер. Можно использовать одновременно только один из интерфейсов, как показано на рисунке ниже:

  • Интерфейс 1 для подключения камеры OV13850.
  • Интерфейс 2 для подключения камеры OV13855.
  • Интерфейс 3 не используется, поэтому просто игнорируйте его.
Адаптер камеры

На макетной плате имеется два интерфейса камеры, пронумерованные CAM1 и CAM2, и их расположение показано ниже:

Порты на плате для подключения камеры

Способ подключения платы адаптера к плате разработки показан ниже. Обратите внимание, что интерфейсы CAM1 и CAM2 помогут работать одновременно как с одинаковыми камерами, так и с камерами разных моделей

Подключение к CAM1
Подключение к CAM2

После подключения камеры к плате разработки мы можем использовать следующий метод проверки камеры:

  • Используйте следующую команду, чтобы убедиться, что модуль ядра armcb_isp_v4l2.ko загрузился нормально
lsmod | grep isp_v4l2

Вывод в консоли

Проверка загрузки armcb_isp_v4l2.ko

Укажите параметры подключения камеры:

  • При тестировании одной камеры, подключенной к CAM1 установите в isp-daemon.service параметр -s 0, для одной камеры в CAM2 - -s 1, а если используются оба порта, то параметр -m 2. После изменения isp-daemon.service перезагрузите систему, чтобы изменения вступили в силу.
sudo vim /lib/systemd/system/isp-daemon.service

Пример для одной камеры в CAM1

Проверка загрузки armcb_isp_v4l2.ko

Убедитесь, что isp_app запущен. Если вы видите вывод команды /usr/bin/isp_app, значит, он работает должным образом.

pgrep -a isp_app

Запустите скрипт v4l2_videos.sh, чтобы убедиться, что в выводе отображаются два устройства: armcb-00-vid-cap и armcb-01-vid-cap.

  • Ниже показан вывод для ядра Linux 6.1, где armcb-00-vid-cap (CAM1) соответствует /dev/video1, а armcb-01-vid-cap (CAM2) - /dev/video3.
Вывод устроств в Linux 6.1
  • Для ядра Linux 6.6 устройство armcb-00-vid-cap (CAM1) соответствует /dev/video9, а armcb-01-vid-cap (CAM2) - /dev/video8.
Вывод устроств в Linux 6.6

Откройте другой терминал на рабочем столе и запустите скрипт проверки камеры.

  • Подключите только одну камеру и проверьте интерфейс CAM1 с помощью следующей команды:
cam1_test.sh
  • Подключите только одну камеру к интерфейсу CAM2 и проверьте ее работу командой:
cam2_test.sh
  • Подключите две камеры и проверьте интерфейсы CAM1 и CAM2, используя следующую команду:
dual_cam_test.sh

После ввода команды вы увидите предварительный просмотр изображения с камеры. Обратите внимание, что при тестировании двух камер изображения будут перекрываться. Используйте мышь, чтобы перетащить окно предварительного просмотра одной камеры, чтобы увидеть изображение с другой камеры.

Если камера не отображает изображение, проверьте, правильность подключения разъема камеры к плате.