Ваша плата: aipi cam d200 з модулем ai-m61-32s на базі процесора BL618.
Ця плана не має жодного відношення до ESP32 (хоча функціонал у них майже такий самий)
| Задній вид | Передній вид |
|---|---|
Перш ніж зануритися в процес встановлення, важливо зрозуміти роль ключових інструментів, які ми будемо використовувати.
SDK — це набір інструментів, бібліотек, документації та прикладів коду, необхідних для розробки програмного забезпечення під конкретну апаратну платформу (наприклад, чип BL618).
Його роль: SDK містить спеціалізований компілятор (toolchain), який знає, як перетворити ваш код на інструкції, зрозумілі саме цьому процесору. Без SDK ви не зможете “говорити” з чипом.
Arduino IDE — чудовий інструмент для швидкого старту, але він часто надто сильно абстрагує апаратне забезпечення.
Git — це система контролю версій. Вона дозволяє відстежувати зміни в коді, повертатися до попередніх станів і, головне, коректно завантажувати великі проєкти з віддалених репозиторіїв.
Його роль: Ми використовуємо команди git clone та git submodule для того, щоб точно скопіювати весь SDK (який складається з багатьох частин) на ваш комп’ютер і гарантувати, що всі залежності будуть завантажені правильно.
Також нам знадобиться консоль Git Bash для виконання всіх команд.
Процес перетворення вашого коду на функціональну програму на чипі складається з наступних кроків:
make. Спеціальний компілятор (із SDK) перетворює вихідний код на бінарний файл (.bin), зрозумілий процесору BL618.make flash. Програма-завантажувач використовує USB-UART конвертер, щоб фізично записати бінарний файл у пам’ять чипа, переводячи його перед цим у режим прошивки (flash).C/C++ IntelliSense, debugging, and code browsing. (Від Microsoft)Рекомендовані налаштування Git:
Default Editor. Vim складний для новачків, краще поставити у налаштуванні Visual Studio Code.
Створіть папку для проєктів, де НЕ БУДЕ кирилиці⚠️ або пробілів.
Приклад: D:/code/lab-camera
Всі інструкції базовані на китайських інструкціях з сайту https://bbs.ai-thinker.com/forum.php?mod=viewthread&tid=282&extra=page%3D1 плюс власні покращення.
Відкрийте Git Bash у створеній папці (D:/code/lab-camera/) та виконайте наступні команди:
git clone https://github.com/Ai-Thinker-Open/AiPi-Open-Kits.git -b AiPi-aiThinkerCloud --depth 1
cd AiPi-Open-Kits/
git submodule update --init --recursive --progress --depth 1
Залежно від якості інтернет-з’єднання цей процес може затягнутися на 5-10хв. Репозиторій качаєься напряму з Китаю…
AiPi-Open-Kits)
git clone https://github.com/bouffalolab/toolchain_gcc_t-head_windows.git -b master --depth 1
Додайте до системної змінної PATH наступні три шляхи (відносно вашої папки AiPi-Open-Kits/):
.../AiPi-Open-Kits/toolchain_gcc_t-head_windows/bin.../AiPi-Open-Kits/bl61x_SDK/tools/make.../AiPi-Open-Kits/bl61x_SDK/tools/ninjaЯкщо ви досвідчений програміст, можете встановити PATH тимчасово, щоб не “полетів” існуючий C++/mingw.
export PATH="/c/path/to/AiPi-Open-Kits/toolchain_gcc_t-head_windows/bin:$PATH"
export PATH="/c/path/to/AiPi-Open-Kits/bl61x_SDK/tools/make:$PATH"
export PATH="/c/path/to/AiPi-Open-Kits/bl61x_SDK/tools/ninja:$PATH"
make -v
Якщо ви бачите інформацію про версію GNU Make, налаштування пройшло успішно.
🔨 Компіляція (Збірка)
Перейдіть у папку проєкту AiPi-Open-Kits/examples/AiPi-Cam-D200 та використовуйте цю команду у Git Bash:
make
💾 Завантаження (Прошивка)
Визначте номер COM-порту.
Виконайте команду, замінивши xx на номер порту:
Bash
make flash COMX=COMxx
🕹️ Вхід у Режим Прошивки (Burning Mode)
Для початку завантаження прошивки, натисніть кнопки у цій послідовності:
Затиснути кнопку BURN.
Затиснути кнопку RESET (RST).
Відпустити кнопку RESET.
Відпустити кнопку BURN.
Після завантаження прошивки треба нажати на RESET ще раз щоб плата увійшла у нормальний режим виконання програми.
Код написаний китайцями недосконалий, наприклад, усі налаштування у веб-інтерфейсі не роблять НІЧОГО. Я серйозно. Проте, цього достатньо для отримання зображень, а також код завжди можна переписати на всій розсуд.