Hur man bygger en 5 kanal Flame-mindre LED ljus Simulator (16 / 16 steg)

Steg 16: Flame-mindre LED ljus Simulator Firmware Beskrivning

Källa för firmware (liksom de binära bilderna för programmering) finns på
http://www.wire2wire.org/LED_candle/LED_candle.html

Det finns omfattande dokumentation i källa på hur firmware fungerar i detalj så kommer bara gå över den höga Poängen här.

Detta projekt använder en pic12F508 denna särskilda micro har väldigt lite i vägen för maskinvara och kringutrustning. I själva verket det inte ens har avbrott och bara har en enda hårdvara timer / counter. Detta gjorde särskilt generera PWM signaler svårt. Främsta anledningen att jag valde denna micro var jag hade lager på hand och deras låg kostnad.

Databladet för denna del kan hittas här:
http://WW1.microchip.com/downloads/en/DeviceDoc/41236E.pdf

De centrala delarna av firmware är 5 LFSR PRBS generatorer och PWM motorn. För att generera maximal mängd slumpmässigt flimmer med de begränsade resurserna som jag hade jag beslutat att ställa in 5 identisk linjär återkoppling SKIFT register Pseudo Random Bitstream generatorer. Var och en är 16 bitar långa och börjar med en unik frö. Unika fröna är viktigt eftersom generatorerna inte verkligen är slumpmässig och de kommer att upprepa efter en viss tid. Om alla började med samma utsäde i 5 kanaler skulle vara i synk och inte producerar som snällt av ett flimmer. För att maximera slumpmässigheten mellan kanaler de låga bitarna används för att ställa in ljusstyrkan för att kanal och de övre bitarna i den föregående kanalen används Ställ dröjtiden denna ljusstyrka kommer att hållas. LFSR uppdateras bara till nästa värde när en ny intensitetsnivå behövs. Så genom att använda en annan kanaler generator för att ange dröjtiden enskilda kanalen skulle mönster skifta över tiden med hänsyn till varandra.

Den andra funktionen i koden är "vind". Detta på en nivå är en slumpmässig händelse som varar i en slumpmässig varaktighet. När en vind-händelsen utlöses koden plockar 2 nya nummer från den befintliga LFSR används som varaktigheten av händelsen och den andra är fördröjningen innan event-triggers igen efter den är klar. Under händelsen vind är den enda verkliga skillnaden i PWM koden masker för att uppehålla mig tid och ljusstyrka värde. För "normal"-läge ställs in att producera ett ljust och långsam flimmer. Under wind-läget justeras masker för att producera en dimmer och snabbare flimmer.

Som nämnts tidigare finns det inga avbrott eller kringutrustning finns på denna mikro än en enda timer. För att genomföra 5 kanal PWM generatorn jag först ställa in timer 0 vara en räknare segt nog att jag skulle kunna utföra alla instruktioner som behövs för att uppdatera LFSR innan nästa räkna men tillräckligt snabbt för att den mörkläggning var slät för ögat. I den huvudsakliga slingan finns det logik som gör en av två saker med timer. Först om timern rullar över till 0 visar det på alla utgångar. För det andra jämförs räkningen till enskild kanal ljusstyrkan. Om nivån är lägre än det nuvarande antalet inaktiverar den kanalen.
Den här metoden fungerade bra för denna ansökan men är inte utan nackdelar. Den största nackdelen är eftersom antalet timer måste vara långsammare än den tid som din uppdatering instruktioner tar det inte skulle fungera bra på stora komplexa program (eller PWM skulle vara mycket kornig).

Se Steg
Relaterade Ämnen

Hur man bygger en Artists Studio för mindre än $100

För alla er artister där ute som skulle älska att ha din egen lilla utrymme för att arbeta på dina skapelser fri från distraktioner!Okej. Hitta en liten bit mark eller rensa ut ett hörn i din bakgård. Nivå marken, eller i mitt fall tillbringa några v...

Hur man bygger stjärnor avfyra

Star brand eller indiska brand är som namnet antyder är det en traditionell brand design används främst av indierna av vilda västern. Denna typ av brand är bränsle effektiv och bäst för överlevnad och primitiva situationer. Bränsle för elden kan vara...

Hur man bygger en blöja spruta

om du tyg-diapering din wee en, du ganska van att bli kallad en Lom. Om du planerar att bygga din egen blöja spruta, kan du lägga till minst en ytterligare person folk som tror att du är galen, VVS associate(s) på din lokala hem förbättring butik.Det...

Hur man bygger en lastbil säng arrangör

Hur man bygger en mångsidig och justerbar lastbil säng arrangörGotta lastbil? Som inte behöver en lastbil säng arrangör eller ett lagringssystem som håller mindre föremål från att rulla runt i sängen av lastbilen och av nå?Jag vet att det finns många...

Hur man bygger din allt riktigt riktigt snabbt

några år sedan, skrev jag ett kort dokument om metoder för snabbt tillverka delar av mekaniska system med titeln hur till bygga din Robot verkligen riktigt snabbt. Det var något till studerande på MIT: s 2,007 inledande design och tillverkning klass...

Hur man bygger en jätte Jenga uppsättning

I detta Instructable ska jag visa dig hur man bygger en snabb och enkel jätte Jenga och en bärväska som även fungerar som en plattform för att spela spelet. Det är ett riktigt enkelt bygga och kan även göras med begränsade verktyg. Giant Jenga är sup...

Hur man bygger en robotarm

Uppdatera: https://www.youtube.com/watch?v=BILiuqRmLRIvill bygga registeransvarige gå till härvideon är:http://www.youtube.com/watch?v=N9z7OQLlhrEhttp://www.youtube.com/watch?v=jozshuI246o&feature=youtu.behttp://www.youtube.com/watch?v=onQIzR5C8qkhtt...

Hur man bygger en egen anpassa Stretched Canvas

detta instructable är mitt försök att förklara hur man bygger en egen anpassad storlek duk för målning. 16 x 20 och 18 x 24 vanliga storlek är mycket prisvärd på mest konst utbudet butiker men om du vill ha stora eller anpassade storlekar priset går...

DIY CNC Router planer: Hur man bygger

Obs: Jag Ursprungligen postat detta på min konst och hantverk blogg, Gör det med Jason, och du är välkommen att gå besök och kolla in min andra tutorials, recensioner och steg för steg ritning och målning lektioner.Ända sedan jag såg min första CNC,...

Hur man bygger en Earthbag Dome

Obs: Om du är ny till earthbag byggnad, först läsa den inledande Step-by-Step Earthbag bygga Instructable och hur man bygger en Earthbag Roundhouse . Också, min nya Earthbag byggnad Guide och Earthbag byggnad DVD finns nu tillgängliga.Vi byggde denna...

Hur man bygger en Walk-In dusch (del 2: Wedi vägginstallation)

Detta är en episk tutorial...Jag lovar att du får lära dig hur man bygger en duschkabin i 1 timme eller mindre.Det är en allvarlig garanti men jag står bakom den.Varför?Vi gjorde det medvetet steg för steg så att någon kunde följa med.Tätskikt är vad...

Hur man bygger en T.E.A. Laser

A te Laser är kväve Laser som är verksam vid standard tryck och temperatur. I själva verket använder många normal luft som är över 75% N2. Normal luft har en egenskap som kallas super radiance. Detta innebär att luften kan producera en laser strålar...

Hur man bygger en slida

detta instructable är en tag-along till min första, "Hur man bygger en kniv." Jag hade vissa begäranden för detta efter att jag postat att första en, så här är det--mycket förr än jag trodde, alltför.Så, vill du göra en slida? Kanske har du en f...

Hur man bygger en tillfällig vedeldad Pizza tegelugn med billiga, lätt att hitta material

om du gillar DIY projekt (och pizza projekt), kolla in min sida, mikesenese.com/DOIT och följ mig påDenna pizzaugn är nästan lika enkelt att bygga som stapla block, men skapar en mycket effektiv trä vedeldad ugn med ett välvt tak som kan nå 800-900 g...

Hur man bygger en enkel vatten raket

Välkommen till detta instructable!Om du för ett skolprojekt eller bara på kul, är bygga och starta din egen vatten raket en utmanande men fantastisk upplevelse. I denna tutorial ska vi visa dig hur du kommer igång och hur man bygger din egna, enkelt...

Hur man bygger en snö Fort

Tidiga barndomsminnen ofta med tillfredsställelsen av att spela med ett färskt snöfall att göra snöänglar, kasta snöbollar, och ser som kunde bygga större snögubbe. Om du vill känna dig lite nostalgisk då är detta Instructable för dig. Vi kommer att...

Hur man bygger en solpanel

jag är för närvarande en collegestudent som läser datateknik och i sommar medan jag var på rast bestämde jag mig för jag ville veta mer om solenergi och hur man bygger en solpanel från grunden. Min främsta anledningen vill bygga det själv var att lär...

Hur man bygger en Slayer magnetiseringsmaskinen

En Slayer magnetiseringsmaskinen är en air-kärnhus transformator som kliver upp en mycket låg DC-spänning till en mycket hög AC spänning. Detta skapar ett elektromagnetiskt fält runt spolen som kan lysa upp lysrör och neon ljus lökar. Det är ganska l...

Projektet Snooze: Hur man bygger en enkel säng SWING med återvunnet trä.

Detta är min första säng Swing bygga och jag lärde mig mycket av det och så kan du.Göra skillnad här i världen när du väljer sättet att göra saker när det gäller att bygga. Vi kan välja att bara köpa allt nytt material för våra projekt eller välja at...