Tutoriel de LED RGB (en utilisant un Arduino) (RGBL) (5 / 6 étapes)

Étape 5: Analog Code Arduino

Maintenant sur le fun stuff, contrôlant une LED RGB en utilisant les broches Arduinos PWM (modulation de largeur d’impulsions). Ce vous permet de créer presque n’importe quelle couleur votre coeur désire et mieux que ça s’estompent entre les couleurs.

Pour faire cette chaque LED nécessite 3 broches PWM. Comme l’Arduino a seulement 6 broches PWM seulement deux LEDs RVB peut être contrôlées de cette façon à la fois.

En ce qui concerne le code, nous allons utiliser la fonction analogWrite (pin, valeur), pour plus de détails, visitez la référence du code sur Arduino.cc )

Pour commencer à jouer avec le votre LED de manière analogique tout simplement...

  • Copiez et collez le code ci-dessous dans un sketch Arduino vide
  • Compiler et charger le croquis sur votre carte Arduino
  • Exemple on va commencer en tournant le magenta de LED (vous pouvez ensuite jouer avec la couleur de le changer d’autres paramètres prédéfinis ou définir vos propres)
  • Ensuite mettez en commentaire la ligne de l’exemple 1 (ajouter / /)
  • Un commentaire exemple 2 (supprimer les / /)
  • Compiler et télécharger l’exemple de votre planche.
  • Maintenant, regardez votre LED s’avère une couleur verte blanchâtre, changer les chiffres dans le tableau [] tempColor pour modifier la couleur affichée
  • Exemple 2 en commentaire (ajouter / /)
  • Exemple 3 de décommenter (supprimer les / /)
  • Compiler et télécharger le programme sur votre planche
  • Regardez comme les fondus de LED du rouge au vert à bleu. Pour voir comment cela est accompli coup d’oeil à la fonction fadeToColor()
  • Ensuite obtenir codage et faire votre propre plaisir programmes de changement de couleur

(Une petite vidéo du programme de test)

Annexe 1: _RGBL_AnalogTest

---bof---préambule RGBL-Analog / / RGB LED pinsint ledAnalogOne [] = {3, 5, 6} ; les trois broches des analogique 3 LED = redPin, 5 = greenPin, 6 = bluePin //These bornes doivent être PWMint ledAnalogTwo [] = {9, 10, 11} ; les trois broches du deuxième analogique 9 LED = redPin, 10 = greenPin, 11 = bluePin //These bornes doivent être PWM / / couleurs définies (différentes valeurs de RVB (rouges, verts, bleus) des couleurs//(to add your own ie. fuscia experiment and then add to the list) const byte [rouge] = {255, 0, 0}; const byte [ORANGE] = {83, 4, 0}; const byte jaune [] = {255, 255, 0}; vert de const byte [] = {0 255, 0} ; BLEU de const byte [] = {0, 0, 255} ; const byte [] INDIGO = {4, 0, 19} ; const byte [VIOLET] = {0, 22, 23} ; const byte [CYAN] = {0, 255, 255} ; const byte MAGENTA [] = {0, 255, 255} ; BLANC de const byte [] = {255, 255, 255} ; NOIR de const byte [] = {0, 0, 0} ; Rose de const byte [] = {4, 158, 79} ; ---eof---RGBL-Analog Preamblevoid setup() {pour (int j’ai = 0; j’ai < 3; i ++) {pinMode (ledAnalogOne [i], sortie); //Set la LED trois broches comme sorties pinMode (ledAnalogTwo [i], sortie); //Set la LED trois broches comme sorties} setColor (ledAnalogOne, noir); //Turn hors conduit 1 setColor (ledAnalogTwo, noir); //Turn off led 2} void loop() {/ * exemple 1 - défini les couleurs définies à une couleur connue (vous pouvez utiliser une des couleurs définies ci-dessus) * / setColor (ledAnalogOne MAGENTA) ; / * Exemple 2 - toute couleur définie la LED à une couleur vous comme * / //byte tempColor [] = {12,34,12} ; la valeur RVB (rouge, gren bleu) d’une couleur afficher //setColor (ledAnalogOne, tempColor) ; / * Exemple 3 - Fading Fade la LED entre deux couleurs (cela va aller du rouge au vert au bleu puis au rouge) * / //fadeToColor (ledAnalogOne, rouge, vert, 10) ; fadeToColor prend 4 paramètres //ledAnalogOne - un tableau avec 3 valeurs définissant les broches rouges, verts et bleus de la //RED LED - c’est la couleur de début //GREEN - c’est la fin couleur //10 - le délai (en millisecondes entre les mises à jour) (détermine la vitesse du fondu) //fadeToColor (ledAnalogOne, vert, bleu, 10) ; Passe du vert au bleu //fadeToColor (ledAnalogOne, bleu, rouge, 10) ; Passe du bleu au rouge} / * définit la couleur de la LED pour n’importe quelle valeur RGB led - (int tableau de trois valeurs définissant les broches de la LED (menaient [0] = redPin, a conduit [1] = greenPin, a conduit [2] = bluePin)) couleur - (tableau d’octets de trois valeurs defing une couleur RVB pour afficher (couleur [0] = nouvelle valeur rouge, couleur [1] = nouvelle valeur verte, couleur [2] = nouvelle valeur rouge * / void setColor (int * a conduit byte * couleur) {pour (int j’ai = 0; j’ai < 3; i ++) {//iterate par l’intermédiaire de chacune des trois broches (rouge vert bleu) analogWrite (conduit [i], 255 - color[i]) ; //set la valeur de sortie analogique de chaque goupille pour la valeur d’entrée (c’est à dire led [0] (pin rouge) à 255-couleur [0] //we (couleur rouge d’entrée) utiliser 255 - la valeur car nos LED RGB est anode commune , cela signifie une couleur est pleine sur nous lors de la sortie analogWrite (broches, 0) //and hors de nous lors de la sortie analogWrite (broches, 255)
. }} / * Une version de setColor qui prend une couleur prédéfinie (nécessaire pour permettre les couleurs prédéfinies de const int * / void setColor (int * conduit, const byte * couleur) {byte tempByte [] = {color [0], [1] de couleur, couleur [2]}; setColor (led, tempByte);} / * S’estompe la LED d’une couleur de départ à une couleur de fin à fadeSpeed led - (int tableau de trois valeurs définissant les broches de la LED (menaient [0] = redPin, a conduit [1] = greenPin, a conduit [2] = bluePin)) startCcolor - (tableau d’octets de trois valeurs defing la couleur RGB de départ (startColor [0] = start valeur rouge, startColor [1] = start vert valeur, startColor [2] = start valeur rouge endCcolor - (tableau d’octets de trois valeurs defing la couleur de RVB finie (endColor [0] = fin de la valeur rouge , endColor [1] = fin de valeur vert, endColor [2] = fin rouge valeur fadeSpeed - c’est le délai en millisecondes entre les étapes, définit la vitesse de la fondu * / void fadeToColor (int * a conduit octets * startColor, byte * endColor, int fadeSpeed) {int changeRed = endColor [0] - startColor [0]; //the différence dans les deux couleurs pour la couche rouge int changeGreen = endColor [1] - startColor [1]; //the différence dans les deux couleurs pour la couche verte int changeBlue = endColor [2] - startColor [2]; //the différence dans les deux couleurs pour les étapes d’int canal bleu = max(abs(changeRed),max(abs(changeGreen), abs(changeBlue))) ; faire le nombre d’étapes de changement le changement de canal pour (int j’ai = 0; j’ai < étapes; i ++) {//iterate pour le canal avec le maximum changer newRed octets = startColor [0] + (j’ai * changeRed / étapes); //the newRed intensité dépend de l’intensité de démarrage et le changement déterminé ci-dessus newGreen octets = startColor [1] + (j’ai * changeGreen / étapes); //the newGreen intensité octet newBlue = startColor [2] + (j’ai * changeBlue / étapes); //the newBlue intensité newColor Byte = {newRed newGreen, newBlue} ; Définir un tableau de couleur RVB pour la nouvelle couleur setColor (led, newColor) ; La valeur de la LED à la delay(fadeSpeed) de la valeur calculée ; Delay fadeSpeed millisecondes avant de passer à la prochaine couleur} setColor (led, endColor) ; La LED doit être à l’endColor mais valeur endColor pour éviter les erreurs d’arrondi} / * une version de fadeToColor qui prend des couleurs prédéfinies (nécessaire pour permettre les couleurs prédéfinies de const int * / void fadeToColor (int * conduit, const byte * startColor, const byte * endColor, int fadeSpeed) {byte tempByte1 [] = {startColor [0], startColor [1], [2] de startColor}; tempByte2 Byte = {endColor [0], endColor [1], [2] d’endColor}; fadeToColor (led, tempByte1 tempByte2, fadeSpeed);}

Articles Liés

Police stroboscope à LED rgb de scanner et Arduino

Police stroboscope à LED rgb de scanner et Arduino

Il n'est pas un motif réel flash utilisé par la police.Quelques boucles programmés par moi pour démontrer certaines possibilités.AVERTISSEMENT :JE NE SUIS PAS RESPONSABLE POUR LES ACTIONS OU LES CONSÉQUENCES AU SUJET DE CE TUTORIEL.Utilisez-la unique
Pilote de Rainbow LED RGB 555 (ne pas utiliser un 4029)

Pilote de Rainbow LED RGB 555 (ne pas utiliser un 4029)

| A_Teacher |OK, donc autant que je peux dire, c'est une marque unique NEW design.Appel à tous les Cadets de l'espace : Comme un moyen de motiver les gens à rendre le projet, je suis actuellement loin de donner 3 mois d'adhésion Pro Instructables à l
Commander une LED RGB avec le HC-06 Bluetooth Module utilisant Android OS(Arduino)

Commander une LED RGB avec le HC-06 Bluetooth Module utilisant Android OS(Arduino)

Ce tutoriel vous expliquera le processus de connexion d'un Bluetooth Module de HC-06 à un Arduino et contrôler la couleur d'une LED RGB à l'aide de l'application ArduDroid sur le système d'exploitation Android. Cette configuration très probablement c
Comment utiliser une LED RGB - Arduino Tutorial

Comment utiliser une LED RGB - Arduino Tutorial

Une LED RGB a 4 broches, un pour chaque couleur (rouge, vert, bleu) et une cathode commune. Il dispose d'arbre différente couleur-électroluminescentes qui peuvent être combinés pour créer toutes sortes de couleur ! N'importe quelle couleur est possib
Ambilight pour LED RGB non adressable [Arduino utilisant]

Ambilight pour LED RGB non adressable [Arduino utilisant]

Tout d'abord.. Si vous ne savez pas quel Ambilgiht est cocher Ambilgiht PhillipsDécouvrez mon autre tutoriel si vous n'avez pas un arduino TUTpuisque c'est le même rgb led et mêmes 3 transistors que j'ai utilisé avant pourquoi mettre arduino pour tra
Circuit de Strip LED RGB avec Arduino

Circuit de Strip LED RGB avec Arduino

Ce Instructable couvre l'Assemblée d'un circuit capable d'ing PWM (modulation de largeur d'impulsion) une bande de RVB LED 9-12v et un Arduino pour faire défiler une gamme de couleurs de programmation. Je vais discuter de comment monter un transistor
Bit cogner étape par étape : Arduino contrôle de WS2811, WS2812 et LED RGB WS2812B

Bit cogner étape par étape : Arduino contrôle de WS2811, WS2812 et LED RGB WS2812B

Avertissement: l'an dernier, quelques bibliothèques différentes ont été écrits pour contrôler ces LEDs RGB omniprésent par les collègues responsables de Adafruit, achetant et le projet FastSPI.  Les bibliothèques fonctionnent très bien, et nous devri
Utilisez un ATTiny $1 pour conduire adressable LED RGB

Utilisez un ATTiny $1 pour conduire adressable LED RGB

Arduinos sont merveilleux et facile à travailler, mais il y a quelques projets où vous avez besoin d'un microcontrôleur, ou à ajouter certains interactivité mais ne veulent pas vraiment de dédier une planche de 20-30 $!À un peu plus de 1 $/ chaque (m
Comment contrôler une bande de LED RGB - Tutorial Arduino

Comment contrôler une bande de LED RGB - Tutorial Arduino

Dans ce tutoriel, nous allons utiliser une bande avec 8 LEDs RGB avec la carte de Arduino uno. Nous allons utiliser la bibliothèque de NeoPixel de la Adafruit pour changer la couleur de chaque led.Let's get started !Étape 1: Ce que vous aurez besoinP
En utilisant une RPi pour contrôler une LED RGB

En utilisant une RPi pour contrôler une LED RGB

Comme rahulkar mentionné dans son tutoriel, LED de contrôle semble être le « Hello World » de l'électronique. Il est facile de mettre en place, on apprend beaucoup sur le fonctionne électronique et en fin de compte, vous avez un chouette petit morcea
En utilisant une LED RGB pour détecter les couleurs

En utilisant une LED RGB pour détecter les couleurs

je vais vous montrer comment vous pouvez utiliser une LED RVB et une cellule photoélectrique de CD comme un capteur de couleur pour un micro-contrôleur. Je vais illustrer la méthode pour récupérer une couleur à l'aide d'Arduino, et je vais vous montr
Couleur étalonnage LED RGB avec un Arduino

Couleur étalonnage LED RGB avec un Arduino

La plupart des gens pensent à LEDs et à la fin des relations de l'Arduino avec un clin d'esquisse. Par la suite, il faut aller vers des moteurs, des maisons intelligentes et autres trucs « sérieux ». Eh bien, peut-être que je suis lent ou peut-être c
Android contrôle Slider à LED RGB Arduino

Android contrôle Slider à LED RGB Arduino

C'est vraiment un amusement projet au lieu de contrôler le RGB piloté depuis le potentiomètre vous pouvez être piloté depuis une application android, application android pour ce projet a été créée à l'aide d'inventeur MIT de app, où vous pouvez dépla
Commander une Led RGB avec Arduino et traitement

Commander une Led RGB avec Arduino et traitement

cette instructable (mon premier pas moins) indique comment contrôler une RGB a conduit à l'aide de la transformation et arduino.La caractéristique principale étant que la couleur est sélectionnée en cliquant sur une image, la valeur RGB du pixel sur