The ESP32-32E module is a general-purpose WiFi-BT-BLE MCU module with powerful functions and a wide range of applications. It can be used for low-power sensor networks and demanding tasks, such as speech encoding, audio streaming, and MP3 decoding. The core of this module is the ESP32 chip, which features scalability and adaptability. The two CPU cores can be controlled individually or powered on simultaneously. The clock frequency adjustment range is from 80 MHz to 240 MHz. Users can cut off the CPU power and utilize the low-power co-processor to intermittently monitor the status changes of peripherals or check if certain analog quantities exceed thresholds.
The ESP-WROOM-32 module also integrates rich peripherals, including capacitive touch sensors, Hall sensors, low-noise sensor amplifiers, SD card interfaces, Ethernet interfaces, high-speed SDIO/SPI, UART, I2S, and I2C, among others. The ESP-WROOM-32 module is hereinafter referred to as ESP32.
CPU and Memory
The ESP32 has two built-in low-power Xtensa® 32-bit LX6 MCUs. On-chip memory includes:
- 448 KBytes of ROM, used for program boot and kernel function calls.
- 520 KBytes of on-chip SRAM for data and instruction storage.
- 8 KBytes of SRAM in RTC, i.e., RTC slow memory, accessible by the co-processor in Deep-sleep mode.
- 8 kBytes of SRAM in RTC, i.e., RTC fast memory, accessible by the main CPU for data storage during startup in Deep-sleep mode.
- 1kbit of EFUSE, of which 256 bits are for system use (MAC address and chip settings); the remaining 768 bits are reserved for user applications, such as Flash encryption and chip ID.
The ESP32 supports up to four 16 MBytes external QSPI Flash and Static Random Access Memory (SRAM). It features hardware encryption based on AES to protect developers’ programs and data. The ESP32 accesses external QSPI Flash and SRAM through high-speed caching. Up to 16 MBytes of external Flash is mapped to the CPU code space, supporting 8-bit, 16-bit, and 32-bit access, and allows code execution. Up to 8 MBytes of external Flash and SRAM are mapped to the CPU data space, supporting 8-bit, 16-bit, and 32-bit access. Flash only supports read operations, while SRAM supports both read and write operations.
