Функциональность аналого-цифровых преобразователей (АЦП) и цифро-аналоговых преобразователей (ЦАП) жёстко привязана к определённым выводам микроконтроллера ESP32. В отличие от них, остальные периферийные интерфейсы – UART, I2C, SPI, PWM и прочие – допускают гибкое назначение контактов посредством программного обеспечения, обеспечиваемое аппаратной функцией мультиплексирования выводов ESP32.
Плата ESP32 оснащена обширным набором встроенной периферии:
- 18-канальный АЦП/разрешение 12 бит;
- два ЦАП-канала;
- интерфейсы последовательной передачи данных: 3 SPI, 16 I2C, 10 I2S;
- 2 UART;
- выходы для генерации ШИМ;
- GPIO-контакты на ввод/вывод.
В таблице, расположенной ниже, мы собрали самую полную инструкцию по использованию пинов в ESP32.
Зелёным цветом выделены контакты, разрешённые и рекомендуемые нашими специалистами для различных целей в процессе программирования.
Оранжевым цветом выделены разрешённые контакты, однако следует обратить внимание на возможные проблемы при их выборе: при загрузке системы и других процессах их поведение может быть неожиданным.
Красный цвет в таблице – GPIO, которые мы для выбора в качестве устройств ввода/вывода использовать не рекомендуем.