Interaktiva LED öl Pong tabell (52 / 87 steg)

Steg 52: Programvara: hur the RGB Pods är uppdaterade



The TLC5940 drivrutiner uppdateras vid 60Hz genom Timer1 avbrott rutin, så varje 16384µS en funktion som kallas XLAT_Interrupt(void) kommer att köra och se om någon av uppgifterna i TLC5940 marker måste uppdateras. De tre viktigaste funktionerna som används för att kontroller RGB baljorna är:

void RGB_Pod (UINT8 pod, UINT16 röd, UINT16 grön, UINT16 blå)
Denna funktion tar parametern "pod" som bör vara ett värde från 1-20 och ange motsvarande röda, gröna och blå värden till respektive kanaler för att pod. Det finns ingen blekning i denna funktion, det kommer helt enkelt ändra pod till oavsett vilken färg du önskar.

Ändra pod #5 färg till röd
RGB_Pod(5,4095,0,0);

void Pod_Set_Color (UINT8 pod, RGB pod_color)
Denna funktion är exakt samma som RGB_Pod(p,r,g,b), bara det använder en RGB struct för att ange färg på pod. Detta är trevligt om du snabbt vill ange pod till en av standard 10 färger.

Ändra pod #5 färg till röd
Pod_Set_Color(5,Color[Red]);

void Fade_To (UINT8 pod, gammal RGB, nya RGB, UINT16 fördröjning);
Denna funktion är den absolut min favorit eftersom det tillåter användaren att tona in och ut i färger. Detta ger en fin mjuk övergång från färgen gamla färgen nya och hastigheten på övergången styrs genom att justera "försening". I min kod har jag en global struct matris kallas 'PODn [20]"som används för att spara det aktuella värdet för varje pod. För PODn [x], kommer "x" alltid vara 1 är mindre än värdet på pod som vi skriver för att eftersom baljorna är riktat från pod #1 - #20 och matrisen är PODn [0-19]. Formatet för den här funktionen är som följer:

Fade_To (POD #, PODn [POD #-1], färg, fördröjning);

Här är ett exempel på blekning en pod från rött till blått:

Pod är redan röd så PODn [4] är redan lika med färg [röd]
Fade_To(5,PODn[4],Color[Blue],10);

Fade priser och Fade perioder
Du behöver bara köra Fade_To() en gång och pod kommer att blekna även om du stoppa programmet. I Timer3 finns en funktion som kallas Fade_State(void) som kommer att kontrollera för att se om någon av RGB baljorna är för närvarande på att blekning från en färg till nästa. Om en pod är fading, uppdateras rutinen automatiskt pod ett fade steg per avbrott tills pod har helt bleknat i färgen som användaren har angett. Andelen fade beräknas enkelt:

Fade Rate = mängden fade steg som behövs för att helt bleknar till en annan
En Fade steg = 8 ms per avbrott
Fade Period = hur lång tid det tar för pod helt blekna

Fade ränta = (Fade Period / en Fade steg)

Example #1
Kan blekna RGB pod #8 standard färgen rosa och sätta den till sig ha fade 400ms.

Fade ränta = (400ms / 8 ms per avbryta) = 50

Fade pod #8 till rosa under loppet av 400ms
Fade_To 8, PODn [7], färg [rosa], 50.

Den vissna kommer inte vara 100% korrekt men det är bra eftersom vi inte behöver som exakt av timing. Med alla andra avbrott och kod körs det kan avvika av några mikrosekunder varje gång, men det är bra för vårt program. Om alla baljorna uppdaterar samtidigt, är max tiden i Fade_State(void) 1.3ms. Vi vill inte slösa en stor del av tiden i ett avbrott rutin och detta driver det, men det hela fungerar fortfarande bra. Jag hade ursprungligen baljorna grupperade i kluster av fem och varje kluster uppdaterades endast varje 4: e avbrott cykel som medfört max tiden ner till ~ 400μs, som var bättre, men då var jag bara uppdatera tona kliver av varje pod varje 4: e Timer3 avbrott cykla i stället för varje enskild avbrott cykel. Hursomhelst kommer det att fungera men genom att göra det varje avbrott cykel det ger oss mer precision för fade priser.

Se Steg
Relaterade Ämnen

LED Pong tabell

Denna LED öl pong tabell blåser sinnen, och om du gör det korrekt, inga säkringar. Fullt fungerande modellen båda upptäcker där en boll studsar och förstärker ditt festande erfarenhet med en musik-känsliga ljusshow. Som du ser, kommer vår nuvarande v...

LED Arduino Beer Pong tabell

Vårt projekt är en lysdiod underhållning tabell eller colloquially, en Beer Pong tabell. Vi fick idén från en grupp studenter förra året som också byggde en öl pong tabell för deras projekt, och vi lärde oss om deras design och gjort några betydande...

Baserade Arduino Bi-color LED Matrix Pong spel

Vi har skapat två game-projekt instructables hittills använda jolliFactory Bi-color LED Matrix Driver modul DIY kit vi har utformat. Denna ledde matrisen modul är utformad för att kunna kedja-så du kan seriekoppla moduler tillsammans med antalet modu...

EL Wire oändlighet Pong tabell

beslutat att göra en awesome pong tabell för mitt nya hus. Gotta love College livet!Reservdelslista:-Vik-upp plast bord-EL wire för att förstora-Driver för binda av ditt valJag rekommenderar coolneon.com-spegel klipp att hålla tråd-2 "x 4" s för...

Flytande öl Pong tabell

för många här, det är sommartid nu. För många av dessa människor: sommartid parterna (nämligen sådana utomhus). För många av dessa människor inkluderar detta en pool vid något tillfälle. Och sedan ett parti ofta innehåller öl pong för många (unga) mä...

Lätt College öl Pong tabell

Vi har alla sett saker som studenter kasta ut innan sommaren-soffor, madrasser, lampor, etc. Om du råkar hitta en bokhylla och en strykbräda, kan du aktivera det skräppost till en solid öl pong tabell för en egen lägenhet.Jag satt ihop två olika bord...

Hur man bygger en vikbar öl pong tabell!

jag byggde denna öl pong tabell för en vän!Frågan är en öl pong tabell är riktigt stor så jag skapa en vikbar!Den här är anpassade som en fotboll marken.Steg 1: Förbered material! i tabellen är 2,40 X 0.6 m så 4 trä paneler av 0,6 m X 0.6 m!Det vikti...

Interaktiva LED skor - Arduino

Sticker ut från mängden med dessa coola interaktiva LED skor som aktiveras vid rörelse. Välj mellan sex olika effekter, att blanda saker upp lite nästa gång du är ute på stan!Steg 1: översikt Varje sko är driv vid en Arduino Pro Mini med en matris av...

4 x 4 x 4 interaktiva LED-cube med Arduino

för att förklara min 4 x 4 x 4 interaktiva LED-cube publicerade förut, lite mer klart, jag ska försöka att göra mitt första steg för steg instructable.Denna 4 x 4 x 4 kub är interaktiv med fyra hörnet lysdioder både som lysdioder och sensorer som rea...

Småbarn interaktiva LED System (pågår)

Jag jobbar på två projekt parallellt och jag vill organisera vad jag har på detta projekt innan jag börjar dokumentera det andra projektet.Småbarn interaktiva LED System (pågår)Beräknad: 50% komplett.När du är klar som projektet ska:Består av: karton...

Glöd i mörka LED Ping Pong boll

Skapa en glöd i mörka LED ping pong bollen med flera enkla steg.Steg 1: material Du behöver följande material:Ping Pong bollLED (5mm eller 10 mm)3V batteriTejpLåg Temp limpistolRazorSteg 2: Förbereda LED Lysdioder har en positiv och negativ tråd. Du...

Hemgjort anpassade bärbara öl Pong tabell

Steg 1: Layout jag byggde den här tabellen för vår årliga hemliga Santa gåva utbyte. Min draw är en enorm lakers fan och ville ha en bärbar öl pong tabell, men budgeten för utbyte är $40... Så jag byggde en.Steg 2: Material Min bror är en finish snic...

Interaktiva LED labbrock

detta är en instructable för den interaktiva LED Lab rockar, utställningsmonter på Autodesk University.Kolla in filmerna nedan! Först är en demo av färgerna påverkas av knapparna. Andra är en demo av alkoholmätare! (detta kommer att förklaras senare)...

Oändlighet Pong tabell V2

detta är mitt andra oändlighet pong bord. Jag har lärt mig en hel del från dessa två tabeller, och jag ska försöka att ställa ut några steg för att replikera dem. Även om jag ska ge en rättvis varning, finns det en hel del trial and error. Lycka till...

Skapa din egen öl Pong tabell

College sociala livet för vissa omfattar ett mycket brett utbud av frågor. Från tjänsthändelser till college sports är sociala livet i college en mycket stor del av atmosfären under hela campus. En kul del av det sociala livet är parterna. För de öve...

Bärbar öl pong tabell

Först av allt jag är från Sydafrika och öl pong är inte stor här, eller ska jag säga det är inte stort ännu. Jag bestämde mig att bygga min egen tabell eftersom du helt enkelt inte kan köpa tabeller här och om du vill importera, det kommer att kosta...

Hur.. Göra en magi Ping Pong tabell

Detta är hur vi gjorde vårt första magiska ping pong bord! Det är ett styrelserum bord som lätt kan omvandlas till ett bordtennisbord! Vi hoppas du njuter!Steg 1: Först måste du benen och bas! Vi har använt tall vår men dess verkligen en fråga om per...

Interaktiva LED pussel lampa

ÖversiktDenna LED-lampa är en interaktiv designprodukt. Det är en rektangulär prisma bas som kan hålla i flera ljus slots att slutföra kretsen och lysa upp. Det ger användare möjlighet att manipulera design och ändra lampor baserade på flera situatio...

LED Ping Pong boll

du kan rulla dem, spela fångsten med dem, eller ens spela fetch med din hund med dem. (Större hundar kan kvävas, min hund är verkligen liten och kan inte kvävas på det)NYARE VERSION:)Steg 1: Samla material Behöver du:Super ljusa lysdioderTvå Ping Pon...