Menu mobile
En esta lección, usaremos PWM para controlar un LED RGB y hacer que muestre varios colores.
{Product:2000}{Product:1436}{Product:287}{Product:603}{Product:1692}
Principio
RGB significa canales de color Rojo (Red), Verde (Green) y Azul (Blue) y es un estándar de color de la industria. RGB muestra varios colores nuevos cambiando los tres canales y superponiéndolos, según las estadísticas se pueden crear 16.777.216 colores diferentes. Si crees que el color mostrado no coincide completamente con un color natural, es debido a que no se puede diferenciar con seguridad a simple vista. Cada uno de los tres canales de color de rojo, verde y azul tiene 255 niveles de brillo. Cuando los tres colores primarios son todos 0, "luz LED" es el más oscuro, es decir, se apaga. Cuando los tres colores primarios son los 255, "Luz LED" es el más brillante, es decir blanco. Al superponer la luz emitida por los tres colores primarios, los colores se mezclarán. Sin embargo, el brillo es igual a la suma de todo el brillo, y cuanto más se mezcla, más brillante es el LED. Este proceso se conoce como mezcla aditiva. En este experimento, también usaremos PWM que ha conocido en este super kit. Aquí introducimos cualquier valor entre 0 y 255 a los tres pines del LED RGB para que muestre diferentes colores.
Procedimiento
Paso 1: Conecta el circuito como se muestra en el diagrama siguiente:
El diagrama esquemático correspondiente es el siguiente:
Paso 2: Programa (consulta el código de ejemplo en el CD o en la web oficial)
//RGB LED
//The RGB LED will appear red, green, and blue first, then red, orange, yellow, green, blue, indigo, and purple.
//
//2015.5.7
/*************************************************************************/
const int redPin = 11; // R petal on RGB LED module connected to digital pin 11
const int greenPin = 10; // G petal on RGB LED module connected to digital pin 9
const int bluePin = 9; // B petal on RGB LED module connected to digital pin 10
/**************************************************************************/
void setup()
{
pinMode(redPin, OUTPUT); // sets the redPin to be an output
pinMode(greenPin, OUTPUT); // sets the greenPin to be an output
pinMode(bluePin, OUTPUT); // sets the bluePin to be an output
}
/***************************************************************************/
void loop() // run over and over again
// Basic colors:
color(255, 0, 0); // turn the RGB LED red
delay(1000); // delay for 1 second
color(0,255, 255); // turn the RGB LED green
color(0, 0, 255); // turn the RGB LED blue
// Example blended colors:
color(255,0,0); // turn the RGB LED red
color(237,109,0); // turn the RGB LED orange
color(255,215,0); // turn the RGB LED yellow
color(34,139,34); // turn the RGB LED green
color(0,0,255); // turn the RGB LED blue
color(0,46,90); // turn the RGB LED indigo
color(128,0,128); // turn the RGB LED purple
/******************************************************/
void color (unsigned char red, unsigned char green, unsigned char blue) // the color generating function
analogWrite(redPin, red);
analogWrite(bluePin, blue);
analogWrite(greenPin, green);
Paso 3: Compila el programa.
Paso 4: Graba el programa en la placa Uno.
El LED RGB aparecerá rojo, verde y azul primero, luego rojo, naranja, amarillo, verde, azul, índigo y púrpura.