Камеры с SPI для плат STM32 без DCMI: Arducam Mini на 2 Мп и OV5642 на 5 Мп
У ранних плат STM32 нет интерфейса камеры

С 2007 года STMicroelectronics расширила линейку 32-разрядных микроконтроллеров на ядрах Arm Cortex от STM32 F1 до 17 серий и более чем 1100 отладочных плат. Такое изобилие отпугивает многих любителей и разработчиков, особенно тех, кто никогда не работал с микроконтроллерами.
Неприятная правда о микроконтроллерах STM32: до 2017 года, когда официально появился цифровой интерфейс камеры (DCMI) и стало возможно подключать недорогие камеры вроде OV7670 или STM32F4DIS-CAM, рабочего способа использовать камеры с параллельным интерфейсом на ранних платах STM32 не было. На ранних сериях F1, L1, F0, F3, L0 и большинстве микросхем F2/F4 машинное зрение было фактически недоступно: статической ОЗУ на этих платах слишком мало, чтобы обработать сырые данные с сенсора.
С точки зрения инженера-схемотехника, чтобы запустить камеру с параллельным интерфейсом на микроконтроллере без её поддержки, нужен быстрый интерфейс, а данные с камеры придётся предварительно обрабатывать.
Arducam разрабатывает камеры для микроконтроллеров с 2012 года и решила эту задачу около девяти лет назад (на момент публикации). И это была задача посложнее: по данным Arducam, компания сама запустила сенсоры разрешением до 5 Мп на 8-разрядных микросхемах Atmel, которые по характеристикам ещё слабее самых медленных STM32 F1 первого поколения.
Проверенная серия камер Arducam с SPI изначально создавалась для плат Arduino, затем была перенесена на BBC Micro:bit и Raspberry Pi Pico, а теперь работает со всем семейством микроконтроллеров STM32. На момент публикации Arducam планировала поддержку и других распространённых микроконтроллеров — в том числе плат ESP, Nordic и Renesas.
Камеры Arducam подключаются к любым микроконтроллерам STM32 через SPI и I2C — по одной или несколько

Серия камер Arducam с SPI — универсальный способ подключить сенсоры высокого разрешения к любому микроконтроллеру STM32. Интерфейс I2C служит для инициализации камеры и управления ею, а порт SPI (последовательный периферийный интерфейс) принимает поток данных.
Преимущества такого подхода:
- По данным Arducam, у SPI самая высокая пропускная способность среди интерфейсов микроконтроллера — её хватает для быстрых сигналов модулей камер.
- SPI и I2C дают камерам максимальную совместимость: сенсор можно подключить к плате без отдельного интерфейса камеры.
- Решение работает с мультиплексорами камер Arducam для SPI — к одной плате STM32 можно подключить больше четырёх модулей.
- Дополнительный буфер кадра на плате (от 8 до 32 МБ) позволяет хранить больше снимков высокого разрешения и видеопотоки MJPEG.
Камеры для плат STM32 без DCMI: Arducam OV2640 на 2 Мп и OV5642 на 5 Мп

По данным Arducam, для плат STM32 без DCMI модули OV2640 на 2 Мп и OV5642 на 5 Мп — единственные камеры, которые сочетают высокие характеристики и работу нескольких камер одновременно. Эти два модуля открывают для задач компьютерного зрения всё семейство из более чем 1000 микроконтроллеров STM32.
OV2640 на 2 Мп и OV5642 на 5 Мп для всех серий отладочных плат STM32


- Arducam 5MP Plus — мини-модуль камеры OV5642 с SPI (шилд) для Arduino UNO, Mega2560 и Raspberry Pi Pico
- Arducam Mini 2MP Plus — модуль камеры OV2640 с SPI для Arduino UNO, Mega2560 и Raspberry Pi Pico
Кроме этих двух камер, Arducam делает заказные камеры с SPI на любых сенсорах и для любых микроконтроллеров. Среди выполненных проектов — камера на чувствительном монохромном сенсоре AR0130 для астрономии и камера на сенсоре IMX225 для сверхслабого освещения в научных задачах.
Как подключить модули OV2640 и OV5642 к любой плате STM32
Пошаговая инструкция — в статье «Камеры Arducam Mini с SPI на 2 и 5 Мп и STM32» (опубликована 24 мая 2021 года).
Arducam и STM32: камеры с низким энергопотреблением для умного IoT и Индустрии 4.0

Камеры для микроконтроллеров STM32 без DCMI раньше подключить было нельзя — Arducam это изменила. Теперь на STM32 можно строить системы встраиваемого машинного зрения, а вместе с машинным обучением на микроконтроллерах (TinyML) — множество умных устройств IoT с машинным зрением.
Камеры Arducam с SPI хорошо подходят для задач с ограниченными ресурсами. Сверхэкономичные платы STM32 и технологии LPWAN, например LoRa и NB-IoT, позволяют быстро развернуть большие сети связанных между собой камер. Такие сети дают данные в реальном времени для принятия решений и предиктивной аналитики. Это полезно во многих отраслях — на производстве, в сельском хозяйстве и т. д., — где нужны учёт и отслеживание активов. В режиме глубокого сна такая камера потребляет ток порядка наноампер и может годами работать от батареи почти без обслуживания.


