Digispark RGB LED Fader (4 / 7 stap)

Stap 4: Arduino programma


Arduinos zijn eenvoudig te programma en de IDE is gratis onder de CC-licentie. De Digispark maakt gebruik van een gemodificeerde versie fo de Arduino IDE welke speciale bibliotheken van includeds aan de verandering in pin-toewijzingen enz. De Digispark Arduino IDE is verkrijgbaar bij http://digistump.com/wiki/digispark/tutorials/basics en http://digistump.com/wiki/digispark

ARDUINO BOARD IDE 1.0.3 CODE

Alle variabelen declareren

int LED1; deze variabelen worden gebruikt voor het houden van de led PWM-waarden
int LED2;
int LED3;

int p0 = 0; / * deze variabelen zal het toewijzen van een variabele te ontvangen PWM waarden en ze doorgeven aan hun respectieve pinnen * /
int p1 = 1;
int p4 = 4;

float x;
/ * Dit is een variabele die ontvangt de hoek waarde van variabele ik. Deze waarde wordt geconverteerd naar radialen in de sinus-functie en worden gebruikt voor het genereren van de PWM-waarden * /

float r; deze variabelen ontvangt de PWM-waarden berekend door de drie sinus functies
vlotter-g;
float b;

de setup-routine wordt uitgevoerd zodra wanneer u drukt op reset;

VOID Setup {}

Initialiseer de digitals pin als uitgang.
pinMode (p0, OUTPUT); ingesteld pin 0 voor pwm
pinMode (p1, OUTPUT); ingesteld op pin 1 voor pwm
pinMode (p4, OUTPUT); ingesteld op pin 4 voor pwm

/ * Voer een diagnostische test die zal controleren of dat elke kleur van de LED werkt.
Hiermee schakelt u de LEDs met een vertraging van een seconde tussen elk opeenvolgend * /

digitalWrite (p0, hoge);
delay(1000);
digitalWrite (p1, hoge);
delay(1000);
digitalWrite (p4, hoge);
delay(1000);

LEDs een na de ander uitschakelen met een een tweede deleay tussen elk

digitalWrite (p0, laag);
delay(1000);
digitalWrite (p1, laag);
delay(1000);
digitalWrite (p4, laag);
delay(1000);
}

de routine van de lus wordt uitgevoerd over en weer forever:
void loop {}

/ * De voor lus een waarde voor een variabele genereert i die correspondeert met 0 tot 360 graden. Ik wordt verhoogd met 1 met elke iteratie.  Het is later omgebouwd naar radialen binnen de lus. Zodra ik 360 bereikt herstelt het terug naar 0. Dit stelt het periodieke gedrag van de sinus leuke functies * /

for (int i = 0; ik < 360; i ++)
{

Convert wijs ik in een drijvende variabele die kan worden gebruikt met PI
x=float(i);

/ * voor de berekening van de r, g, b de sinus-functie is gewijzigd om te verhogen amplitute (127 *) maken een faseverschuiving (x + 1/2 * PI) en (x + 3/2 * PI) ten slotte de sinusgolf wordt verhoogd tot de negatieve waarden van de illiminate onder nul door toevoeging van 1 * /

r=127*(Sin(x/180*PI)+1);
g=127*(Sin(x/180*Pi+3/2*pi)+1);
b=127*(Sin(x/180*PI+0.5*PI)+1);

flaot r, g, b omzetten in gehele getallen die kunnen worden toegewezen aan LED PWM nummers

LED1 = int(r);
LED2 = int(g);
LED3 = int(b);

LED niveaus schrijven naar p0, p1, p4 (toewijzen PWM waarden leds)

analogWrite (p0, LED1);
analogWrite (p1, LED2);
analogWrite (p4, LED3);

wachten tot 1/100 van een seconde

delay(100);

}

}

In dit project die een getal tussen 0-255 wordt gebruikt voor de taakcyclus van de 0% - 100% (helderheid), wordt sinus-functie gebruikt voor het genereren van het. Digispark maakt gebruik van sinus-functie voor het genereren van de PWM (puls breedte modulatie). Wij converteren de radialen naar mate van voor de cycli van rood, groen en blauw. Dit wordt gebruikt voor het wijzigen van de taal voor de computer om te begrijpen. Een klein verschil met gewone Arduino boards Arduino boards en de Digispark is dat de compiler programma gevraagd of u wilt toevoegen van de Digispark wanneer het is klaar om te uploaden. Als u deze aangesloten laat krijgt u een compilatiefout.

Gerelateerde Artikelen

RGB LED Fader BTA3O klassenproject

RGB LED Fader BTA3O klassenproject

de reden waarom onze klas was gestopt met de traditionele technologie informatietoepassingen cursus doen is omdat we hadden gevonden dat de inhoud verouderd en saai was. We kon gewoon niet blijven betrokken. We hadden gevonden dat echte wereld werk e
RGB LED licht Fader

RGB LED licht Fader

ik wilde iets echt cool om te zetten op mijn bureau op het werk.  Ik heb verschillende LED projecten uit op het web, maar ik wilde iets klein en compact dat ik met de USB-poort op mijn computer macht kon.Ik wilde ook niet gewoon een kale LED lamp pro
Hoe maak je LED-Fader met behulp van Digispark

Hoe maak je LED-Fader met behulp van Digispark

https://www.dropbox.com/s/zj1mg9ewo62ttw7/animoto_high_res.mp4BENODIGDE MATERIALEN(In volgorde)item leverancier kat # hoeveelheid weerstand van 220 ohm digikey.com 220QBK-ND 3 RGB LED digikey.com 754-1492-ND 1 vrouwelijke kop 3 pin digikey.com S7001-
RGB LED constante stroom fade effect met transistors

RGB LED constante stroom fade effect met transistors

Ik was verveeld, dus begon ik te knoeien met transistors. De reden dat dit werd een LED vervagen en constante stroomkring is alleen omdat de onderdelen bij de hand waren en lampen in verschillende kleuren is altijd cool. Zie bijgevoegde video van de
RainBoard - RGB LED Rainbow Fader

RainBoard - RGB LED Rainbow Fader

Opmerking: Ik heb de verwarring met een aantal van de bedrading in stappen 10 en 17 stappen vast. Een paar van de diagrammen (het geïllustreerde breadboard) onjuist zijn, zo gelieve ervoor te volgen van de schema's en zoals altijd, gelukkig gebouw!In
RGB LED Tutorial (met behulp van een Arduino) (RGBL)

RGB LED Tutorial (met behulp van een Arduino) (RGBL)

LED's zijn geweldig. Maar er een punt waar het opvlammen eenvoudigweg niet voldoende is bij elk project komt. Voor deze gevallen een RGB (rood, groen, blauw) is LED het antwoord.Elke kleur gloed met een RGB LED zult u kunnen tot uw hartje begeert.Bij
WiFi Controlled RGB LED-Strip

WiFi Controlled RGB LED-Strip

Soms kunnen die IR-afstandsbedieningen gebruikt om te bepalen van de RGB LED strips worden irriterend als gevolg van hun beperkt bereik en jacht voor de afstandsbediening wanneer u kan niet het vinden. Dit eenvoudige, maar effectieve project kan een
DMX-512 RGB LED Wash Light Control Board

DMX-512 RGB LED Wash Light Control Board

Een volledige gekenmerkte stuurprogramma bestuur controle van rode, groene en blauwe LED's. Wanneer in paren gerangschikt met de juiste uitgang van bestuur, kan het controleren elke regeling voor LEDs. Gemeenschappelijke kathode, gemeenschappelijke A
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
3D-Printer RGB LED Feedback

3D-Printer RGB LED Feedback

Toen ik op de middelbare school was ik een beetje jaloers dat de Makerbot RGB temperatuur feedback we in handen, had. Nadat ik genoeg geleerd, besloten heb ik voor het repliceren van het ontwerp en meer feedback mogelijkheden toe te voegen. Daarmee k
Reverse-Engineering: RGB LED-lamp met IR afstandsbediening

Reverse-Engineering: RGB LED-lamp met IR afstandsbediening

We 20 van deze RGB LED-lampen gekocht voor een feestje op het werk, maar ik was een beetje teleurgesteld met de kleur vervagen functies die zij verstrekt. Dus besloten heb ik om een apart, omgekeerde ingenieur het IR-protocol, en zien of het had meer
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.
RGB LED Strip Controller

RGB LED Strip Controller

Dit is een afstand bestuurbare meerkleurige LED-Strip controller doos die ik heb voor een vriend gemaakt. We gepland om het installeren van subtiele verlichting binnen zijn auto waarvoor we een kleine controller box + afstandsbediening met de meerkle
Bluetooth Controlled RGB LED-Lamp

Bluetooth Controlled RGB LED-Lamp

In dit Instructable demonstreer ik hoe maak je een veelkleurige lamp gecontroleerd via Bluetooth met behulp van een Arduino, HC-05 Bluetooth module en Androïde apparaat of Teraterm voor computers met Bluetooth. De code voor de lamp op dit moment kan