Linjära klockan (12 / 22 steg)

Steg 12: Prototyp version - programvara

Programvaran är inte komplicerat, men se till att du har den senaste versionen av Adafruit egna Motorshield drivrutinen. Det finns en fix i det som är viktigt för denna kod.

Koden:
Det finns en intern tid representation, bestående av tre ints: currentSeconds, currentMinutes och currentHours. Denna gång är förinställd på start upp och ökas medan programmet körs.

Huvudloop för programmet gör en notering på starttid och sedan kontrollerar kontinuerligt aktuell tid att se om det är 1000 millisekunder senare eller inte. Om det är, då det ökar den interna klockan gången (doTick()) och träffar en procedur för att ändra placeringen av indikatorer på klockan (renderTime()).

Förfarande doTick() behandlar uppräkning sekunder till minuter och minuter till timmar och återställa dessa värden vid behov.

Förfarande renderTime() behandlar omvandla tiden i H:M:S till positioner på urtavlan, eller mer korrekt, placerar av stepper. Programmet har ett koncept för den aktuella positionen av de indikatorer (förinställda vid start 00:00 - läget längst till vänster), och använder detta första startposition för att besluta om att flytta genom framåt eller bakåt.

Med hjälp av intern tid hålla av Arduino är ganska taskiga marken (se detta instructable för en bra körning ner på varför, och en möjlig lösning). Det finns många sätt runt detta om det är viktigt: Arduino huvudsidorna har några sätt att göra det korrekt, samt saker om hur du använder tid biblioteket. Jag gick för en enklare lösning, med tanke på att det är en prototyp (Ja, det är min ursäkt för varje gång jag gör en hacka).

Jag använder AFMotor biblioteket för körning steppers, eftersom jag använder Adafruit motorshield. Om du kör steppers genom en annan krets, kan du förmodligen använda de vanliga Arduino stepper bibliotek med minimal kod hugga. Om du hämtar koden, ska filen sparas med en .pde på slutet. Inte säker på hur du ändrar filnamnet på instructables!

Se Steg
Relaterade Ämnen

Linjära klockan med hjälp av Arduino + DS1307 + Neopixel: återanvändning av någon maskinvara.

Från tidigare projekt jag hade en Arduino UNO och en Neopixel LED strip lämnade, och ville göra något annat. Eftersom Neopixel strip har 60 LED-lampor, tänkte använda det som en stor klocka.För att ange timmar, en röd 5-LED segment används (60 ledde...

Lunchtid klockan

har du någonsin önskat lunchtid var längre, men visste inte var man kan hitta de extra minuterna? Tja, vill inte längre!Tack vare stora i klocka tekniska framsteg presenterar jag för er en klocka som snabbar upp 20% varje dag kl 11:00 och saktar ner...

Musik CD + CD-täcka - klocka ALARM

här är något jag arbetade på detta dagar... (jag gjorde en för en "vän" till mig... och efter det försökte jag göra en andra en med en av mina mest älskade skivor)Den allmänna idén var att skapa en klocka med en CD som bakgrund cirkel... men då...

Nintendo Entertainment System patron klocka

ett tag sedan min vän Carolyn Main gjort vissa NES patron klockor för vänner till jul. De gungade.Awesomeness av NES patron klockan måste spridas över hela landar.Nu kan du gå online och köpa en... Men:1) vi vet alla att göra din egen är roligare än...

Inbyggd klocka hylla

Hej gott folk. Som en service award för att arbeta för min arbetsgivare i 15 år fick jag en klocka... En tidtagning enhet för att sätta i tid... Hur som helst, klockan ser bra ut på min vägg, men jag trodde det skulle se bättre byggda i min vägg. Det...

3D tryckt roterande klocka

Hej, alla!Jag bestämde mig att göra denna klocka som en utmaning till mig själv. Jag är inte en designer eller en ingenjör, så det var verkligen en utmaning för mig! Alla bitar har utformats med 123D Design, mycket enkla men kraftfulla verktyg.Som ni...

3D Rainbow klockan

Jag har alltid haft en sak för ovanliga klockor och så finner jag mig alltid göra dem antingen sälja eller som gåvor. Och låt oss inse det, "Klockorna" är nåt som är mycket viktigt i varje enskilt rum! Jag vet, vissa skulle säga jag har min tele...

Bågskytte ansikte klockan

i detta instructable, jag ska visa dig hur man gör en klocka baserat på en bågskytte ansikte för en vän som gillar bågskytte eller bara för att hålla för dig själv. Det återanvänder ett par objekt från bågskytte (ett ansikte och vissa fletchings). De...

Montering av "Kloka klockan 2" (Arduino-baserad väckarklocka med massor av extra funktioner)

denna handledning visar hur du monterar kitet för Wise klockan 2, ett öppen källkodsprojekt (hårdvara och mjukvara).En komplett Klok klockan 2 kit kan köpas här.Sammanfattningsvis är detta vad Wise klockan 2 kan göra (i den aktuella öppna källa mjukv...

BookClock - Arduino-baserad klockan i en kartong

detta är den senaste (och billigaste ännu) Wise klocka familjemedlem.(Som en snabb resumé, de andra medlemmarna i familjen Wise klocka är, hittills, glaskupol Wise klocka och Wise klockan 2. De är "kloka" eftersom, tillsammans med tid, de också...

CD-klockan

Ok det här är en rolig idé jag hade att ta min favorit cd och förvandla det till en klocka. Dess mycket enkelt, tar väldigt lite tid, och alla verkar vilja en.Steg 1: Saker du behöver Billigt walmart klocka, sax, tvättbara markör, några CD-skivor och...

Coffee Cup klockan

här är en enkel desktop klocka tillverkad i en kaffekopp och vissa kaffe ärmar. Det har även ett larm att berätta när är din nästa fikapaus.Steg 1: material: Pappersindustrin kaffekopp (rensade)Kaffekopp ärmar - tvåBlommig stem trådKlocka (liten nog...

Färg provet klockan

Innan jag börjar detta instructable måste jag ge kredit till gmjhowe's Pantone klocka.Detta är min tolkning en Dulux färg färger i Nya Zeeland provbok.Steg 1: material Material som används är:DULUX färger i Nya Zeeland provbok.Billig klocka (behövde...

Cup klockan

här är en enkel billig regnig dag hantverk kan du göra med ditt barn... Det finns andra instructibles med en liknande process med olika delar. Obegränsad fantasi. Kolla in min video av cupen klockan i aktion.http://www.youtube.com/watch?v=vnBpHPCBQQM...

DIY Infinity spegel klockan

i detta instructable jag kommer att visa dig hur man bygger din egna infinity spegel klocka!Det är verkligen häftigt, Billigt och enkelt, ingen arduino eller lödning behövs! Jag använde en Mickey Mouse väckarklocka från Disneyland. Det var gamla och...

Hellschreiber klockan

en liten mikrokontroller är programmerad att mata en serie toner som, när matas till en PC ljudkort och bearbetade av ett spektrum analysator program, visas en bild av den aktuella tiden.Steg 1: Spectrum Lab programvara Allt det hårda arbetet för att...

Pussel klockan

jag trodde det skulle vara kul att göra en klocka av ett pussel med en pusselbit flytta runt på en av armarna på klockan, så när klockan slår timmen pusselbiten passar.Jag ville ha min pussel att ha bitar ungefär en tum i storlek, men de flesta pusse...

LED belyst trä bröllop klockan

jag började detta projekt för att göra en unik, en av en slag bröllop klocka för min syster och svåger. Ville göra något kunde de ha ljus upp och Visa någon aspekt av deras bröllopsdag för en lång tid framöver. Gick igenom många mönster och slutligen...

Laserskurna rippel klockan

det är en trä klocka med massor av koncentriska cirklar som efterliknar ringar i en damm. Skär med en frickin' laserstrålen. Jag ville ha något som var abstrakt och ändå hade de grundläggande funktionerna i en klocka. Det är lite arbete med Illustrat...