Arduino RGB stromend sequentieel lichtcircuit

Probeer Ons Instrument Voor Het Oplossen Van Problemen





Dit Arduino RGB sequentiële lichtgeneratorcircuit genereert een vloeiend rood, groenblauw patroon over de aangesloten RGB-led.

De hier gebruikte LED is een 4-pins 30mA RGB-LED, gemeenschappelijk anodetype, wat betekent dat de gemeenschappelijke pin voor deze LED een continu positief moet krijgen voor de vereiste bewerkingen. De LED's die zijn gespecificeerd als gemeenschappelijke kathode hebben een continue negatieve of aarde nodig voor de RGB-verlichting.



De hardware die nodig is voor dit project:

Een Arduino UNO-bord.
Een weerstand van 220 ohm, 1/4 watt
Eén RGB, 5 mm, 30 mA LED (gemeenschappelijk anodetype)
Verbind draden
Soldeerbout,
9V adapter AC / DC

De verbindingsdetails van het voorgestelde RGB LED-sequentiële lichtcircuit met Arduino zijn te zien in het bovenstaande diagram.



De verbindingen zijn vrij eenvoudig te implementeren, steek gewoon de LED-kabels in de Arduino Burg-pinouts, schakel het stopcontact in en visualiseer dat de RGB-LED achtereenvolgens rood, groen en blauw verlicht.

De code is volledig aanpasbaar volgens de individuele voorkeuren en selecties,

Code:

De schetscode voor dit RGB LED-sequentieel stromende lichtcircuit is dan te vinden zoals hieronder weergegeven:


RGB LED-kleurstroom
Geeft een [redelijk] vloeiend weer
opeenvolging van kleuren op een RGB-led

door Jeremy Fonte
Copyright (c) 2012 Jeremy
Fonte. Alle rechten voorbehouden.
Deze code wordt vrijgegeven onder de
MIT-licentie:

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

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

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

// de setup-routine wordt eenmaal uitgevoerd wanneer u op reset drukt:
ongeldige setup () {
// initialiseer de digitale pin als
een output.
pinMode (8, UITGANG)
pinMode (9, UITGANG)
pinMode (10, UITGANG)
pinMode (11, UITGANG)

digitalWrite (9, HIGH)

// de lusroutine loopt voor altijd keer op keer:
leegte lus () {
r = r + ri
g = g + gi
b = b + bi

if (r> 255) {
r = 255
ri = -1 * willekeurig (1, 3)

anders als (r<0) {
r = 0
ri = willekeurig (1, 3)

if (g> 255) {
g = 255
gi = -1 * willekeurig (1, 3)

anders als (g<0) {
g = 0
gi = willekeurig (1, 3)

if (b> 255) {
b = 255
bi = -1 * willekeurig (1, 3)

anders als (b<0) {
b = 0
bi = willekeurig (1, 3)

analogWrite (8, r)
analogWrite (10, g)
analogWrite (11, b)
vertraging (20)




Een paar: Arduino Musical Tune Generator Circuit Volgende: Arduino LCD KeyPad Shield (SKU: DFR0009) Datasheet