Yo estaba buscando en mi Arduino Uno y me di cuenta de que el símbolo de los pines digitales 11
, 10
, 9
, 6
, 5
, y 3
. ¿Qué significan estos? ¿Esto afecta la forma en que funciona? ¿No puedo usar estos pines para ciertas situaciones?
Yo estaba buscando en mi Arduino Uno y me di cuenta de que el símbolo de los pines digitales 11
, 10
, 9
, 6
, 5
, y 3
. ¿Qué significan estos? ¿Esto afecta la forma en que funciona? ¿No puedo usar estos pines para ciertas situaciones?
Respuestas:
Relajarse. No te preocupes Estos pines se llaman PWM
y son los mismos que los otros pines, excepto que tienen un "bono adicional".
Algunos usos del sitio web de Arduino :
- Atenuar un LED
- Simula una salida analógica. La salida sigue cambiando digitalmente de 0V a 5V. Sin embargo, filtro de paso bajo (condensador y resistencia) para simular voltajes analógicos.
- Generando señales de audio.
- Proporcionando control de velocidad variable para motores.
- Generar una señal modulada, por ejemplo, para controlar un LED infrarrojo para un control remoto.
Cómo funciona:
Los pines PWM están controlados por temporizadores en chip que alternan los pines automáticamente a una velocidad de aproximadamente 490Hz. La "Modulación de ancho de pulso" (PWM) es el tiempo que el pin permanece encendido o apagado durante un solo ciclo de esa frecuencia. Esto puede atenuar un LED al dar la ilusión de que tiene la mitad del brillo que antes, donde realmente parpadea muy rápidamente.
Cuando hay un ciclo de trabajo del 25%, es una cuarta parte del tiempo. Si usó para un LED, parecería aproximadamente 1 / 4th como brillante [más o menos]. (Nota: como algunas personas señalaron, esto no es realmente proporcional, pero dejémoslo así por simplicidad. EJ: 25% no siempre es 1/4 de brillo).
(Si usted es realmente un experto en electricidad, probablemente podría agregar un condensador para que también sea una salida analógica).
Cómo usar estos pines para la salida:
Primero, debe definir el pin como salida. Entonces, lo usas
analogWrite(ledPin, 128);
para comenzar. El ledPin
es el pin PWM que desea iniciar PWM y 128
debe reemplazarse con un número entre 0
y 255
; 0
: 0% duty cycle
(Apaga el pasador completamente apagado) y 255
: 100% duty cycle
. (enciende el pin por completo)
Fuente: http://www.arduino-tutorials.com/arduino-pwm/
¿Por qué no puedo encender y apagar la luz realmente rápido en mi código ?:
Técnicamente, puede, sin embargo, hay algunos problemas:
Realmente no hará mucha diferencia si el único propósito del Arduino es generar señales PWM. Sin embargo, si coloca retrasos de más de 50 MS en el bucle principal, arruinará el tiempo. Con el enfoque de software, querrá eliminar cualquier función de "retraso" ya que Arduino solo se ejecuta en un hilo (solo puede hacer una cosa a la vez). Si sabe lo que está haciendo, no hará una gran diferencia atenuar la luz, pero si tiene un pin adicional con PWM, solo está perdiendo el tiempo con un enfoque de software.
Como otros han señalado:
Aún necesita una resistencia para que sus circuitos limiten la corriente y el voltaje. No puedes saltarte esto.
Un error común sobre los pines PWM es que cuando se usa PWM, no es necesario usar resistencias limitadoras de corriente (con LED, por ejemplo).
Esto no es verdad. Los pines PWM deben considerarse pines digitales, que se encienden y apagan automáticamente. Esto significa que van al mismo ALTO voltaje que cualquiera de los otros pines.
Al usar LED con PWM, aún debe usar resistencias limitadoras de corriente. Cuando use motores con PWM, debería (casi siempre) usar un transistor.