logo

ESP32 Hardware Assignment 2022

   

Added on  2022-12-12

27 Pages6415 Words20 Views
 | 
 | 
 | 
ESP32 Hardware
ESP32 is a cost effective, less power consumed SOC (system on a chip)
microcontroller which is integrated with Wi-Fi and dual-mode Bluetooth
devices. This series utilizes “Tensilica Xtensa LX6” microprocessor which
works in both the dual-core and single-core variations. It involves the
following in-built modules: antenna switches, RF balun, power-amplifier, low-
noise receive amplifier, filters, and power-management modules. This
hardware is designed by Espressif systems, a Chinese company. It is an
inheritor of ESP8266 microcontroller. It is very convenient to be used with IoT
projects because of the open source platforms like Arduino.
ESP32 Module
The ESP32 development board includes Tensilica Xtensa® Dual-Core 32-bit
LX6 microprocessor (lastminutesengineers 2019). Unlike ESP8266, this
processor contains two individually controlled CPU core processors operable
at adjustable clock frequency ranges from 80 to 240 MHz and performs
operation at a speed of 600 DMIPS (Dhrystone Million Instructions per
Second).
The main components present in the module are as below:
a) Xtensa® Dual-Core 32-bit LX6: Operates at high speed to fed up real
time information
b) Memory blocks: Both for programming and storage data, it provides
enough space to cope with large string data used by IoT devices.
i. 448kB ROM
ii. 520kB internal SRAM
iii. 4MB external flash
c) 802.11b/g/n Wi-Fi transceiver: This module includes different
compatible versions of Wi-Fi transceiver which allows other devices to
connect directly with it by setting up a personal network. It uses WiFi
Direct technology where peer-to-peer connection can be established
without the use of an access points. It is very easy to setup and the
data transmission rate is better than the Bluetooth technology.
d) Bluetooth 4.2/BLE: The module also contains dual mode Bluetooth
devices, which supports both Bluetooth 4.0 (BLE/Bluetooth Smart) and
Bluetooth Classic (BT). This makes the device even more versatile.
Power Requirements
MicroB USB connector is used to provide power to the ESP32 development
board. Otherwise a 5V regulated voltage source may also be connected to
ESP32 Hardware Assignment 2022_1

the VIN pin directly to supply power to the ESP32 and its peripheral devices.
When the chip is in sleep mode, it draws a current of about 5 μA, which is a
very less amount. Therefore this module becomes very useful for battery
operated and wearable electronics devices.
Operating Voltage range is 2.2V to3.6V
On–board 3.3V 600mA LDO voltage regulator. At the time of RF
transmission 250mA required.
In sleep mode current is less than 5μA.
On –board micro USB Connector to power supply the board.
3V3 pin on board gives 3.3 V regulated output voltage.
Vin pin on board can be used for external power supply if required.
Peripherals and I/O
ESP32 offers 48 GPIO (General Purpose Input Output) pins which are used for
various functions and operations can also be used with other functions like
UART, SI. It consists of 12 bit SAR (Successive Approximation Register) ADCs
& supports measurements on 18 channels. It involves dual 8 bit DAC
channels that supports power supply as an internal voltage reference & can
operate other components of the circuit.
ESP32 integrates three UART (Universal Asynchronous Receiver Transmitter)
interfaces which are UART0, UART1 & UART2.It supports IrDA and
communicate at up to 5Mbps. Two I2C (Inter Integrated Circuit) bus
interfaces are available in ESP32. It supports standard mode (100Kbps), Fast
mode(400Kbps), 7- bit/-10 bit addressing mode, dual addressing mode.
ESP32 has two standard I2S (Inter-IC Sound) interfaces which can be
operated in both master and slave mode, either in half duplex or full duplex
communication mode. ESP32 has three SPIs (Serial Peripheral Interface)
which are SPI, HSPI & VSPI and 16 LED PWM output channels. ESP32 contains
10 capacitive sensing GPIOs as below.
Capacitive sensing signal name Pins
T0 GPIO4
T1 GPIO0
T2 GPIO2
T3 MTD0
T4 MTCK
ESP32 Hardware Assignment 2022_2

T5 MTD1
T6 MTMS
T7 GPIO27
T8 32K_XN
T9 32K_XP
On-board switches and LED indicators
Enable/Reset button- EN is reset button for ESP module.
Boot Button- To upload the code press Boot button
along with the EN button.
Red LED- It indicates the power supply.
Blue LED-This is a programmable LED depends on the
operation specified by the user and attached with the
GPIO pin.
Serial Communication
CP2102 is Silicon Lab Single chip USB to UART Bridge.
ESP32 can be communicated and programmed with the
user computer at a communication speed of 5Mbps
using this controller unit.
ESP32 Hardware Assignment 2022_3

ESP32 development board pin-out
Input only pins
GPIOs 34 to 39 are GPIs – input only pins. These pins don’t have internal pull-
ups or pull-down resistors. They can’t be used as outputs, so use these pins
only as inputs:
GPIO 34
GPIO 35
GPIO 36
ESP32 Hardware Assignment 2022_4

GPIO 39
SPI flash integrated on the ESP-WROOM-32
GPIO 6 to GPIO 11 are exposed in some ESP32 development boards.
However, these pins are only connected to the particular integrated SPI flash
on the ESP-WROOM-32 chip and other uses cannot be connected to it. So,
don’t use these pins in your projects:
GPIO 6 (SCK/CLK)
GPIO 7 (SDO/SD0)
GPIO 8 (SDI/SD1)
GPIO 9 (SHD/SD2)
GPIO 10 (SWP/SD3)
GPIO 11 (CSC/CMD)
Capacitive touch GPIOs
There are 10 internal capacitive touch sensors inside ESP32. This is capable
of detecting the variation in electrical charge inside anything such as the
human skin. The induced variations can be detected by touching the GPIOs
with a finger. It is very easy to integrate these into capacitive pads, and
hence replacing the mechanical buttons. The capacitive touch pins can be
used to wake up the ESP32 from deep sleep. Those internal touch sensors
are attached to the GPIOs as below:
T0 - (GPIO 4)
T1 - (GPIO 0)
T2 - (GPIO 2)
T3 - (GPIO 15)
T4 - (GPIO 13)
T5 - (GPIO 12)
T6 - (GPIO 14)
T7 - (GPIO 27)
T8 - (GPIO 33)
T9 - (GPIO 32)
ESP32 Hardware Assignment 2022_5

Analog to Digital Converter (ADC)
The ESP32 has 18 x 12 bits ADC input channels. These channels can be used
to connect different Analog channels or devices:
ADC1_CH0 (GPIO 36)
ADC1_CH1 (GPIO 37)
ADC1_CH2 (GPIO 38)
ADC1_CH3 (GPIO 39)
ADC1_CH4 (GPIO 32)
ADC1_CH5 (GPIO 33)
ADC1_CH6 (GPIO 34)
ADC1_CH7 (GPIO 35)
ADC2_CH0 (GPIO 4)
ADC2_CH1 (GPIO 0)
ADC2_CH2 (GPIO 2)
ADC2_CH3 (GPIO 15)
ADC2_CH4 (GPIO 13)
ADC2_CH5 (GPIO 12)
ADC2_CH6 (GPIO 14)
ADC2_CH7 (GPIO 27)
ADC2_CH8 (GPIO 25)
ADC2_CH9 (GPIO 26)
Digital to Analog Converter (DAC)
The ESP32 contains 2 x 8 bits DAC channels which converts the digital signal
output to analog signal outputs in terms of voltages. The DAC channels are
as following:
DAC1 (GPIO25)
DAC2 (GPIO26)
RTC GPIOs
The ESP32 is supported by RTC GPIO. The RTC low-power subsystem routed
through the GPIOs can be operated while the ESP32 is in deep sleep. The
ESP32 can be awakened from deep sleep using the RTC GPIOs while the
Ultra-Low Power (ULP) co-processor is running. The following RTC GPIOs are
used to wake up as an external source.
RTC_GPIO0 (GPIO36)
ESP32 Hardware Assignment 2022_6

End of preview

Want to access all the pages? Upload your documents or become a member.