Cuántos pines PWM en Arduino Uno

Cuántos pines PWM en Arduino Uno
PWM es un acrónimo de modulación de ancho de pulso que se utiliza para obtener la salida en señales pulsantes o para crear una salida de onda cuadrada. Usando esta técnica, podemos interactuar dispositivos analógicos con Arduino a través de medios digitales. Arduino ofrece múltiples formas de interfactar periféricos con él. PWM es uno de esos para controlar dispositivos como servomotores, motores DC y otros módulos analógicos.

PWM con Arduino

PWM en Arduino tiene una amplia gama de aplicaciones utilizadas para controlar dispositivos analógicos utilizando señales digitales. La salida de pines digitales de Arduino se puede clasificar en dos niveles de voltaje, ya sea alto, que es de 5V o bajo, lo que denota 0V. Usando PWM en Arduino podemos generar una señal que tiene una frecuencia constante pero con un ancho variable de pulso. El ejemplo más común de uso de PWM en Arduino es controlar el brillo de un LED y controlar la velocidad de un motor.

La señal de modulación de ancho de pulso tiene las siguientes dos características:

  • Frecuencia: La frecuencia de señal PWM denota qué tan rápido se completará un ciclo. Alternativamente, la frecuencia de PWM decide qué tan rápido se cambiará la señal de salida entre estado alto y bajo.
  • Ciclo de trabajo: Describe la cantidad de tiempo para el cual una señal de salida permanece en estado alto como porcentaje de la cantidad total de tiempo requerido para completar un ciclo.

Pins PWM en Arduino Uno

Arduino Uno tiene un total de 14 pines de salida de entrada digital, de estos pines digitales de 6 pines PWM están disponibles en Arduino Uno Board. En Arduino Uno Pins digitales de E/S 3, 5, 6, 9, 10 y 11 son PWM Pins. El número de pines PWM varía de una tabla a otra.

La velocidad de mostrador en Arduino determina la frecuencia de las señales PWM. En Arduino Uno Counter Clock es igual al reloj del sistema dividido por el valor Prescalers. Tres prescalores almacenan el valor del contador registrado. Estos tres prescalores se conocen como: CS02, CS01 y CS00. Como el número total de pines PWM es 6, se utilizan tres registros de contadores en Arduino Uno con preescalores separados para controlar los pines PWM.

Registros de temporizador/contador Pines PWM
TCCR0B Controla el pin 6 y 5
TCCR1B Controles Pin 9 y 10
TCCR2B Controles Pin 11 y 3

Cada uno de estos tres registros puede configurar tres rangos de frecuencia diferentes para señales PWM. Normalmente, por defecto, un Arduino Uno tiene las siguientes frecuencias para los pines PWM:

Alfileres arduino Frecuencia PWM
5 y 6 980MHz
9, 10,11 y 3 500MHz

Cómo usar pines PWM en Arduino

Los pines digitales en Arduino se pueden configurar utilizando PinMode (), DigitalRead () y DigitalWrite (). Aquí la función pinmode () establece un pin como entrada y salida. Cuando configuramos los pines digitales como la función Input DigitalRead () se usa mientras se establece un PIN como la función DigitalWrite () de salida () se usa.

Analogwrite ()

Para configurar PWM Pins que usamos Analogwrite () función. Esta función escribe un valor analógico en un pin digital. Puede establecer el ciclo de trabajo de señal PWM. Cuando se llama a la función analogwrite en un pin específico, se genera una onda cuadrada estable con ciclo de trabajo definido. Esta onda cuadrada permanecerá allí hasta que llamemos a una nueva función analogwrite () para ese pin o escriba un nuevo valor usando digitalread () o digitalwrite () función.

Sintaxis

Analogwrite (pin, valor)

La función AnalogWrite () toma dos argumentos:

  • Alfiler: Pin cuyo valor se debe establecer.
  • Valor: Describe el ciclo de trabajo entre 0, que es bajo de estado y 255, que es alto o en estado.

Otro argumento que es opcional en caso de PWM es la frecuencia. Si esto no se especifica de forma predeterminada, es 500Hz.

El valor AnalogWrite () define el ciclo de trabajo para las señales PWM:

  • Analogwrite (0) significa una señal PWM que tiene un ciclo de trabajo del 0%.
  • AnalogWrite (127) significa una señal PWM que tiene un ciclo de trabajo del 50%.
  • AnalogWrite (255) significa una señal PWM que tiene un ciclo de trabajo del 100%.

Conclusión

PWM en Arduino es una técnica o método para controlar dispositivos analógicos utilizando señales digitales. Todos los tableros Arduino tienen pines PWM a bordo. 6 pines PWM están presentes en Desatado Fuera del total de 14 alfileres digitales. Aquí discutimos cómo podemos configurar estos pines usando la función Analogwrite () en Arduino Uno.