У платы ESP32 CAM нет собственного разъема USB, и она имеет ограниченное количество GPIO - поэтому для расширения возможностей и удобства программирования я решил сделать небольшую плату расширения.
Поскольку мне до конца не понятно какие устройства возможно придется до установить в этот прототип - собрано все на макетной плате под пайку. (можно взять паяльник и быстренько впаять недостающий модуль)
На передней панели расположились: разъем для подключения UART преобразователя, плата ESP32 CAM, клеммный блок для подключения внешнего питания (5V), разъем для подключения к свободным выводам платы ESP32 CAM, разъем для подключения внешней Wi-Fi антенны, ключ на MOSFET транзисторе для управления мощным 1W светодиодом (максимальный ток через кристалл 300mA, по факту ограничен резистором номиналом 5.6 Ом до 150mA).
В качестве расширителя портов используется плата Arduino MINI (AtMega328P). Плата питается от напряжения 3.3V (снижать частоту до 8000 МГц мне лень - так как и так все работает, fuse биты по питанию в среде Arduino IDE по умолчанию выставлены в диапазоне 2.5V - 2.9V).
К ней подключены: транзисторный ключ, OLED дисплей 128*64 на контроллере SH1106, и 4 кнопки.
Назначение переключателей с фиксацией SB1 и SB2 и кнопки BT0:
- переключатели SB1 и SB2 в верхнем положении - прошивка/отладка кода через монитор порта платы Arduino MINI
- переключатели SB1 и SB2 в нижнем положении - обмен данными между платами через интерфейс UART
- переключатель SB1 в нижнем SB2 в верхнем положении - прошивка/отладка кода через монитор порта платы ESP32 CAM
(для прошивки снимаем питание, нажимаем и удерживаем кнопку BT0, подаем питание, заливаем скетч, отпускаем кнопку, снимаем и снова подаем питание)
Для прошивки я использую удобный USB-UART преобразователь (все его компоненты встроены непосредственно в шнур USB)
Таким образом у нас есть дополнительные I2C и SPI интерфейсы и несколько дополнительных аналоговых и цифровых входов/выводов.
Проекты по работе с камерой как на голой ESP32 CAM, так с платой расширения будут разбираться в следующих статьях.
Полный список статей доступен по этой ссылке