ESP32 to nowa linia energooszczędnych systemów opartych na mikrokontrolerach z wbudowanym Wi-Fi i Bluetooth (podwójny tryb dual-mode). Seria ESP32 wykorzystuje mikroprocesor Tensilica Xtensa LX6 w podwójnej wersji: dwurdzeniowej oraz jednordzeniowej i zawiera wbudowane przełączniki antenowe, RF balun, wzmacniacz mocy, niskoszumny wzmacniacz odbiorczy, filtry i moduły zarządzania zasilaniem. ESP32 jest tworzony i rozwijany przez Espressif Systems, chińską firmę z Szanghaju. Produkowany przez TSMC przy użyciu technologii 40 nm. Jest następcą mikrokontrolera ESP8266.
INSTALACJA ESP32 w ARDUINO IDE
Należy dopisać https://dl.espressif.com/dl/package_esp32_index.json do “Additional Board Manager URLs”. Podobnie jak robiliśmy to przy instalacji ESP8266. Wielokrotne wpisy należy oddzielić przecinkami.
Instrukcja instalacji znajduje się na GitHub espressif/arduino-esp32
W skrócie wygląda to tak, że należy dopisać jeden z podanych tam linków – ja wpisałem wersję stabilną:https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
w “Additional Board Manager URLs”, podobnie jak robiliśmy to przy instalacji ESP8266. Wielokrotne wpisy należy oddzielić przecinkami.
Następnie wchodzimy do Tools -> Board: -> Boards Manager. W wyszukiwarce wpisujemy ESP32 i instalujemy najnowszą wersję “ESP32 by Espressif Systems“:
WYBÓR PŁYTKI (BOARD) I PARAMETRÓW PRZESYŁANIA PLIKÓW (UPLOAD)
Płytkę wybieramy “DOIT ESP32 DEVKIT V1”
Prędkość przesyłu 921600. U mnie na maku działa, jeśli są problemy można obniżyć.
Port dla ESP32 D1 mini to USBtoUART, ponieważ taki konwerter (CP 2104) jest na płytce.
Jeśli system nie widzi płytki należy pobrać sterownik i zainstalować.
ESP32 PINOUT
ESP-32-WROOM-32 (kupione z AZ-Delivery przez Amazon) płytka 38-pinowa
TUTORIALE
BIBLIOTEKI
LINKI
- ESP32 for IoT Tutorial // dobry tutorial
- https://github.com/yash-sanghvi/ESP32 // konkretne przykłady
- ESP32 ADC – Read Analog Values with Arduino IDE | wejścia analogowe i funkcje
- ESP32 Power Consumption | zasilanie ESP32 / ESP32s
- ESP32 Pinout Reference: Which GPIO pins should you use?
- IOT Made Simple: Playing With the ESP32 on Arduino IDE
- https://www.espressif.com/en/products/hardware/esp32/overview
- https://randomnerdtutorials.com/esp32-pinout-reference-gpios/
- https://github.com/MHEtLive/ESP8266-Arduino-examples-lab
- https://propix.com.pl/pl/p/Modul-D1-mini-ESP32-ESP-32S-WiFi-Bluetooth-WeMos/1491
- ACROBOTIC – ESP32 Programming Using Arduino IDE (Mac OSX and Windows)
- techiesms – ESP32 Tutorial Series
- https://randomnerdtutorials.com // ESP32 projects
- ESP32 projects for Beginners, ESP32 IoT projects, ESP32 Simple Projects
The pins highlighted in green are OK to use. The ones highlighted in yellow are OK to use, but you need to pay attention because they may have unexpected behavior mainly at boot. The pins highlighted in red are not recommended to use as inputs or outputs.
Źródło: https://randomnerdtutorials.com/esp32-pinout-reference-gpios/
GPIO | Input | Output | Notes |
0 | pulled up | OK | outputs PWM signal at boot |
1 | TX pin | OK | debug output at boot |
2 | OK | OK | connected to on-board LED |
3 | OK | RX pin | HIGH at boot |
4 | OK | OK | |
5 | OK | OK | outputs PWM signal at boot |
6 | x | x | connected to the integrated SPI flash |
7 | x | x | connected to the integrated SPI flash |
8 | x | x | connected to the integrated SPI flash |
9 | x | x | connected to the integrated SPI flash |
10 | x | x | connected to the integrated SPI flash |
11 | x | x | connected to the integrated SPI flash |
12 | OK | OK | boot fail if pulled high |
13 | OK | OK | |
14 | OK | OK | outputs PWM signal at boot |
15 | OK | OK | outputs PWM signal at boot |
16 | OK | OK | |
17 | OK | OK | |
18 | OK | OK | |
19 | OK | OK | |
21 | OK | OK | |
22 | OK | OK | |
23 | OK | OK | |
25 | OK | OK | |
26 | OK | OK | |
27 | OK | OK | |
32 | OK | OK | |
33 | OK | OK | |
34 | OK | input only | |
35 | OK | input only | |
36 | OK | input only | |
39 | OK | input only |