Jan Beran

View on GitHub

Představení ESP-IDF

Poznámka: Ve srovnání s workshopem pro ESP32-C6 tento workshop z časových důvodů vynechává kapitolu o protokolech a TLS. Pokud si chcete toto téma přesto projít, použijte příklady z ESP-IDF, esp-protocols nebo workshop pro ESP32-C6.

ESP-IDF (Espressif IoT Development Framework) je oficiální vývojový framework pro všechny čipy rodiny ESP32 od firmy Espressif Systems. Framework poskytuje kompletní prostředí pro vývoj, flashování a monitorování IoT aplikací, které mohou pokrývat vše od sítí přes bezpečnost, až po vysoce spolehlivé aplikace. Samotné čipy ESP32 jsou populární napříč odvětvími, od domácích kutilů a bastlířů až po profesionální a průmyslové nasazení.

ESP-IDF v sobě obsahuje také FreeRTOS, který vývojářům umožňuje tvořit real-time aplikace s podporou multitaskingu. Díky široké paletě knihoven, komponent, podporovaných protokolů (Wi-Fi, Bluetooth, Thread, ZigBee, MQTT a mnoho dalšího), nástrojům a podrobné dokumentaci ESP-IDF usnadňuje vývoj IoT aplikací a umožňuje jednoduché využití velkého spektra hardware a periferií.

Zároveň ESP-IDF obsahuje zhruba 400 příkladových projektů, pokrývajících základní případy použití, což umožňuje vývojářům dále zrychlit počáteční fázi vývoje a ti tak mohou rychleji začít pracovat na svých projektech.

Architektura

Architektura frameworku ESP-IDF je rozdělená do 3 vrstev:

Frameworks

Na ESP-IDF je základených i několik dalších frameworků:

Pokud se chcete podívat na všechny odvozené frameworky, navštivte náš GitHub.

Podpora různých verzí ESP-IDF

ESP-IDF se stále vyvíjí. Pro aktuální informace o podporovaných verzích navšitvte náš Github.

espressif/esp-idf na GitHubu

Představení ESP32-C5

ESP32-C5 je ultra-low-power čip s architekturou RISC-V. Obsahuje jedno “plnohodnotné” a jedno ULP (ultra-low-power) jádro a podporuje všechny běžné bezdrátové technologie: 2.4 a 5 GHz Wi-Fi 6 (802.11ax), Bluetooth® 5 (LE), Zigbee a Thread (802.15.4). K dispozici je volitelná 4MB flash paměť přímo v pouzdře čipu, 29 GPIO pinů a bohatá nabídka periferií:

Pro více detailů se podívejte na datasheet ESP32-C5.

Představení kitu ESP32-C5-DevKit-C

ESP32-C5-DevKitC-1 je vývojová deska určená (nejen) začátečníkům, v jejímž srdci je modul ESP32-C5-WROOM-1 spolu s 8 MB SPI flash paměti. Stejně jako samotný čip ESP32-C5, deska podporuje mnoho protokolů, od Wi-Fi, přes Bluetooth LE, až po Zigbee a Thread.

Většina GPIO pinů je přístupná z vývodů po stranách desky se standardní roztečí 2.54 mm. Periferie na ně můžou být připojené pomocí klasických vodičů, případně lze desku zacvaknout do nepájivého pole.

Vlastnosti

Níže jsou uvedené základní vlastnosti vývojého kitu:

Popis desky

Pinout desky

J1 pinové pole

No. Name Type Function
1 3V3 P 3.3 V power supply
2 RST I High: enables the chip; Low: disables the chip.
3 2 I/O/T MTMS, GPIO2, LP_GPIO2, LP_UART_RTSN, LP_I2C_SDA, ADC1_CH1, FSPIHQ
4 3 I/O/T MTDI, GPIO3, LP_GPIO3, LP_UART_CTSN, LP_I2C_SCL, ADC1_CH2
5 0 I/O/T GPIO0, LP_GPIO0, LP_UART_DTRN, XTAL_32K_P
6 1 I/O/T GPIO1, LP_GPIO1, LP_UART_DSRN, XTAL_32K_N, ADC1_CH0
7 6 I/O/T GPIO6, LP_GPIO6, ADC1_CH5, FSPICLK
8 7 I/O/T GPIO7, FSPID, SDIO_DATA1
9 8 I/O/T GPIO8, PAD_COMP0, SDIO_DATA0
10 9 I/O/T GPIO9, PAD_COMP1, SDIO_CLK
11 10 I/O/T GPIO10, FSPICS0, SDIO_CMD
12 26 I/O/T GPIO26
13 25 I/O/T GPIO25
14 5V P 5 V power supply
15 G G Ground
16 NC No connection

J3 pinové pole

No. Name Type Function
1 G G Ground
2 TX I/O/T U0TXD, GPIO11
3 RX I/O/T U0RXD, GPIO12
4 24 I/O/T GPIO24
5 23 I/O/T GPIO23
6 NC/15 I/O/T No connection/GPIO15
7 27 I/O/T GPIO27
8 4 I/O/T MTCK, GPIO4, LP_GPIO4, LP_UART_RXD, ADC1_CH3, FSPIHD
9 5 I/O/T MTDO, GPIO5, LP_GPIO5, LP_UART_TXD, ADC1_CH4, FSPIWP
10 NC No connection
11 28 I/O/T GPIO28
12 G G Ground
13 14 I/O/T GPIO14, USB_D+, SDIO_DATA2
14 13 I/O/T GPIO13, USB_D-, SDIO_DATA3
15 G G Ground
16 NC No connection

Zdroje

Další krok

Pro teoretickém úvodu již nastal čas pustit se do programování. Nejprve si ale musíme naisntalovat potřebné nástroje.

Úkol 1: Instalace ESP-IDF