Arduino Hack - RGB LED's - de CPU-ventilator & TLC5940 (6 / 7 stap)

Stap 6: Schrijven van de Software


Nu is een geweldige tijd om te testen uw werk bijna altijd, er was een fout gemaakt langs de weg in de bedrading of in de organisatie. Vaak tijden, als met goedkope LED's van eBay gekocht - is de rode diode binnen elke LED super gevoelig voor schade uit miswiring en oververhitting van het solderen.

Ik ben in geen geval software geneigd. Gebruik de basisvoorbeelden van TLC5940 kan resulteren in enkele zeer coole effecten. Ik heb een aantal voorbeelden genomen en bewerkt ze voor bepaalde toepassingen. Ga naar de volgende link voor het downloaden van de source codebibliotheek voor de Arduino IDE.

http://code.Google.com/p/tlc5940arduino/

Eerst testen door een voorbeeld te laden. Het verdwijnt voorbeeld heeft een zeer koele effect, dit was mijn favoriet om te beginnen met. Ik wil benadrukken dat u test voordat u het installeren omdat ik ervaar een paar LED storingen tijdens het hele proces, en we willen niet worden desoldeer componenten en circuits herbedradingsproces terwijl het project binnenkant van onze computer (als we niet te hoeven).

Als u gekleurde lichten, op de power-up - bent je vertrokken naar een goede start. Ik heb een klein handvol voorbeelden ziet u hoe gemakkelijk het is aan te passen de TLC5940 source codevoorbeelden en hen aan uw eigen behoeften wijzigen verstrekt. In een voorbeeld, maak ik de LED's puur blauw aan andere accent verlichting in mijn kamer - wanneer ik heb ze ingesteld op blauw ook - mijn computer wordt aangepast aan de accentverlichting van mijn kamer.

In een ander voorbeeld, ik vervagen van de LED's van de ene kleur naar de andere, en deze code een lus zodat uw computer door verschillende kleuren scrollen zal. Er zijn vele manieren om elk effect die u zoekt, je geest en creativiteit de limiet zijn te bereiken. Mijn onbeholpen vaardigheden te ontwerpen software mogelijk niet indrukwekkend, en in die zin dat ik hoop dat sommigen van u daar zal dit project en delen van uw eigen software-effecten! Ik ben nieuwsgierig om te zien wat anderen kunnen verzinnen.

Verdeling:
Variabelen:
Mils - Fade tarief
STAP - stap-grootte van grijstinten
RC - referentie-kleur
r - variabele rood
g - groene variabele
b - blue Variable

Om te helpen eenvoudig testen en ontwikkelen van nieuwe kleur vervaagt - ik heb twee controle variabelen gedefinieerd in het setup-gedeelte van onze code, mils en stap.
Mils regelt de vertragingstijd in de for-lus - door het verhogen van de waarde van mils, we verhogen de vertraging tussen herhalingen van de lus, of het tarief waartegen we onze LEDs vervagen. Door het verlagen van de waarde van mils, we verminderen de vertraging tussen herhalingen van de lus, en verhoging van het tarief waartegen we onze LEDs vervagen.
STAP bepaalt de grijstinten stap grootte voor elke iteratie van de lus. Door de waarde voor stap verhogen, verhogen wij de stap-grootte van onze grijstinten code, waardoor onze LEDs nemen grotere toename stappen en langzaam verdwijnende sneller. Door het verlagen van de waarde van de stap, we verminderen onze stap-grootte van onze grijstinten code, waardoor onze LEDs kleinere stappen en langzamer vervagen.

RC is onze referentie-kleur. Bij het combineren van LED combinaties, zullen onze referentie-kleur onze helderste kleur. We kunnen dan onze secundaire kleur kleiner dan RC, via een wiskundige functie (of grotere) - dit zal laten om verschillende tinten met meer gemak en controle.

R, B en B zijn uiteindelijk de variabele die de grijstinten code voor elke set van rood, groen en blauwe LED's bevatten. Een waarde van 0 in de variabele opgenomen zal neerkomen op de LED wordt uitgeschakeld, terwijl een waarde van 4095 maximale lichtniveau voor dat LED zal worden.

Structuur :

Voor de structuur gebruik ik een eenvoudige for-lus. Wat de lus doet eerst onze drie variabele wordt geïnitialiseerd: r, g en b naar een weg staat van 0. Vervolgens initialiseren we onze variabele kleur RC verwijzing naar een 0, ook af. De lus zal dan zeggen, voor elke iteratie (elk exemplaar de lus 1 cyclus voert), het zal kijken naar RC. Wanneer RC gelijk aan een waarde tussen 0 en 4095 is, zullen wij de waarde van stap toevoegen aan onze RC variabele. Als stap een waarde van 1 bevat, zal onze RC stap een waarde van 1 grijstinten code per iteratie van de lus. We schrijven dan de grijstinten waarde in de variabele RC aan onze R, G of B variabelen naar onze LEDs worden geschreven. In dit geval ben ik met behulp van rood als ons voorbeeld. Ik maak, via wiskundige functie, r = RC waardoor onze r variabele nu houden de werkelijke niveau lichtwaarde, in termen van grijstinten code, kan worden bijgewerkt naar onze TLC-kanalen en output naar onze LEDs.

We updaten dan de TLC, de uitgangen volgen onze variabele maken we geconfigureerd - en invoegen van een kleine vertraging. De lus zal vervolgens terug naar het begin en beginnen met het proces totdat r heeft een waarde van 4095 (maximale lichtniveau) bereikt.

We keren deze code met enkele kleine manipulatie - en voer de code achteruit - dimmen van onze rode LEDs terug naar af. Vervolgens de cyclus herhaalt.

#include "Tlc5940.h"
VOID Setup
{
TLC.init();
#define mils 10
#define stap 1
#define rood

}
void loop
{

Er zijn 4095 stappen van 0 tot max op 4095.
Referentie-kleur gedefinieerd als RC
De kleur die u wenst te worden van de overheersende kleur zullen de referentie-kleur
Secundaire schemerige kleuren worden gecombineerd zal worden verwezen naar RC

int r = 0;
int g = 0;
int b = 0;

voor (int RC = 0; RC < 4095; RC = RC + STAP) {}
r = RC;
RODE LEDs
TLC.set (0, r);
TLC.set (3, r);
TLC.set (6, r);
TLC.set (9, r);
TLC.set (12, r);
TLC.set (15, r);
TLC.set (18, r);
TLC.set (21, r);
Groene LEDS
TLC.set (1, g);
TLC.set (4 g);
TLC.set (7 g);
TLC.set (10 g);
TLC.set (13, g);
TLC.set (16 g);
TLC.set (19, g);
TLC.set (22, g);
Blauwe LED 's
TLC.set (2, b);
TLC.set (5, b);
TLC.set (8, b);
TLC.set 11, b;
TLC.set (14, b);
TLC.set 17, b;
TLC.set 20, b;
TLC.set 23, b;

TLC.update();
delay(Mils);
}
voor (int RC = 4095; RC > 0; RC = RC-STAP) {}
r = RC;
RODE LEDs
TLC.set (0, r);
TLC.set (3, r);
TLC.set (6, r);
TLC.set (9, r);
TLC.set (12, r);
TLC.set (15, r);
TLC.set (18, r);
TLC.set (21, r);
Groene LEDS
TLC.set (1, g);
TLC.set (4 g);
TLC.set (7 g);
TLC.set (10 g);
TLC.set (13, g);
TLC.set (16 g);
TLC.set (19, g);
TLC.set (22, g);
Blauwe LED 's
TLC.set (2, b);
TLC.set (5, b);
TLC.set (8, b);
TLC.set 11, b;
TLC.set (14, b);
TLC.set 17, b;
TLC.set 20, b;
TLC.set 23, b;

TLC.update();
delay(Mils);
}
}

Als alle heeft gewerkt, en u nu de hardware en software achter de ontwerp begrijpen - dan is het nu tijd om de fans in uw computer installeren en beginnen met het genieten van de voordelen. Het installatieproces is eenvoudig, zoals u met een andere PC-ventilator - installeren zou alleen nu we een circuit hebben met plooi weg.

Gerelateerde Artikelen

Arduino controlled RGB LED nachtlampje

Arduino controlled RGB LED nachtlampje

een nachtlampje voor mijn jongens nodig en wilde iets meer dan de normale stekker in. Ze wilden een die zij kon het plukken van de kleur van en een die kleur zou veranderen.Easy - sommige PWM, een Arduino en RGB LED!Kiezen van de kleur was de kwestie
Arduino Controlled RGB LED Dot Matrix bord

Arduino Controlled RGB LED Dot Matrix bord

dit project is een relatief eenvoudig en simpel DIY muziek-board.De Dot Matrix bord kan elke ouder persoon maken hun eigen muziek en beats.Allen u moet hebben is een goed begrip van de Arduino en circuits.Stap 1: Verzamel onderdelen die nodig zijnHie
Chromatische Temperatuurdisplay - Arduino gecontroleerde RGB LED Infinity spiegel

Chromatische Temperatuurdisplay - Arduino gecontroleerde RGB LED Infinity spiegel

Dit project werd losjes geïnspireerd door , een weerstation display waarvan de kleur is gebaseerd op de buitentemperatuur. Ik had een kamergenoot op de Universiteit, die had een van deze en het was heel nuttig, in Pittsburgh vooral gewoon een blik we
Arduino-controlled RGB LED Infinity spiegel

Arduino-controlled RGB LED Infinity spiegel

Update 11/22/2013: dank aan iedereen die gestemd voor dit project in de Microcontroller-wedstrijd! Het was een van de drie winnaars van de eerste-prijs.9/17/2013 update: dank aan iedereen die gestemd voor dit project in de wedstrijd van de Arduino (i
Arduino controlled RGB LED-strip in de woonkamer

Arduino controlled RGB LED-strip in de woonkamer

Het idee achter dit kleine project was dat sommige vrij indirecte stemming licht in de woonkamer. Het wordt beheerd door de server openHAB (dat project is nog steeds op de lijst moet worden toegevoegd aan deze site) geïnstalleerd op een Raspberry Pi.
Arduino aangedreven RGB LED Scrolling klok

Arduino aangedreven RGB LED Scrolling klok

dit is een 8 x 8 RGB LED module, gedreven door 4 x 74HC595N Shift registreert gecontroleerd door een Boarduino (Arduino kloon die kan worden gebruikt op een breadboard). Het gegevenstype tijd is uit een IC DS1307 Real Time klok.De display is outputte
Arduino Powered RGB LED wodka plank

Arduino Powered RGB LED wodka plank

dit instructable krijgen u zal maken van uw eigen arduino aangedreven rood groen en blauwe LED project. Het hoeft zelfs niet te worden een plank! Flessen wodka toevallig mooi dus dat is wat ik wilde doen oplichten.In dit project gebruiken we elke pin
Arduino iPhone RGB-Led Strip & Cromalight

Arduino iPhone RGB-Led Strip & Cromalight

Over Cromalight AppCromalight is een iPhone App, gecombineerd met goedkope en gebruiksvriendelijke installatie hardware "Arduino schild", Hiermee kunt u overschakelen van maximaal 6 lichten of huistoestellen kan overnemen, maar heeft ook een amb
Arduino RGB LED Lamp + 4 bit LCD Display

Arduino RGB LED Lamp + 4 bit LCD Display

dit is mijn eerste instructable!!! yay...Voordat ik verder ga. Ik niet ingaan op details van hoe het hout hakken, of alles samen stuk. Ik freestyled het gehele bouwproces, wat me opkwam is wat ik gereproduceerd. Het punt van dit instructable is te ku
RGB LED spel shield voor arduino

RGB LED spel shield voor arduino

ik vroeg me af waarom er niet een heleboel spelletjes die je op de arduino, ik bedoel ik vond een pagina van hen, maar het was tht niet veel. Dus heb ik besloten dat ik moet proberen een van mijn eigen te maken!Om te spelen dit spel, moet je overeenk
50W RGB LED lichtshow

50W RGB LED lichtshow

We waren op een Label sale en ik zag een 6 voet opblazen pompoen voor $10. Als u wilt dat weinig nut dus ik het pakte leek. Ik heb thuis en vond hij 5 bollen binnen werden verbrijzeld een beetje. Dat is OK omdat ik wilde een arduino controlled RGB LE
RGB LED Fishtank Light

RGB LED Fishtank Light

maken uw vissentank kleurrijke en helder met de kracht van Arduino en RGB LED'sStap 1: Verzamel materiaal u nodig:-Een RGB LED-A fishtank met vis-Arduino-Weerstanden-Jumper draden-Computer met de Arduino IDE-A USB een aan b-kabel voor het synchronise
64 pixel RGB-LED Display - een andere kloon Arduino

64 pixel RGB-LED Display - een andere kloon Arduino

dit scherm is gebaseerd op een 8 x 8 RGB LED Matrix. Voor testdoeleinden was deze verbonden op een standaard Arduino board (Diecimila) met behulp van 4 shift registers. Na het krijgen van het aan het werk permatized ik het op een fabbed PCB. De regis
Bits bonzen stapsgewijze: controle van de Arduino voor WS2811, WS2812 en WS2812B RGB LED's

Bits bonzen stapsgewijze: controle van de Arduino voor WS2811, WS2812 en WS2812B RGB LED's

Disclaimer: in het afgelopen jaar, een paar verschillende bibliotheken zijn geschreven voor het beheersen van deze alomtegenwoordige RGB LEDs door collega makers van Adafruit, PJRC en het FastSPI-project.  De bibliotheken werken prima, en we moeten p