Arduino RGB áramló szekvenciális fényáramkör

Próbálja Ki A Műszerünket A Problémák Kiküszöbölésére





Ez az Arduino RGB szekvenciális fénygenerátor áramkör egyenletesen áramló piros, zöld, kék mintát generál a csatlakoztatott RGB LED felett.

Az itt használt LED egy négy tűs, 30 mA-es RGB LED, közös anódtípus, ami azt jelenti, hogy ennek a LED-nek a közös érintkezőjéhez folyamatos pozitívumot kell rendelni a szükséges műveletekhez. A közös katódként megadott LED-ek folyamatos negatív vagy földelt állapotot igényelnek az RGB megvilágításhoz.



A projekthez szükséges hardver:

Egy Arduino UNO tábla.
Egy 220 ohmos, 1/4 wattos ellenállás
Egy RGB, 5 mm, 30 mA LED (közös anódtípus)
Link vezetékek
Forrasztópáka,
9V-os adapter AC / DC

A javasolt RGB LED szekvenciális fényáramkör csatlakozásának részletei az Arduino segítségével a fenti ábrán láthatók.



A csatlakozásokat meglehetősen könnyű megvalósítani, csak helyezze be a LED-vezetékeket az Arduino burg pinouts-ba, kapcsolja be a hálózati csatlakozóaljzatot és vizualizálja az RGB LED-et, amely egymás után világít a piros, zöld, kék színnel.

A kód teljesen testreszabható az egyéni beállítások és választások szerint,

Kód:

Ezután az alábbi RGB LED szekvenciális áramló áramkör vázlatkódja megtalálható:

/ *
RGB LED színáramlás
Egy [meglehetősen] sima képet jelenít meg
színsorozat RGB LED-en

Jeremy Fonte
Szerzői jog (c) 2012 Jeremy
Fonte. Minden jog fenntartva.
Ezt a kódot a
MIT licenc:

https://opensource.org/licenses/MIT*/

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

int ri = 1
int gi = 3
int bi = 2

// a reset rutin egyszer fut, amikor megnyomja a reset gombot:
void setup () {
// inicializálja a digitális PIN-kódot
egy kimenetet.
pinMode (8, OUTPUT)
pinMode (9, OUTPUT)
pinMode (10, OUTPUT)
pinMode (11, OUTPUT)

digitalWrite (9, HIGH)
}

// a ciklus rutin örökké újra és újra fut:
void loop () {
r = r + ri
g = g + gi
b = b + bi

ha (r> 255) {
r = 255
ri = -1 * véletlenszerű (1, 3)
}
különben ha (r<0) {
r = 0
ri = véletlenszerű (1, 3)
}

if (g> 255) {
g = 255
gi = -1 * véletlenszerű (1, 3)
}
különben ha (g<0) {
g = 0
gi = véletlenszerű (1, 3)
}

ha (b> 255) {
b = 255
bi = -1 * véletlenszerű (1, 3)
}
különben, ha (b<0) {
b = 0
bi = véletlenszerű (1, 3)
}

analogWrite (8, r)
analogWrite (10, g)
analogWrite (11, b)
késés (20)
}




Előző: Arduino Musical Tune Generator áramkör Következő: Arduino LCD KeyPad Shield (Cikkszám: DFR0009) Adatlap