NodeMCU ESP-32 30P / 38P
Плата разработчика на базе процессора ESP-WROOM-32
ESP32 - это современный микроконтроллер от компании Espressif Systems, который был выпущен совсем недавно (2016). Он имеет очень нескромные характеристики:
- -Двухъядерный 32-х битный процессор, работающий на частоте 80, 160 или 240 МГц (ну плюс ещё одно энергосберегающее ядро с урезанным набором команд и на частоте 32 КГц)
- -520 КБ оперативки
- -448 КБ flash-памяти (на самом деле доступно больше, рассмотрим далее)
- -Питание 2.2 - 3.6В
- -Дополнительно внешняя flash-память на 4-16 МБ (о чём я говорил ранее)
- -Wi-Fi 802.11n с максимальной скоростью 150 Мбит в секунду
- -BT 4.2 BR/EDR и Low Energy
- -АЦП 12-бит х18
- -ЦАП 8-бит х2
- -Встроенный датчик температуры
- -SPI х4
- -I2S x2
- -I2C x2
- -UART x3
- -Ethernet контроллер
- -CAN 2.0
- -Инфракрасный контроллер, причём, как на приём, так и на передачу
- -PWM на всех портах вроде
- -Встроенный датчик Холла
- -Куча периферии для криптографии (шифровальщики, хешеры, ГСЧ)
А так же энергопотребление:
- -При передаче Wi-Fi 160-260 мА
- -Без Wi-Fi и BT 20 мА
- -Режим "мягкого" сна 0.8 мА
- -Режим "глубокого" сна 10 мкА
- -Гибернизация со включенным ядром низкого энергопотребления 5 мкА
АХТУНГ! Вы часто будете встречать слово RTC при использовании ESP32. Однако, это не Real Time Clock, а ядро низкого энергопотребления.
Установка
1. Скачиваем Arduino IDE
2. Устанавливаем Git с сайта
3. Запускаем Git GUI
3.1. Выбираем Clone Existing Repository
3.2. В Source Location пишем
https://github.com/espressif/arduino-esp32.git
3.3. В Target Directory пишем
C:/Users/[ИМЯ_ПОЛЬЗОВАТЕЛЯ]/Documents/Arduino/hardware/espressif/esp32
3.4. Нажимаем Clone
4. Открываем директорию
C:/Users/[ИМЯ_ПОЛЬЗОВАТЕЛЯ]/Documents/Arduino/hardware/espressif/esp32/tools
и запускаем файл get.exe
5. Подключаем нашу плату
5.1. Если драйвера сами не установились, то устанавливаем драйвера для CP210x (у меня был CP2102) отсюда
6. Запускаем Arduino IDE
7. Выбираем плату в Tools > Board (Инструменты > Плата) (У меня DOIT ESP32 DEVKIT V1)
8. Выбираем COM-порт, в который установилась плата
8.1. Как определить порт?
8.1.1. Открываем диспетчер устройств
8.1.2. Раскрываем группу "Порты (COM и LPT)"
8.1.3. Смотрим название устройств. Среди них должно быть что-то подобное
COM7 - это и есть наш порт.
9. Выбираем любой пример (например, вот)
10. Загружаем, нажав Ctrl+U
10.1. В некоторых инструкциях говорят, что во время загрузки нужно нажать кнопку BOOT на плате. Однако, у меня всё завелось и без неё.