Arduino Random RGB Light Generator Circuit

Prøv Instrumentet Vårt For Å Eliminere Problemer





Artikkelen diskuterer en enkel, Arduino rød, grønn, blå LED-lyseffektgeneratorkrets i et tilfeldig mønster.

I et av de tidligere innleggene kom vi over en lignende RGB LED-effektgeneratorkrets med Arduino som var programmert til å produsere effekt på en flytende sekvensiell måte , mens her kan oppsett forventes å generere tilfeldig skiftende RGB LED-effekt.



Maskinvare kreves

Hva du trenger for å lage dette systemet:

1) Et Arduino-styre



2) En RGB-LED

3) En motstand på 220 ohm 1/4 watt

4) En 9V AC til DC adapter enhet

Når du har anskaffet enhetene ovenfor, handler det bare om å programmere Arduino IC med følgende eksempelkode, og deretter integrere LED, motstand og strømforsyningen med Arduino-kortet som vist nedenfor:

Arduino Random RGB Light Generator Circuit

Hvordan koble Arduino med LED

Oppsettet ser ut til å være nøyaktig lik vårt forrige RGB Arduino-prosjekt , ja det er slik, bortsett fra programmet som nå er endret for å generere en tilfeldig RGB LED-lyseffekt i stedet for den tidligere sekvensvis flytende RGB-fargeeffekten.

LED-en som brukes her er en 5mm 30 mA RGB LED, som skal produsere ganske høy belysning, men for å betjene flere LED-lamper fra samme oppsett må du kanskje bruke transistordrivere over pinnen # 8, 10, 11 som kan tillate deg å legge til mange RGB-lysdioder parallelt med den foreslåtte tilfeldige fargeeffekten.

Koden

Eksempelkoden for den ovenfor forklarte Arduino RGB-fargeneratorkretsen er gitt nedenfor:

*
RGB LED tilfeldig
farge
Viser a
rekkefølgen av tilfeldige farger på en RGB-LED
av Jeremy
Kilde
Copyright (c)
2012 Jeremy Fonte. Alle rettigheter forbeholdes.
Denne koden er
utgitt under MIT-lisensen:
https://opensource.org/licenses/MIT
* /
//one variable for each of red, green, and blue
int r = 0
int g = 0
int b = 0
// the setup routine runs once when you press reset:
void setup() {
// initialize
the four digital pins as outputs.
pinMode(8,
OUTPUT)
pinMode(9,
OUTPUT)
pinMode(10,
OUTPUT)
pinMode(11,
OUTPUT)
digitalWrite(9, HIGH)
}
// the loop routine runs over and over again forever:
void loop() {
r = random(0,
255)
g = random(0,
255)
b = random(0,
255)
analogWrite(8,
r)
analogWrite(10, g)
analogWrite(11, b)
delay(1000)
}




Forrige: Å lage et automatisk stoppeklokke for løpere, idrettsutøvere og sportspersoner Neste: Blinkende rød, grønn jernbanesignallampekrets