Przeglądasz stronę dla klientów z: Poland. Sugerowana wersja serwisu dla Ciebie to USA / US

Twoja przeglądarka nie jest już wspierana, pobierz nową wersję.

Chrome Chrome Pobierz
Firefox Firefox Pobierz
Opera Opera Pobierz
Internet explorer Internet Explorer Pobierz
Panel klienta
W Twoim koszyku

Szeroki wybór modułów ESP32

2019-07-01

Szeroki wybór modułów ESP32

ESP32 to niewielki układ scalony typu SoC (System on Chip) w obudowie QFN48. Stanowi przykład produktu charakterystycznego dla XXI wieku. Wszechstronny i stosunkowo tani moduł IoT oferujący użytkownikom ogromne możliwości. Jego producentem jest szanghajski Espressif Systems – założona w roku 2008 firma typu fabless (projektowanie mikrokontrolerów produkowanych w zewnętrznych fabrykach). Moduł zbudowany jest z użyciem mikroprocesora z rdzeniem Xtensa, pierwotnie opracowanego przez amerykańską firmę Tensilica.

Inżynierowie z Espressif Systems już wcześniej zrewolucjonizowali sytuację na rynku, wprowadzając układ ESP8266 - tanie rozwiązanie łączące silny mikrokontroler z modułem Wi-Fi. ESP32, o którym mowa jest w artykule to rozwinięcie, dopełnienie i wzbogacenie przełomowego ESP8266. Należy jednak zaznaczyć, że ESP32 nie jest kontynuacją linii opartej na poprzednim mikrokontrolerze producenta. To znaczący krok naprzód, którym zainteresować mogą się zarówno osoby znające już ESP8266, jak też wszyscy ci, którzy jeszcze nie korzystali tych modułów. Główne różnice względem ESP8266 do szybszy, silniejszy mikroprocesor, obsługa Bluetooth, bogatsze możliwości WiFi, dwukrotnie więcej wyprowadzeń wejścia/wyjścia i dużo więcej zasobów wewnętrznych. Nie przewidziano natomiast pracy ESP32 w trybie modemu realizującego rozkazy AT.

Podstawą ESP32 jest szybki i wydajny 32-bitowy mikrokontroler Xtensa (80...160MHz, dwurdzeniowy, do 600 DMIPS w zależności od wersji), z 520kB wbudowanej pamięci SRAM i wbudowanymi mechanizmami zapewniającymi bezpieczeństwo danych. Najważniejszymi cechami jest obecność rozbudowanych obwodów nadawczo-odbiorczych 2,4GHz, realizujących komunikację zarówno w standardzie Wi-Fi (z przepustowością nawet do 150Mbps), jak też w standardzie Bluetooth (BT), zarówno w wersji „klasycznej”, jak i oszczędzającej energię BLE, z dodatkowymi opcjami jak Piconet i Scatternet. ESP32 ma 34 uniwersalne wejścia/wyjścia cyfrowe (GPIO), które też mogą pełnić opcjonalne funkcje związane z wbudowanymi blokami sprzętowymi, takimi jak: 12-bitowy, 18-wejściowy przetwornik ADC, dwa 8-bitowe przetworniki DAC, 10 czujników dotykowych. Układ oferuje obsługę popularnych interfejsów (4xSPI, 2xI2C, 2xI2S, 3xUART, IrDA), a także bardziej rozbudowanych, jak SD/SDIO, a także EthernetMAC, CAN2.0, sterowniki silników, diod LED, a do tego wbudowany czujnik temperatury i Halla. Dostępne są różne sposoby taktowania, liczne timery i modulatory PWM. Wszystko zbudowane w technologii ultra-low-power, pozwalającej na pracę przy zadziwiająco małym zużyciu energii.

Zakres zastosowań modułów ESP32 jest bardzo szeroki. Szczególnie dobrze nadają się do urządzeń automatyki domowej, elektroniki noszonej i Internetu Rzeczy (IoT). Wydajny procesor i liczne peryferia pozwalają realizować naprawdę złożone i zaawansowane projekty. Dla początkujących użytkowników może to jednak stanowić problem, bowiem mnogość funkcji, dostępnych opcji, a nawet sama podstawowa dokumentacja (ESP32 Technical Reference Manual) zawierająca prawie 700 stron może przytłaczać.

Szczęśliwie wykorzystanie ESP32 okazuje się zaskakująco łatwe dzięki licznym gotowym rozwiązaniom. Całe niezbędne oprogramowanie dostępne jest bezpłatnie, a co najważniejsze, w Internecie można znaleźć liczne biblioteki oraz mnóstwo gotowych, kompletnych projektów, które mogą być inspiracją albo podstawą do własnych opracowań.

 

Moduły i płytki rozwojowe ESP32

Warto zauważyć, że tylko jedna wersja układu scalonego (ESP32-D2WD) zawiera 2MB pamięci programu Flash, ale nie jest ona dostępna w postaci modułu. Dlatego popularne moduły, też nazywane ESP32, zawierają dodatkową, zewnętrzną pamięć Flash o pojemności z zakresu (4MB … 16MB).

Aktualnie na rynku dostępnych jest szereg modułów ESP32 (dostępne w naszej ofercie). Takie moduły, z wyprowadzeniami krawędziowymi o rozstawie 1,27mm (50 milsów), przy odrobinie wprawy można ręcznie wlutować w płytkę drukowaną.

Pomijając ESP32-SOLO i ESP32-PICO, różnią się one wersją zastosowanego układu ESP32 oraz ilością pamięci. Dzielą się na dwie główne grupy: ESP32-WROOM (18 x 25,3 x 3mm) zawierające zewnętrzną pamięć Flash, oraz nieco większe ESP32-WROVER (18 x 31,4 x 3,3mm), zawierające nie tylko zewnętrzną pamięć Flash, lecz również 8 megabajtów zewnętrznej pamięci SPI SRAM dla zaawansowanych aplikacji i obliczeń. Ponadto moduły różnią się rodzajem anteny WiFi/BT: te z końcówką oznaczenia 32D mają antenę wbudowaną na płytce modułu, a te z końcówką oznaczenia 32U mają gniazdo anteny zewnętrznej. Brakuje tu stabilizatora napięcia i moduł musi być zasilany napięciem z zakresu 2,3V...3,6V (typowo 3,3V).

Dla wygody, zarówno profesjonalnych konstruktorów, jak i hobbystów, opracowano także płyty uruchomieniowe, z których część także nazywana jest modułami ESP32. Przykładowo, WROOM 32D zawiera stabilizator 3,3V (AMS1117) oraz układ CP2102, będący konwerterem USB-UART. Płytki takie można wyposażyć we wtyki lub gniazda goldpin podobnie jak w zestawach Arduino. Niektóre z płytek rozwojowych ESP32 dostępne są w zaskakujących niskich cenach.

 

Programowanie

Espressif Systems na swojej stronie internetowej oferuje szereg przydatnych narzędzi programistycznych, w tym bezpłatne narzędzia do programowania modułów. Przykładowo, jest to środowisko programistyczne MSYS2 z odpowiednimi „dodatkami”, można wykorzystać Eclipse. Dostępny jest zestaw ESP-IDF (Espressif IoT Development Framework). Te polecane, udostępnione (i wciąż udoskonalane) przez producenta narzędzia, przeznaczone są raczej dla bardziej zaawansowanych.

Mniej doświadczeni programiści, w tym ogromna rzesza hobbystów, do tworzenia programów wykorzystuje ogromnie popularny pakiet Arduino IDE. Stworzono nakładkę dla tego pakietu, dzięki której tworzy się programy w sposób typowy dla środowiska Arduino, wykorzystując darmowy kompilator GCC. Nakładka pozwala skompilować taki szkic, a uzyskany kod maszynowy załadować do ESP32. Do niedawna nakładkę trzeba było ściągać i instalować ręcznie. Obecnie można ją doinstalować do Arduino IDE wpisując w panelu konfiguracyjnym link - adres strony producenta, Espressif Systems. Jest to przykład ciągłego rozwoju systemu ESP32 i wchodzenia na niewykorzystywane wcześniej obszary.

Tworzenie programów za pomocą Arduino IDE z „nakładką ESP32” jest zaskakująco łatwe. Działają praktycznie wszystkie podstawowe instrukcje i rozwiązania znane z klasycznych szkiców Arduino.

Początkujący i mniej zaawansowani użytkownicy mogą analizować i modyfikować istniejące już przykłady, udostępnione na zasadzie open source, których coraz więcej pojawia się Internecie. Natomiast dla zaawansowanych i dla tych, którzy mieli już styczność z ESP8266, jest to znakomita okazja do poznawania i wykorzystywania szczegółów, by w pełni wykorzystać ogromny potencjał ESP32.

 

Zobacz pełną ofertę marki ESPRESSIF »

 

ESP-WROOM-02D
ESP-WROOM-02U
ESP32-D0WD
ESP32-MESHKITLIGHT
ESP32-MESHKITSENSE
ESP32-PICO-D4
ESP32-PROG
ESP32-S0WD
ESP32-SOLO-1
ESP32-WROOM-32D
ESP32-WROOM-32U
ESP32-WROVER
ESP8266
ESP-EYE
ESP-LAUNCHER
ESP-WROOM-02
ESP-WROOM-02-4
ESP-WROOM-02D-4
ESP-WROOM-02U-4
ESP-WROOM-S2
ESP-WROVER-KIT
ESP-WROVER-KIT-VB
ESP32
ESP32-D2WD
ESP32-DEVKITC-32D
ESP32-DEVKITC-32DF
ESP32-DEVKITC-32U
ESP32-DEVKITC-S1
ESP32-DEVKITC-VB
ESP32-DEVKITC-VIB
ESP32-LCDKIT
ESP32-LYRAT
ESP32-LYRATD-MSC
ESP32-MESHKIT
1331
ESP32-PICO-KIT
ESP32-SENSEKIT
ESP32-SENSEKITPROG
ESP32-WROOM-32
ESP32-WROOM-32-16
ESP32-WROOM-32-8
ESP32-WROOM-32D-16
ESP32-WROOM-32D-8
ESP32-WROOM-32U-16
ESP32-WROOM-32U-8
ESP32-WROVER-16
ESP32-WROVER-8
ESP32-WROVER-B-16
ESP32-WROVER-B-4
ESP32-WROVER-B-8
ESP32-WROVER-I
ESP32-WROVER-I-16
ESP-WROOM-02D
ESP-WROOM-02U
ESP32-D0WD
ESP32-MESHKITLIGHT
ESP32-MESHKITSENSE
ESP32-PICO-D4
ESP32-PROG
ESP32-S0WD
ESP32-SOLO-1
ESP32-WROOM-32D
ESP32-WROOM-32U
ESP32-WROVER
ESP8266
ESP32-WROVER-I-8
ESP32-WROVER-IB-16
ESP32-WROVER-IB-4
ESP32-WROVER-IB-8
ESP8266-DKC-02D-F
ESP8266-DKC-02U-F
ESP8285

PRZECZYTAJ TAKŻE