X

Kurs ESP - ESP32-S2

W 2020 roku firma Esprssif zaprezentowała najnowszy układ o nazwie ESP32-S2. Układ wyposażono w 32-bit procesor XTensa LX7 w oraz koprocesor ULP (RISC-V, FSM) z 320 KB SRAM i 128 KB ROM. Ze względu na wydajny procesor i liczbę dostępnych interfejsów, układ jest w stanie obsługiwać zawansowane urządzenia IoT, bez wykorzystania dodatkowych modułów.

Chip może obsługiwać do 1GB pamięci flash. Do dyspozycji użytkownika oddano 43 wyprowadzeń GPIO, w których zawarto 20 kanałów analogowo-cyfrowych, 14  pojemnościowych czujników GPIO, 2 interfejsy UART, 2 interfejsy I2C, 4 interfejsy SPI, 16 kanałów PWM, 2 przetworniki (DAC) 12-kanałowe oraz 2 interfejsy I2S.  Zaimplementowano interfejs kamery DVP 8/16, interfejs LCD 8-bit serial RGB/8080/68000, 8/16/24-bit paralel, oraz USB OTG.

Zmianie uległa także kwestia bezpieczeństwa. Urządzenie posiada wsparcie dla sprzętowych funkcji kryptograficznych, takich jak: AES-128/192/256, SHA-2, RSA, RNG, HMAC, Digital Signature.
W przeciwieństwie do ESP32 moduł został pozbawiony komunikacji Bluetooth oraz obsługi kart MMC. 

ESP32-S2-Saola-1

ESP32-S2-Saola-1 to płytka rozwojowa, oparta na chipie ESP32-S2. PCB wyposażono w  4Mb pamięci flash oraz 2Mb PSRAM. Na płytce znajduje się przycisk boot, reset oraz adresowalna dioda LED RGB podpięta do GPIO18. 
Układ jest wyposażony w mostek USB-UART, służący do programowania.  Do dyspozycji programisty oddano 46 pinów GPIO.

ESP32-S2-Saola-1

Piny układu

Poszczególne piny płytki odpowiadają za:

(3V3) – zasilanie czujników 3,3V,

(0) – GPIO0, aktywacja trybu niskiego zużycia energii,

(1) – GPIO1, kanał analogowo-cyfrowy, czujnik dotykowy,

(2) – GPIO2, kanał analogowo-cyfrowy, czujnik dotykowy, LED boot,

(3) – GPIO3, kanał analogowo-cyfrowy, czujnik dotykowy,

(4) – GPIO4, kanał analogowo-cyfrowy, czujnik dotykowy,

(5) – GPIO5, kanał analogowo-cyfrowy, czujnik dotykowy,

(6) – GPIO6, kanał analogowo-cyfrowy, czujnik dotykowy,

(7) – GPIO7, kanał analogowo-cyfrowy, czujnik dotykowy,

(8) – GPIO8, kanał analogowo-cyfrowy, czujnik dotykowy,

(9) – GPIO9, kanał analogowo-cyfrowy, czujnik dotykowy,

(10) – GPIO10, kanał analogowo-cyfrowy, czujnik dotykowy, protokół SPI (CS),

(11) – GPIO11, kanał analogowo-cyfrowy, czujnik dotykowy, protokół SPI (MOSI),

(12) – GPIO12, kanał analogowo-cyfrowy, czujnik dotykowy, protokół SPI (CLK),

(13) – GPIO13, kanał analogowo-cyfrowy, czujnik dotykowy, protokół SPI (MISO),

(14) - GPIO014, kanał analogowo-cyfrowy, czujnik dotykowy,

(15) - GPIO015, kanał analogowo-cyfrowy,

(16 )- GPIO016, kanał analogowo-cyfrowy,

(17) – GPIO17, kanał analogowo-cyfrowy, nadajnik interfejsu szeregowego UART 1,

(5V) – zasilanie 5V,

(GND – uziemienie,

(18) – GPIO18, kanał analogowo-cyfrowy, dioda programowalna LED RGB, nadajnik interfejsu szeregowego UART1, pomiar sygnału analogowego, odbiornik interfejsu szeregowego UART 1,

(19) – GPIO20, kanał analogowo-cyfrowy, kanał OTG USB D-,

(20) – GPIO20, kanał analogowo-cyfrowy, kanał OTG USB D+,

(21) – GPIO21,

(26) – GPIO26,

(33) – GPIO33,

(34) – GPIO34,

(35) – GPIO35,

(36) – GPIO36,

(37) – GPIO37,

(38) – GPIO38,

(39) – GPIO39,

(40) – GPIO40, interfejs I2C0 kanał (SLC),

(41) - GPIO41, interfejs I2C0 kanał (SDA),

(42) - GPIO42,

(TX) – GPIO43, nadajnik interfejsu szeregowego UART 0,

(RX) – GPIO44, odbiornik interfejsu szeregowego UART 0,

(45) – GPIO45,

(46) – GPIO46,

(RST) – reset po podaniu stanu niskiego,

(GND) – uziemienie.

Zasilanie

Układ może być zasilany poprzez port USB, oraz dedykowany pin 5V.