RGB LED Tutorial (utilizando un Arduino) (RGBL) (5 / 6 paso)

Paso 5: Código de Arduino analógico

Ahora en la diversión cosas, controlando un LED RGB con los pernos de Arduinos PWM (modulación de anchura de pulso). Este te permite crear casi cualquier color tus deseos de corazón y más se desvanecen entre colores.

Para hacer este cada LED requiere 3 pines PWM. Como el Arduino tiene sólo 6 pines PWM sólo dos LEDs RGB puede ser controlados de esta manera en un momento.

En cuanto al código usamos la función analogWrite (pin, valor), para más detalles, visite la referencia del código en Arduino.cc )

Para conseguir jugar con el sus LEDs de manera analógica simplemente...

  • Copie y pegue el código siguiente en un sketch de Arduino vacíelo
  • Compilar y subir el sketch a la placa Arduino
  • Ejemplo uno comenzará girando el magenta de LED (puede entonces jugar con el color para cambiar a otros valores o definir los suyos propios)
  • A continuación comente la línea del ejemplo 1 (Añadir / /)
  • 2 ejemplo de un Comentario (elimine el / /)
  • Compilar y cargar el ejemplo de la tabla.
  • Ahora ver como su LED iluminará de un color verde blanquecino, cambiar los números en la matriz de tempColor [] para cambiar el color de la muestra
  • Comentario a ejemplo 2 (Añadir / /)
  • Quite el comentario de ejemplo 3 (eliminar la / /)
  • Compilar y subir el programa a la placa
  • Mira como los fundidos LED de rojo a verde a azul. Para ver cómo esto es accompished vistazo a la función fadeToColor()
  • Siguiente codificación y burlarse de su propio cambio de programas color

(Un pequeño video del programa de prueba)

Apéndice 1: _RGBL_AnalogTest

---bof---preámbulo RGBL-analógico / / RGB LED pinsint ledAnalogOne [] = {3, 5, 6}; los tres pernos de los 3 primeros de LED analógico = redPin, 5 = greenPin, 6 = bluePin //These pasadores deben estar PWMint ledAnalogTwo [] = {9, 10, 11}; los tres pernos del segundo analógico LED 9 = redPin, 10 = greenPin, 11 = bluePin //These pasadores deben estar PWM / / colores definidos (diferentes valores RGB (rojos, verdes, azul) para colores//(to add your own ie. fuscia experiment and then add to the list) byte const [rojo] = {255, 0, 0}; byte const naranja [] = {4, 83, 0}; byte const amarillo [] = {255, 255, 0}; byte const verde [] = {0 255, 0}; byte const azul [] = {0, 0, 255}; byte const INDIGO [] = {4, 0, 19}; byte const [violeta] = {23, 0, 22}; byte const cian [] = {0, 255, 255}; byte const MAGENTA [] = {0, 255, 255}; BLANCO de byte const [] = {255, 255, 255}; byte const negro [] = {0, 0, 0}; ROSA de byte const [] = {158, 4, 79}; ---EF---RGBL-analógico Preamblevoid setup() {para (int i = 0; me < 3; i ++) {pinMode (ledAnalogOne [i], salida); //Set el LED de tres pines como salida pinMode (ledAnalogTwo [i], salida); //Set el LED de tres pines como salidas} colores (ledAnalogOne, negro) //Turn apagado led 1 colores (ledAnalogTwo, negro); //Turn de led 2} void loop() {/ * ejemplo 1 - define colores Set para un color conocido (puede utilizar cualquiera de los anteriores colores definidos) * / colores (ledAnalogOne MAGENTA); / * Ejemplo 2 - cualquier Set de Color el LED de cualquier color usted como * / //byte tempColor [] = {12,34,12}; el valor RGB (rojo, azul de gren) un color Mostrar //setColor (ledAnalogOne, tempColor); / * Ejemplo 3 - desvanecimiento Fade el LED entre dos colores (esto irá de rojo a verde a azul luego a rojas) * / //fadeToColor (ledAnalogOne, rojo, verde, 10); fadeToColor tiene 4 parámetros //ledAnalogOne - una matriz con 3 valores que definen los pasadores de la //RED LED rojos, verdes y azules - es el color de inicio //GREEN - este es el final color //10 - el retardo (en milisegundos entre versiones) (determina la velocidad de fundido) //fadeToColor (ledAnalogOne, verde, azul, 10); Se desvanece de verde a azul //fadeToColor (ledAnalogOne, azul, rojo, 10); Se desvanece desde el azul al rojo} / * establece el color del LED a un valor RGB led - (int arreglo de tres valores que definen los pines del LED (led [0] = redPin, led [1] = greenPin, llevado [2] = bluePin)) color - (matriz de bytes de tres valores defing color RGB para mostrar (color [0] = nuevo valor de rojo, color [1] = nuevo valor de verde, color [2] = nuevo valor de rojo * / void colores (int * led byte * color) {para (int i = 0; i < 3; i ++) {//iterate a través de cada uno de los tres pins analogWrite (rojo, verde, azul) (led [i], 255 - color[i]); //set el valor de salida analógica de cada pin en el valor de entrada (es decir led [0] (pin rojo) a 255-color [0] (color rojo de la entrada) //we uso 255 - el valor porque es de nuestro LED RGB ánodo común , esto significa que un color está lleno de cuando nos la salida analogWrite (pin 0) //and apagado cuando nos la salida analogWrite (pin, 255)
. }} / * Una versión de colores que toma un color predefinido (necesario para permitir que los colores predefinidos de const int * / void colores (int * led, const byte * color) {byte [] tempByte = {color [0], [1] de color, color [2]}; colores (led, tempByte);} / * Se descolora a un color final en fadeSpeed led - el LED de un color de inicio (int arreglo de tres valores que definen los pines del LED (led [0] = redPin, led [1] = greenPin, llevado [2] = bluePin)) startCcolor - (matriz de bytes de tres valores defing el color RGB de inicio (startColor [0] = Inicio valor rojo, startColor [1] = Inicio verde valor, startColor [2] = Inicio valor rojo endCcolor - (matriz de bytes de tres valores defing el acabado color RGB (endColor [0] = final valor rojo , endColor [1] = fin valor verde, endColor [2] = final valor rojo fadeSpeed - esto es el retardo en milisegundos entre los pasos, define la velocidad de la transición * / void fadeToColor (int * led, byte * startColor, byte * endColor, fadeSpeed int) {int changeRed = endColor [0] - startColor [0]; //the diferencia en los dos colores para el canal rojo int changeGreen = endColor [1] - startColor [1]; //the diferencia en los dos colores para el canal verde int changeBlue = endColor [2] - startColor [2]; //the diferencia en los dos colores para los pasos de int azul = max(abs(changeRed),max(abs(changeGreen), abs(changeBlue))); modificar el número de pasos de cambiar el canal máximo (int me = 0; me < pasos; i ++) {//iterate para el canal con el máximo cambio newRed bytes = startColor [0] + (me * changeRed / pasos); //the newRed intensidad depende de la intensidad de arranque y el cambio determinada sobre newGreen bytes = startColor [1] + (me * changeGreen / pasos); //the newGreen intensidad byte newBlue = startColor [2] + (me * changeBlue / pasos); //the newBlue intensidad bytes newColor [] = {newRed newGreen, newBlue}; Definir una matriz de color RGB para los colores de color nuevo (led, newColor); Configurar el LED para el delay(fadeSpeed) valor calculado; Colores de retraso fadeSpeed milisegundos antes de continuar con el siguiente color} (led, endColor); El LED debe estar en el endColor pero establece en endColor para evitar errores de redondeo} / * una versión de fadeToColor que lleva colores predefinidos (necesario para permitir que los colores predefinidos de const int * / void fadeToColor (int * led const byte * startColor, const byte * endColor, fadeSpeed int) {byte [] tempByte1 = {startColor [0], [1] de startColor, startColor [2]}; byte [] tempByte2 = {endColor [0], endColor [1], endColor [2]}; fadeToColor (led, tempByte1 tempByte2, fadeSpeed);}

Artículos Relacionados

Simple RGB LED Tutorial(Digital Colour Mixer and Controlling using Potentiometer)

Simple RGB LED Tutorial(Digital Colour Mixer and Controlling using Potentiometer)

un sencillo tutorial para mostrar la funcionalidad de un ánodo RGB LED común y generando una paleta 7 mezclando entradas digitales un potenciómetro se utiliza en el mismo circuito para controlar los colores aparece con un código de arduino diferente
RGB led de control [PC, Arduino]

RGB led de control [PC, Arduino]

compartir es bueno... ese es el lema de este instructable... : Da todos los freaks llevados como, aquí es un placer...quería lograr el control total chasis personalizado led tiras de mi computadora, 3 tiras para ser exacto, completo control como únic
Inalámbrico de control remoto utilizando NRF24L01 de 2,4 Ghz: sencillo Tutorial utilizando NRF24L01 & Arduino

Inalámbrico de control remoto utilizando NRF24L01 de 2,4 Ghz: sencillo Tutorial utilizando NRF24L01 & Arduino

Hola a todos este es mi segundo instructable. Después de mucho surf en GOOGLE cuando wont capaces de encontrar un fácil y sencillo tutorial para NRF24L01 transceptor entonces decidió publicar un instructable sobre esto. Este es un simple tutorial cor
ARDUINO controlada 12v RGB LED tira

ARDUINO controlada 12v RGB LED tira

Hace aproximadamente un año descubrí que tiras de LED RGB en Amazon. Ser justo antes del inicio de la temporada de festivales de música, naturalmente fui directamente a trabajar haciendo juguetes festival destellantes brillantes loco. Las tiras no di
Bajo responsiva RGB Leds utilizando Arduino

Bajo responsiva RGB Leds utilizando Arduino

Este tutoiral le mostrará cómo usar Arduino y a un conjunto de leds utilizando música del ordenador de control. Este tutorial requiere:-Arduino (utilicé un leonardo)-pequeña protoboard con los cables de puente (kit es la mejor oferta)-rgb led tira (u
ARDUINO UNO - Commom ánodo RGB LED 3-color parpadeo utilizando código Simple

ARDUINO UNO - Commom ánodo RGB LED 3-color parpadeo utilizando código Simple

Mientras que un parpadeo de 3 colores de un cátodo común RGB LED es simple me pareció un poco tedioso obtener el mismo resultado de un ánodo común uno debido a mi conocimiento muy básico de ARDUINO UNO de programación. Así que me di cuenta de un circ
ARDUINO UNO - cátodo común RGB LED 3-color parpadeo utilizando código Simple

ARDUINO UNO - cátodo común RGB LED 3-color parpadeo utilizando código Simple

Aquí es un circuito simple con incluso más simple código a parpadear un LED RGB de cátodo común. Todo lo que necesitas es información básica sobre el Arduino UNO y la comprensión del simple código de Arduino como 'Parpadear' ejemplo de código en el I
Controlado por Arduino RGB LED Infinity Mirror

Controlado por Arduino RGB LED Infinity Mirror

Actualización 22/11/2013: gracias a todos los que votaron por este proyecto en el concurso de microcontrolador! Fue uno de los tres ganadores del primer premio.Actualización 17/09/2013: gracias a todos los que votaron por este proyecto en el concurso
Primeros pasos con Arduino - RGB LED

Primeros pasos con Arduino - RGB LED

En este tutorial veremos cómo hasta un rojo/verde/azul (RGB) emisión de luz diodo (LED) de alambre a un Arduino y control sobre el puerto serie. Usted podría utilizar un componente básico del RGB LED (es decir, un domo plástico con cuatro patas!), pe
Arduino RGB LED

Arduino RGB LED

¿Mientras que los "leds normales" son diversión, RGB los son incluso más divertido, imaginar usando aquel color de emisión led púrpura, color naranja y muchos más, no que sea fresco? En este tutorial vamos a ver en el proceso de conectar un RGB
Cómo hacer un indicador de salud de RGB-LED de Minecraft - Arduino!

Cómo hacer un indicador de salud de RGB-LED de Minecraft - Arduino!

¿Quieres hacer comentarios luz cool para tu experiencia de juego perfecta en minecraft? No busques más!Lo que necesitarás:1 Arduino (de cualquier tipo que acepta alimentación Vin)1 protoboard / PrototypeboardUnos de los cables de puente3 transistores
Descoloramiento RGB LED (Arduino)

Descoloramiento RGB LED (Arduino)

en este Instructable voy a mostrarte cómo hacer un simple desvanecimiento Led RGB.Se puede utilizar como lámpara de noche agradable o como iluminación del humor.Paso 1: partesPara hacerlo que necesitarás:-un Arduino (estoy utilizando un Arduino UNO R
Luz del estroboscópico del policía con escáner rgb LED y Arduino

Luz del estroboscópico del policía con escáner rgb LED y Arduino

No es un patrón real flash utilizado por la policía.Pocos loops programados por mí para demostrar algunas posibilidades.DESCARGO DE RESPONSABILIDAD:NO SOY RESPONSABLE DE LAS ACCIONES O CONSECUENCIAS CON RESPECTO A ESTE TUTORIAL.Usar sólo en interiore
ArduDroid: Un Simple controlador de Android basado en el modo Bluetooth 2 para Arduino RGB led tira

ArduDroid: Un Simple controlador de Android basado en el modo Bluetooth 2 para Arduino RGB led tira

INTRODUCCIÓNCONSEGUIR en el app de google PLAY "ardudroid"ARDUDROID (antes Andruino) es una aplicación Android sencilla para ayudarle a controlar los pines de tu Arduino Uno (o clon) de tu teléfono Android sin cables. Es una aplicación Android y