CONTENIDO ►
La función analogWrite() de Arduino es otro de los comandos más populares a la hora de programar un microcontrolador entre los principiantes de Arduino. El principal uso práctico del comando es cambiar la señal PWM en las salidas analógicas del microcontrolador Arduino, que se utiliza principalmente para cambiar suavemente el brillo del LED. Veamos la sintaxis de la función analogWrite en Arduino IDE con un sketch de ejemplo.
Para esta actividad necesitaremos:
- Arduino Uno / Arduino Nano / Arduino Mega
- LED y resistencia de 220 Ohm
- placa de pruebas
- cables de conexion
Para que sirve función analogWrite en Arduino

El comando analogWrite sólo es compatible con los pines del microcontrolador con modulación PWM. En la mayoría de las placas Arduino la señal PWM es soportada por los pines 3, 5, 6, 9, 10 y 11, y en la placa Arduino Mega por los pines 2 a 13. Puedes leer más sobre la modulación por ancho de pulsos aquí – Qué es Arduino PWM. Atención. Los puertos A0-A5 etiquetados como Analog In no tienen nada que ver con la PWM y analogWrite.
Función analogWrite Arduino IDE descripción
analogWrite(pin, value);
- pin – número de salida (pin) a la que aplicamos la señal PWM
- value – valor PWM de 0 (completamente apagado) a 255 (la señal se aplica permanentemente)
Conecte el LED al pin 10 y cargue el siguiente programa en el microcontrolador. El programa cambiará la frecuencia de la señal PWM de 0 (LED completamente apagado) a 255 (brillo máximo). A un valor de 127 el LED brillará a media potencia. Debe entenderse que la salida del microcontrolador cambiará no el voltaje en Voltios, sino la frecuencia del pulso PWM (periodo de llenado de la señal). Esta es la llamada tensión pseudoanalógica.
Programa Arduino para función analogWrite()
#define LED 10 void setup() { pinMode(LED, OUTPUT); } void loop() { analogWrite(LED, 0); // frecuencia de señal 0% delay(1000); analogWrite(LED, 64); // frecuencia de señal 25% delay(1000); analogWrite(LED, 127); // frecuencia de señal 50% delay(1000); analogWrite(LED, 191); // frecuencia de señal 75% delay(1000); analogWrite(LED, 255); // frecuencia de señal 100% delay(1000); }
Explicación del código Arduino para función analogWrite():
- el uso más sencillo de los comandos digitalWrite y analogWrite es controlar los LEDs conectados a un microcontrolador Arduino.
Nota: Las entradas analógicas de los microcontroladores Arduino (analog In – A0, A1, etc.) no están relacionadas con la generación de señales PWM. Sólo se pueden utilizar como salidas digitales utilizando el comando digitalWrite, y su propósito principal es conectar sensores analógicos al microcontrolador. El comando analogWrite() sólo funcionará en los pines modulados PWM del microcontrolador (marcados con tilde ≈).
Conclusión. En este artículo hemos visto lo que significa analogWrite en el lenguaje Arduino y cómo se puede utilizar la función en un programa. Puedes aprender más sobre este comando en la siguiente lección – Parpadeo suave del LED. Recuerda que cuando conectes LEDs, módulos y sensores a los pines de la placa Arduino, no olvides configurar el pin al modo de operación deseado usando el comando pinMode() – OUTPUT o INPUT.

Deja una respuesta