Arduino Starter Kit, Color Mixing Lamp Project 4

2

Acabo de empezar a buscar en la electrónica y los circuitos. Compré el Arduino Starter Kit para ayudarme a comenzar. Tengo una pregunta con respecto a uno de los 15 proyectos que viene con. Específicamente con el proyecto 4. Básicamente, el proyecto presenta fotoresistores, en este caso 3, y el LED de luz múltiple, que creo que es un LED RGB estándar.

La parte que no entiendo es que tenemos que hacer un cálculo para las lecturas de la resistencia. Tenemos que convertir la lectura, que estaría en un rango de 0-1023 a un rango de 0-255 para la función analogWrite (). El cálculo es muy simple, simplemente divida la lectura por 4 y obtendrá una medición dentro del rango de 0-255.

No entiendo la necesidad de la conversión. ¿Cuál es la necesidad de ello? ¿Por qué el rango del sensor es 0-1023 y no otro rango? Todo lo que obtengo de la lectura es que es necesario para la función y no entra en más detalles aparte de eso. Estoy seguro de que es algo fundamental que simplemente no estoy viendo.

Cualquier punto en la dirección correcta sería apreciado. Gracias!

    
pregunta Schanckopotamus

1 respuesta

2

Si observa la hoja de datos de la MCU en el centro del Arduino, el ATmega328, verá que tiene ADCs de 10 bits y PWM de 8 bits (algunos pueden ser de 9 o 10 bits, pero las bibliotecas de Arduino las restringen a 8).

Dividir el resultado del ADC de 10 bits (0 a 1023, 2 10 -1) por 4 (2 2 ) lo reduce a un valor de 8 bits ( 0 a 255, 2 8 -1), que se ajustará a los registros PWM.

    
respondido por el Ignacio Vazquez-Abrams

Lea otras preguntas en las etiquetas