Быстрый старт с SPI-камерами Arducam на Arduino
В этом разделе описано только, как запустить камеру на платформе Arduino. Это самый простой способ проверить, работает ли оборудование.
1. Проверьте оборудование
SPI-модули камер Arducam выпускаются в нескольких моделях, у которых разные временные характеристики и функции. Список SPI-камер Arducam:
| Модель | Макрос |
|---|---|
| Arducam Shield Rev.C | ARDUCAM_SHIELD_REVC |
| Arducam Shield V2 | ARDUCAM_SHIELD_V2 |
| Arducam Shield Mini 2MP | //#define OV2640_MINI_2MP |
| Arducam Shield Mini 5MP (версия с FIFO) | //#define OV5642_MINI_5MP |
| Arducam Shield Mini 5MP (с исправлением ошибки bit rotation) | //#define OV5642_MINI_5MP_BIT_ROTATION_FIXED |
| Arducam Shield Mini 2MP Plus | #define OV2640_MINI_2MP_PLUS |
| Arducam Shield Mini 5MP Plus (OV5642) | //#define OV5642_MINI_5MP_PLUS |
| Arducam Shield Mini 5MP Plus (OV5640) | //#define OV5640_MINI_5MP_PLUS |
2. Настройте библиотеку
Перед запуском любого примера библиотеку нужно настроить, иначе при компиляции появится ошибка. Откройте файл memorysaver.h в папке ArduCAM и включите аппаратную платформу и модуль камеры, которые соответствуют вашему оборудованию: для этого закомментируйте или раскомментируйте макроопределения в файле.
Например, для ArduCAM-Mini-2MP раскомментируйте строку #define OV2640_MINI_2MP и закомментируйте все остальные.
А для ArduCAM-Shield-V2 с модулем камеры OV5642 раскомментируйте строки #define ARDUCAM_SHIELD_V2 и #define OV5642_CAM, а все остальные закомментируйте.
Ниже — фрагмент файла memorysaver.h, в котором для примера включена камера Arducam Shield Mini 2MP Plus.
//Step 1: select the hardware platform, only one at a time
//#define OV2640_MINI_2MP
//#define OV3640_MINI_3MP
//#define OV5642_MINI_5MP
//#define OV5642_MINI_5MP_BIT_ROTATION_FIXED
#define OV2640_MINI_2MP_PLUS
//#define OV5642_MINI_5MP_PLUS
//#define OV5640_MINI_5MP_PLUS
//#define ARDUCAM_SHIELD_REVC
//#define ARDUCAM_SHIELD_V2
//Step 2: Select one of the camera module, only one at a time
#if (defined(ARDUCAM_SHIELD_REVC) || defined(ARDUCAM_SHIELD_V2))
//#define OV7660_CAM
//#define OV7725_CAM
//#define OV7670_CAM
//#define OV7675_CAM
//#define OV2640_CAM
//#define OV3640_CAM
//#define OV5642_CAM
//#define OV5640_CAM
//#define MT9D111A_CAM
//#define MT9D111B_CAM
//#define MT9M112_CAM
//#define MT9V111_CAM
//#define MT9M001_CAM
//#define MT9V034_CAM
//#define MT9M034_CAM
//#define MT9T112_CAM
//#define MT9D112_CAM
3. Загрузите пример скетча
Затем откройте Arduino IDE: примеры ArduCAM находятся в меню File → Examples → ArduCAM, как показано на рисунке 1 (на примере Arducam Shield Mini).

Откройте один из примеров и подключите интерфейсы SPI и I2C — особенно выводы CS — к шилду ArduCAM так, как указано в примере. Подробнее о подключении — в руководстве по применению оборудования ArduCAM. Выберите правильный COM-порт и плату Arduino и загрузите скетч, как показано на рисунке 2.

4. Сделайте снимки
Если у вас шилд ArduCAM с ЖК-экраном, после загрузки скетча на экране появится видео в реальном времени. В остальных случаях для захвата изображений нужна хост-программа для отладки под Windows. Подробнее о ней — в разделе «Хост-программа для отладки».