NodeMCU ESP32 es un microcontrolador con módulos WiFi y Bluetooth integrados. Es muy fácil de usar, ligero y tiene mayor memoria y capacidad de cálculo que un Arduino. Esto la convierte en una placa ideal para aprender a programar y desarrollar objetos o servidores conectados.

Características del microcontrolador
El microcontrolador NodeMCU ESP32 utiliza el microprocesador ESP-WROOM-32 (Tensilica Xtensa LX6). Este procesador funciona a una frecuencia de reloj de 240 MHz y dispone de 520 kB de RAM, 448 kB de EEPROM y 4000 kB de memoria Flash (para programación y registro de datos).
  | ![]()  | 
El microcontrolador tiene un chip WiFi que le permite conectarse a la red local, crear un servidor o crear su propia red para que otros dispositivos puedan conectarse a ella. El microcontrolador tiene un chip Bluetooth que le permite interactuar con otros dispositivos.
Alimentación
El microcontrolador NodeMCU ESP32 funciona en un rango de tensión de 7-12V gracias a su regulador de tensión integrado, mientras que el microprocesador funciona a una tensión de 3,3V. En funcionamiento normal, el microcontrolador consume hasta 45mA (si no recibe alimentación) y puede aceptar una corriente máxima de 40mA en cada uno de sus pines IO.
Pinout
- Analog I/O : 15 (2, 4, 12, 13, 14, 15, 25, 26, 27, 32, 33, 34, 35, 36, 39)
 - Digital I/O : 4 (all except 6 to 11)
 - Pines PWM: 16 (2, 4, 5, 6, 12, 13, 14, 15, 18, 19, 21, 25, 26, 27, 32, 33)
 - Comunicación Serial: 9 (1, 2, 3, 4, 5, 12, 13, 14, 15)
 - Comunicación I2C: 1 ((’21’, ’22’))
 - Comunicación SPI: 1 ((‘5′, ’18’, ’19’, ’23’))
 - Comunicación I2S: 1 ((’26’, ’25’, ’33’))
 - Toque: 9 (2, 4, 12, 13, 14, 15, 27, 32, 33)
 - Interrupción: 26 (0, 1, 2, 4, 5, 7, 12, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23, 25, 26, 27, 32, 33, 34, 35, 36, 39)
 

Código básico e identificación de pines
const int analogPin=34; // 2, 4, 12, 13, 14, 15, 25, 26, 27, 32, 33, 34, 35, 36, 39 const int digitalInPin=2; // all except 6 to 11 const int digitalOutPin=4; // all except 6 to 11 and 34, 35, 36 and 39 inputs only const int pwmPin=3; // broches 2, 4, 5, 6, 12, 13, 14, 15, 18, 19, 21, 25, 26, 27, 32, 33 int analogVal=0; int digitalState=LOW; int pwmVal=250; // setting PWM properties const int freq = 5000; const int ledChannel = 0; const int resolution = 8; void setup() { Serial.begin(115200); pinMode(analogPin,INPUT); // broches 0-13 et 14-19, Argument OUTPUT, INPUT pinMode(digitalInPin,INPUT); pinMode(digitalOutPin,OUTPUT); ledcSetup(ledChannel, freq, resolution); ledcAttachPin(pwmPin, ledChannel); } void loop() { analogVal=analogRead(analogPin); // return int digitalState=digitalRead(digitalInPin); // return boolean digitalWrite(digitalOutPin,HIGH); // valeur LOW(0) ou HIGH(1) ledcWrite(ledChannel, pwmVal);// valeur 0-255 }
Para obtener más información sobre el uso de los pines, visite el sitio ESP32 Pinout Reference.
Resumen de características
| Microcontrôleur | |
| Nom: | ESP32 | 
| Marque: | Espressif | 
| Caractéristiques | |
| CPU: | ESP-WROOM-32 (Tensilica Xtensa LX6) | 
| Tension d’alimentation : | 7-12V | 
| Tension logic: | 3.3V | 
| E/S digitales: | 14 | 
| Entrées analogiques: | 6 | 
| Flash: | 4000kB | 
| SRAM: | 520kB | 
| EEPROM: | 448kB | 
| Fréquence d’horloge: | 240 MHz | 
| Wifi: | Yes | 
| Bluetooth: | Yes | 
| SD card: | No | 
| Touch: | Yes | 
| UART/SPI/I2C/I2S: | Yes/Yes/Yes/Yes | 
												