6 knappen RGB controller. (3 / 4 steg)

Steg 3: Förstå skissen

Filen längst ner på denna sida är den Arduino skiss så du behöver inte kopiera och klistra in den här. Jag tror jag gjorde ett ganska bra jobb med att notera skissen för att göra det lätt att förstå. Om jag missat något eller är helt fel på något plaese låta mig veta.

/*
RGB färghjulet med seriell kommunikation

Indivigually styra ljusstyrkan i varje färg i en RGB-LED
med 6 tryckknappar kopplade till stift 2 thru 7. Tryckknappar
på jämnt antal lysa stift corosponding
LED och udda ettor kommer att dämpa dem. RGB ska fästas
till stift 9, 10 och 11.

Krets:
* RBGB LED med gemensam anod på + 5V
* Röda katod ansluten till pin 9 kastade 220 Ohm motstånd
* Blå katoden ansluten till pinne 10 kastade 470 ohms motstånd
* Gröna katod ansluten till stift 11 kastade 1000 Ohm motstånd
* tryckknapp 1 kopplade till stift 2 från marken
* tryckknapp 2 ansluten till stift 3 från marken
* tryckknapp 3 bifogas stift 4 från marken
* tryckknapp 4 kopplad till stift 5 från marken
* tryckknapp 5 bifogade till stift 6 från marken
* tryckknapp 6 kopplad till stift 7 från marken

Om RGB LED används har en gemensam katod då rollerna för den
knappar blir omvänd och ljusstyrka lampan kommer att
full på i början av koden.

Den seriella bildskärmen kommer att visa den röda, gröna och blå LED
nivå börjar på 255. Tryck på varje knapp rases eller sänker den
ljusstyrka i icrements 5.

skapad 13 Jan 2010
av mpilchfamily
modifierad 16 Jan 2010
av mpilchfamily
uppdaterad för Arduino 1,0 8 Feb 2010
av Mpilchfamily
*/

booleska ledpin [] = {9, 10, 11}; tilldela pins lysdioder

booleska knappen [] = {2, 3, 4, 5, 6, 7}; tilldela tryckknappar till stift

booleska buttonstate = 0;

int fadered = 255; Start ljusstyrkevärden för varje ledde
int fadegreen = 255; 255 anger lysdioderna till läge off
int fadeblue = 255; När RGB med en gemensam anod är i användning

Ogiltiga inställningar)
{
Serial.BEGIN(9600); designerar seriell comunication kurs
för (int x = 0; x < 6; x ++) //starts en slinga för att ange pin-läge för alla stift
{
pinMode (knappen [x], indata); initiera tryckknapp pins som indata:
}
för (int x = 0; x < 6; x ++) //starts en loop till digital Matilda alla knappar
{
digitalWrite (knappen [x], hög); tryckknappar läses som hög tills tryckte
}
analogWrite (ledpin [0], fadered); lyser lampan på nuvarande ljusstyrka
analogWrite (ledpin [1], fadegreen); lyser lampan på nuvarande ljusstyrka
analogWrite (ledpin [2], fadeblue); lyser lampan på nuvarande ljusstyrka
}

void loop()
{
för (int x = 0; x < 6; x ++) //loop för att kontrollera alla knappar
{
ButtonState = digitalRead(button[x]); Kolla knappläge
om (buttonstate == låg & & fadered > 0 & & knappen [x] == 2)
{
Om knappen trycks öka ljusstyrka av 5
fadered-=5;
analogWrite (ledpin [0], fadered); Belysning LED vid nuvarande intensitetsnivå
Delay(250); gör tid så att knappen upptäcks därför flera gånger
}

om (buttonstate == låg & & fadered < 255 & & knappen [x] == 3)
{
Om knappen trycks minska ljusstyrka av 5
fadered += 5.
analogWrite (ledpin [0], fadered); Belysning LED vid nuvarande intensitetsnivå
Delay(250); gör tid så att knappen upptäcks därför flera gånger
}

om (buttonstate == låg & & fadegreen > 0 & & knappen [x] == 4)
{
Om knappen trycks öka ljusstyrka av 5
fadegreen-=5;
analogWrite (ledpin [1], fadegreen); Belysning LED vid nuvarande intensitetsnivå
Delay(250); gör tid så att knappen upptäcks därför flera gånger
}

om (buttonstate == låg & & fadegreen < 255 & & knappen [x] == 5)
{
Om knappen trycks minska ljusstyrka av 5
fadegreen += 5.
analogWrite (ledpin [1], fadegreen); Belysning LED vid nuvarande intensitetsnivå
Delay(250); gör tid så att knappen upptäcks därför flera gånger
}

om (buttonstate == låg & & fadeblue > 0 & & knappen [x] == 6)
{
Om knappen trycks öka ljusstyrka av 5
fadeblue-= 5.
analogWrite (ledpin [2], fadeblue); Belysning LED vid nuvarande intensitetsnivå
Delay(250); gör tid så att knappen upptäcks därför flera gånger
}

om (buttonstate == låg & & fadeblue < 255 & & knappen [x] == 7)
{
Om knappen trycks minska ljusstyrka av 5
fadeblue += 5.
analogWrite (ledpin [2], fadeblue); Belysning LED vid nuvarande intensitetsnivå
Delay(250); gör tid så att knappen upptäcks därför flera gånger
}
IF(ButtonState == low) / / kontrollerar om någon knapp har ben pressas
{/ / prints ljusstyrka till PC. 0 är full på och 255 att vara utanför
Serial.Print ("röd lysdiod är:");
Serial.println(fadered);
Serial.Print ("grön LED är:");
Serial.println(fadegreen);
Serial.Print ("blå LED är:");
Serial.println(fadeblue);
}
}
}

Se Steg
Relaterade Ämnen

Arcade knappen RGB LED konvertering

Jag hade köpt några arcade knappar från Kina med vita lysdioder i dem, då jag bestämde mig RGB LED knappar, så jag beslöt att mod de jag har.Ganska enkel process, använder vissa billiga arcade knappar, en gemensam anod/katod 5mm RGB LED och några gam...

Arcade-knappen MIDI-Controller

att ha en hårdvara gränssnitt till din favorit musik / DJ / VJ programvara kan verkligen öppna upp dörrar i din kreativitet. Mest utbredda form av hårdvara kontroll till datorn för sådana program är en MIDI controller.En MIDI-controller kan skicka oc...

RGB Controller

Denna guide visar hur du montera RGB Controller pcb från https://github.com/hanneseilers/RGB-Controller.Du behöver en lödkolv, tin-sodler, en pincett och även vissa elektroniska delar:1 x ATtiny 2313-20SU µController1 x L78L33ACZ spänningsregulator1...

Arduino Rgb controller från Vb.net

Hej, detta är min första instractables, idag ska jag visa dig hur man gör en rgb-styrenhet med en arduino UNO R3, kontrolleras av en ansökan i vb.netMed detta projekt kan du enkelt styra din lysdiodsrand och vilken färg duUrsäkta mig för min engelska...

LED-RGB controller

Detta är min hemlagade RGB-LED-controller.Den är ansluten till en dator som låter mig antingen ändra färgen för hand, eller färgen ändras till musiken, eller dess likadana ambilight, lysdioderna har den huvudsakliga färgen på min skärm.färgerna är ty...

Internet-knappen - RGB lysdioder

Efter att publicera en hel del tutorials om partikel Core, jag lära mig att skapa en serie med knappen internet och jag också postat några tutorials på det också. Men vad jag undervisade inte var hur man styr RGB lysdioder. Så i detta instructable ja...

Avmystifiera 4 pin RGB LEDS (Radio Shack 276-0028)

RGB-lysdioder är ganska användbara i projekt möjliggör ett brett utbud av färg från en enda enhet. Men kommer de kan vara en smärta i nacken att arbeta med och de alltför ofta med liten eller ingen dokumentation. Jag sökte lite tid att hitta en gemen...

RGB Led färg Mixer

Denna enkla RGBledde färg mixer använder ingen mikrokontroller(Arduino - Pic etc). Det styr ljusstyrkan på varje färgkanal genom att variera intermittensen (på tid vs OFF tid) genom en teknik som heter PWM eller puls bredd modulering. Detta resultera...

Halloween jullov lightshow RGB talar ansikten med hjälp av Vixen 3

Mitt mål var att göra en enkel halloween show och också en jul för mindre än $1000. Jag ville prova Vixen 3 som var ny från och med juli, som är fri mjukvara med nya lyriska integration för lätt ansikte programmering. Mitt vita ansikte byggdes med vi...

Video Game controller bälte spännen med ljud

ett år eller 2 sedan jag gjorde en hur på hur man gör en snes bälte spänne sedan började jag sälja dem efter många människor berättade för mig att hålla käften och ta deras pengar http://www.etsy.com/shop/sillyzombie666sedan dess en idol för min nath...

IKEA RGB Led Strip 2 WiFi Hack

följande projektet beskriver hur till hacka en IKEA DIODER RGB Led Strip för att lägga till en WiFi-anslutning och tillgång till en intern webbserver för att konfigurera färger med låg budget lösningar! Hacket utnyttjar en openPicus Flyport WiFi modu...

De oändliga möjligheterna för RGB LED strips!

Detta är min första Inscrutable, och det är hur du lägger till några RGB (röd grön blå) ljus remsor och en styrenhet till din bil, eller något. Jag lägger min under min dash, men du kan sätta dem var du vill, det är skönheten i det!* Se upp! Det finn...

Arduino/Android - BLUETOOTH RGB ledde kontroll ANDROID APP

Hej världen! Idag har jag gjort en app för att styra en RGB Led-modul med en Android-enhet. Kontakta mig för den öppna källkoden av APP.Obs: Om du köpt en gemensam anod LED ansluter du den till 5vJag använde en gemensam katod ledde som måste anslutas...

Autonoma Sumo bekämpa Robot med pneumatiska Flipper - hur man

denna Sumo Bot utformad, byggdes, programmerad och testade under en 12 veckors period för en av mitt sista år engineering klasser. Syftet var att konstruera och bygga en lätt helt självständiga sumo kämpar robot för en i klassen Sumo Bot konkurrens....

Animerade LED Crystal Shadow Box

Ett enkelt projekt som använder lensing effekterna av en kristall skål (öken plattan? inte säker) och diffraktion galler (som fireworks glasögon) att skapa en regnbåge/Kalejdoskop/fraktal scen animerade med adresserbara LED strip. Ramen är från en bi...

LED Glowbot leksak

jag heter Aaron Wasserman och jag är en kundtjänstrepresentant Elemental lysdiod. Du kanske kommer ihåg mig från min maneter lampa Intructable jag in ett par månader sedan.Denna gång jag tillbaka med en LED Robot heter Glowbot! Min ursprungliga tanke...

Lightning Simulator/alkoholmätare/grafisk Equalizer - Arduino Powered

UPPDATERING: En bärbar version av talar alkoholmätare är här http://talkingbreathalyzer.com ***LED-strips är monterade på en utomhus trellace som fungerar som ett blixtnedslag simulator, utomhus breathalyzer, grafisk equalizer synkroniseras till musi...

3D Laser skär LED Star

När jag var barn, hade min familj en klassiska julgran topper i form av en 3D-stjärna av perforerad metall med klar plast poäng. Någonstans längs vägen, jag fik befria för den och nu jag beklagar det, eftersom det var vackert.Geometriskt, var det en...

Arduino/App kontrollerade skrivbord ljus

För detta projekt jag ville ha något som skulle tillåta mig att lära mig mer om elektronik/mjukvara, något jag inte riktigt fått in ännu... Jag bestämde mig för en ljus skulle vara en bra plattform för detta.Designen jag kom med var för en uplighter...