Färg adresserbara LED Dsiplay (3 / 4 steg)

Steg 3: programvara



i början av texten är displayen visar "Colour" och 3 rutor med varje bokstav i ordet en annan färg. Sista programmet att göra detta är här:


Funktionen "putc" kommer att placera en karaktär på skärmen enligt följande:
putc (tecken, position, förgrunden färg, bakgrundsfärg)
Detta visar bara två av funktionerna, det finns andra som ritade rutorna, linjer och textrullning från vänster.

Programvaran är uppbyggd i lager vilket gör det lättare att förstå och utveckla. Följande är en beskrivning av varje lager och hur det fungerar.

LED Driver

Det finns en fullständig beskrivning av driva dessa adresserbara lysdioder på http://www.bypic.co.uk/projects/colour-addressable-leds/ men en resumé inte kommer gå fel.

Den WS2811 registeransvarige behöver bara en tråd, signalen skickas från LED till LED på en specifik tempo (frekvens) och tidpunkten är viktigt. De enheter som används i den här skärmen är 400kHz som enligt databladet är halvfart, full fart är 800 kHz


1 och 0 är skickas som ovan där övergången från H till L inträffar före halvvägs för 0 och efter halva vägen för 1. Den faktiska tidpunkten för ramen eller cell är 2500nS för 400kHz. För BV500 löpande på 40MHz detta är 24 CPU cyklerna så det arrangeras det 1 är 16/8 cykler (hög/låg) och 0 är 8/16 cykler (hög/låg).

Detta görs genom att fördröja tidpunkten slingan med nop eller dummy instruktioner. Jag har sett den SPI gränssnitt som används för detta ändamål men kan inte förstå varför?

Nästa steg upp är att leverera LED med tre byte som kommer att beskriva färgen, är grön, röd och blå, ju högre nummer desto ljusare det särskilt färg. För enkelhetens skull de tre byte är placerade i ett 32-bitars heltal och det finns så många heltal som det finns lysdioder så för en remsa av 40 LED man 40 32-bitars heltal. En ByPic array används bekvämt lagra dessa och två dimensionell array används eftersom det finns 8 remsor, en dimension för varje band.

Eftersom tidpunkten är kritiska hanteras direkt i C, via en funktion plug-in. ByPic kan anropa en funktion och överföra information till den. Funktionen hanterar kritiska tidpunkten data som överförs till det skickas. Lyckligtvis lysdioderna behålla sin ställning och så plug-in bara behöver köra när det finns en uppdatering. Detta kallas render() som kommer att uppdatera alla 8 remsor.

Lysande en enskild LED är helt enkelt en fråga om anger array till krävs RGB och sedan gör den genom att anropa funktionen render(). Storleken på matrisen är större än 8 x 40 som några av de första byten i matrisen används att säga plug-in vilka port och linjer att använda så den faktiska första LED Strip 1 är disp(7,0).

Högre nivåer

Nästa uppsättning funktioner initiera matrisen och ta hand om Visa tecken. Teckenformer bildas med 5 byte och visas som en 5 x 7 cell på displayen. Jag hade redan teckensnittsfilen och så gjorde bruk av det.

En liten komplikation är det rullning, istället för att visa hela karaktären på en gång är det möjligt att bara visa en kolumn för det, det gör rullning möjligt.

Det finns 7 program i alla, som anges på baksidan av denna text. Förutom RTC beroende var en funktion i det tidigare. Detta kunde alla är placerade i ett program men genom att göra det här sättet gör utveckling mycket lättare.

Som exempel finns det ett grafikprogram som drar linjer och lådor etc. Genom att ha grundläggande funktioner på plats, i Flash var det lätt och snabbt att utveckla och få rätt dessa funktioner utan att behöva ladda alla tidigare funktioner om och om igen. På samma sätt har "effekter" programmet utvecklats efter grafikprogram använder vissa funktioner i grafikprogrammet.

Fallgropar

Som tidigare sagt denna display är ett koncept och så om du tänker bygga något liknande det då är följande saker att se upp för.
Döda lysdioder: Displayen byggde jag har 3 döda lysdioder – inte helt bara en färg. Det var inte något jag väntat och så kontrollerade inte för. Se till att alla färgerna fungerar innan du använder en remsa.

LED avstånd: Jag var under intrycket att när du köpt en 5m sträng av lysdioder som var alla en remsa, inte så. Lysdioderna är förenade med mellanrum genom lödning av koppar delar av PCB tillsammans. Gemensamt orsakar LED avståndet att variera och så dessa måste vara de lödas och lödda på rätt avstånd.

Konstruktion: Akryl på en aluminiumram fungerar bra men 20mm vinkel jag använde är inte riktigt tillräckligt djup för att hysa komponenterna.

Power supply: Om små 5V tillsynsmyndigheterna är används då en per två remsor är obligatoriska, de är billiga nog att göra detta men skulle ta upp något utrymme. Så jag skulle gå för en växling leverans tio ampere är ganska rejäl linjär strömförsörjning. Det nämns i texten är ett litiumbatteri och en väggladdare vårta typ. Detta kan fortfarande vara ett problem men eftersom jag antar att den genomsnittliga nuvarande dras i regionen i 2-4A

Förbättringar

Partier. men förmodligen en bra idé är att inkludera en DCF radio modulen tid och temperatur / hygrometergivare.

Se Steg
Relaterade Ämnen

Adresserbara LED Party väska

ganska ofta, jag befinner mig på utställningar, fester och festivaler med ett behov av att bära med sig några några måste ha objekt, till exempel min plånbok, nycklar, telefon och sådant. Naturligtvis, kul kostym part kläder aldrig har fickor, så det...

Trådlös Phone Remote-Controlled LED Strips: RasPi w / Fadecandy driver w / WS2811/WS2812 adresserbara LED Strips med TouchOSC Smartphone App med Iphone eller Droid

Här går en allt mer omfattande design översikt över mitt senaste projekt. Nedan är en video som jag har lagt upp visar vissa funktioner:Den ursprungliga idén progressionen gick ungefär så här:Adresserbara lysdiodsrand (s vi vill alltid ha mer skinand...

Adresserbara LED Neopixel växten

Människor i dagens samhälle har alla mycket upptagna liv. på grund av detta tenderar vi alla att rusa av vår omgivning utan att riktigt märka dem. Jag bestämde mig för att jag ville göra en liten bit av naturen stå ut och fästa uppmärksamhet. Jag sät...

Lätt köra adresserbara LED pixlar

för detta projekt, jag använde 50 stycken adresserade pixel RGB LED, SD controller och 5V 3.5A strömförsörjning.Enheten för arbete ger ett mycket gott intryck, förvärrar fantasin och höjer den allmänna atmosfären.Från din video skapelser beror givetv...

Adresserbara lysdioder (WS2812) på chipKIT

Det har inte varit ett enkelt adresserbara LED bibliotek för PIC32 microcontrollers förrän nu! PICxel biblioteket är ett MPIDE bibliotek som hanterar tidpunkten krävs för att använda adresserbara lysdioder (WS2812, WS2811) eller mer vanligen känt som...

Enkel LED strip parti belysning genom att använda arduino

Inspirerad avprojekt av GreatScottLabJag kunde inte hitta alla dessa delar så jag beställde en broms ut styrelsen för MSGEQ7 chip och använde den i min bygga. Det har också 3 MOSFETS för RGB led strip.MSGEQ7 är en 7 band grafisk equalizer det delar u...

LED examen Hat

För alla dessa akademiker eller nästan akademiker som har antingen haft eller kommer att ha examen snart, Grattis!Min rumskompis just examen från Washington State University College av kläder Merchandising Design och textilier, med en examen i mode v...

HackerBoxes 0005: LED pixlar, 2D matris, 4 x 4 x 4 kub och Bluetooth

Få LED ut! Denna månad, arbetar abonnenter till HackerBoxes med lysdioder serveras tre olika sätt. Först är adresserbara LED galenskap med WS2812-baserade RGB pixlar. Det andra sättet är i en tvådimensionell matris baserat på MAX7219 seriellt gränssn...

Nexys 4 DDR LED strip Audio Spectrum

ProjektbeskrivningProjektet använder Digilent Nexys 4 (DDR) ombord mikrofon för att fånga ljudet miljö. Ljudsignalen visas både i tidsplanet och frekvens domän (spektrum) på en VGA-bildskärm. Skalan visas också på en 30 färg LED strip. Se filmen.Nödv...

LED Pong

Snabb överblick:Jag kallar detta "LED Pong". Jag byggde det från grunden och jag baserat designen på en 1 meter individuellt adresserbara lysdioder och en Arduino Uno. Pong var en av de första video arcade-spel som någonsin gjorts. Det släpptes...

LED T-Shirt med LCD-skärm och Bluetooth

Hemgjord LED T-Shirt med 324 adresserbara WS2812B LED. Kontrolleras med Arduino kopplat pro micro till LCD-pekskärm och Bluetooth till Android telefon app. allt gjorts i huset (kretskort, skjorta kod, telefon app, skjorta layout, LED Ribbon strängar)...

Arduino-kontrollerad RGB LED Infinity Mirror

Uppdatering 11/22/2013: Tack till alla som röstade för det här projektet i Microcontroller Contest! Det var en av tre förstapristagare.Update 9/17/2013: Tack till alla som röstade för det här projektet i Arduino contest (jag var en av tio "andra pris...

RGB LED färg väljare

en utmaning med att arbeta med RGB-lysdioder är att få rätt röd, grön och blå värden ska matcha en färg som du försöker Visa. Du kan börja med webbfärger och sedan ibland behöva justera dem eftersom lysdioderna inte ser ganska likadana ut som de gör...

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...

Fyrfärg LED cyber passar! (ytterligare instructables för NES Powerglove kontroll, Live Audio EQ, osv. att följa!)

** Kredit till LVL1 Hackerspace för att starta mig i riktning mot LED besatthet och med förbindelser till vissa personer som har varit fantastiska resurser under år www.lvl1.org **Jag kunde bara inte motstå att skapa en instructable för en "Göra det...

Hur man gör musik IQ Led lampor

Denna musik ansvarig IQ ljus sträng är ett program baserat på ett individuellt adresserbara LED strip. Det kan förvandlas till andra olika produkter om du vill. Allt du behöver göra är att ändra utanför wrapper. Det är googd val att vara en dekoratio...

Att göra en stor LED triangel

Trianglar är billigt i dessa dagar. Din mobiltelefon kan rita tio miljoner av dem i en sekund, och de ska vara helt okej. Jag ville bygga något annat. En triangel kan vara mycket svagt eller mycket ljus. En triangel med konkreta kanter, ett exakta ge...

Programmerbar LED Firefly Jar

Detta är ett roligt, vackra och billiga projekt som gör en stor gåva! Jag började att göra detta över ett år sedan och min ursprungliga prototyp (och många andra) fortfarande kör stark.Bygga en firefly burk kräver endast en timme eller två av din tid...

Med chipKIT grundläggande i/o-sköld med Analog RGB Strip LED

För några månader sedan jag skrev ett blogginlägg om chipKIT grundläggande I/O sköld och används Analog RBG remsor att demonstrera den öppna avlopp fETsna.Detta inlägg är att ge information om hur tråd upp remsan lysdioder till I/O sköld.Du bör redan...