Nörd fickur (2 / 3 steg)

Steg 2: Programmet

Ladda ner detta program och lägga den på din ATtiny85.

Du kan ändra värdet i raden som säger

långa kalibrera = 313250; Fem minuter.

att göra din klocka springa snabbare eller långsammare. Det finns viss variation i ATtiny inre klocka. Det brukar vanligtvis köra lite snabbt. Kalibreringen är värdet för min särskilda chip.

/************************************************************
* Digital nörd klocka program
*
* Original program av othermachine på instructables.com
*
* Omprogrammeras av JRV31
*
************************************************************/

int greenLED = 1; PIN-koden för gröna LED.
int yellowLED = 4; PIN-koden för gula lampan.
int knappen = 0; PIN-koden för tryckknapp switch.

int blinkDelay = 350; Längd på blinkar i milleseconds.

långa kalibrera = 313250; Fem minuter.

lång starttid;

int timme = 0;
int minut = 0;

/************************************************************
* setup() funktion - krävs
************************************************************/
void setup()
{
pinMode (greenLED, produktionen); Ställ in LED stift till utgång.
pinMode (yellowLED, produktionen);
pinMode (knappen, INPUT_PULLUP); Ställa in knappen pin till ingång med pullup
digitalWrite (yellowLED, hög); Starttillståndet för lysdioder är avstängd.
digitalWrite (greenLED, hög);

setTime(); funktion för att ställa in tiden.

StartTime = millis(); Markera starttiden.
While((Millis()-StartTime) <(calibrate/2)) / / vänta 2 1/2 minuter innan
framåt för första gången.
{
IF(digitalRead(Button)==Low) / / visar tid verk
{/ / under första 2 1/2 minuter.
Displaytime(Hour);
Delay(blinkDelay*3);
Displaytime(Minute);
}
}

StartTime = millis(); 2 1/2 minuter har gå.
minut ++; Förväg tiden.
IF(Minute==12) timme ++;
IF(Minute>12)
{
minut = 1;
IF(Hour>12) timme = 1;
}
}

/************************************************************
* loop() funktion - krävs
************************************************************/
void loop()
{
IF((Millis()-StartTime) > kalibrera) / / Advance tid var 5 minuter.
{
StartTime = millis();
minut ++;
IF(Minute==12) timme ++;
IF(Minute>12)
{
minut = 1;
IF(Hour>12) timme = 1;
}
}

IF(digitalRead(Button)==Low) / / Visa tid om du trycker på knappen.
{
Displaytime(Hour);
Delay(blinkDelay*3);
Displaytime(Minute);
}
}

/*****************************************************************
* settime() funktion kallas av setup() att ställa in klockan på start.
*****************************************************************/
void settime()
{
int i;

Delay(3000); Vänta tre sekunder efter start.
Jag = 0;
While(i==0)
{
digitalWrite (greenLED, låg); Grön lysdiod blinkar,
StartTime = millis();
While((Millis()-StartTime) < 500) / / räkna blinkar och
{
IF(digitalRead(Button)==Low) i ++; Tryck på knappen när
}
digitalWrite (greenLED, hög); räkningen är lika med timvisaren.
StartTime = millis();
While((Millis()-StartTime) < 500)
{
IF(digitalRead(Button)==Low) i ++;
}
timme ++;
}

Delay(3000); Vänta 3 sekunder mellan timme och minut.
Jag = 0;
While(i==0)
{
digitalWrite (yellowLED, låg); Gul lysdiod blinkar,
StartTime = millis();
While((Millis()-StartTime) < 500) / / räkna blinkar
{
IF(digitalRead(Button)==Low) i ++; Tryck på knappen när
}
digitalWrite (yellowLED, hög); räkningen är lika med minutvisaren.
StartTime = millis();
While((Millis()-StartTime) < 500)
{
IF(digitalRead(Button)==Low) i ++;
}
minut ++;
}

IF(Hour>11) timme = 11; Ställ in timme till 11 och minut
IF(Minute>12) minut = 12.
IF(Hour==0) timme = 11; 12 om över eller noll.
IF(Minute==0) minut = 12.

While(digitalRead(Button)==High); Vänta tills du trycker på knappen starta.
While(digitalRead(Button)==Low); Debounce
}

/************************************************************
* displaytime() funktion visar tiden.
************************************************************/
void displaytime(int hhmm)
{
IF(hhmm>7) / / om att Visa är > 7
{
blinker(greenLED); blinkar grön LED och
hhmm-= 8. subtrahera åtta.
}
annat blinker(yellowLED); annars blinka gult LED.

IF(hhmm>3)
{
blinker(greenLED);
hhmm-= 4.
}
annat blinker(yellowLED);

IF(hhmm>1)
{
blinker(greenLED);
hhmm-= 2.
}
annat blinker(yellowLED);

IF(hhmm==1)
{
blinker(greenLED);
}
annat blinker(yellowLED);
}

/************************************************************
* blinker() blinkar en ledde en gång.
************************************************************/
void blinker (int LED)
{
digitalWrite (LED, låg); Aktivera LED.
Delay(blinkDelay);
digitalWrite (LED, hög); Inaktivera LED.
Delay(blinkDelay);
}

Se Steg
Relaterade Ämnen

Kartong fickur

jag ursprungligen gjort denna klocka för en tävling men inte avsluta före tidsfristens utgång, så jag gav den som en gåva till chefen/ägaren av förpackningen & utskrift företaget min mor arbetar eftersom cirka 80% av vad de säljer är wellpapp. Klocka...

Ledde fickur, en töntig en

Hej alla, jag var alltid fascinerad om LED klockor.Och en dag jag fick idén att bygga mig ett ledde fickur.Det första jag ville bygga en elektronisk på egen hand, men jag trodde att en billig led armband klocka kommer att göra jobbet.Resultatet är et...

Halsband från gamla/trasiga fickur

I detta instructable jag lär dig ett sätt att göra ett unikt halsband ur ett gamla/trasiga fickur.Steg 1: Samla ditt materialDu behöver:ett gamla eller trasiga fickurTänger/pincetthalsband kedjaSteg 2: Öppna din fickurOm din fickur är en snapback som...

SteamPunk fickur

ånga Punk fickur jag gjord av reservdelar hoppas du gillar det Gradera om du gör, det är den första ånga punk bit jag har någonsin gjort tack för visning. Jag vet att fickur redan steam punk men jag trodde att detta skulle vara och intressant pjäs me...

Hur Rita: ett fickur

jag har alltid haft den gamla mode look av fickur och beslutat att försöka Rita en och det är hur bra det blev.Steg 1: Del ett: The Outside linjer 1.: på ett tomt papper Rita en liten eller stor cirkel, kan dra en mindre nästan beskriver den första c...

Överdimensionerad fickur

vår hela familjen är väldigt kreativ och vi alla älskar att hitta sätt att återvinna och återanvända saker. Så när min fru föreslog att göra en överdimensionerad ficka klocka med en gammal väckarklocka och sånt hade vi liggande, hoppade jag på den. V...

TARDIS fickur: En Mini semester historia

Detta instructables är tillägnad den härliga Emily (emilyvanleemput), med vilken jag ordnat en semester gåva swap. :)Den 18 augusti i år började som en vanlig dag. Visst, var det bara några dagar innan jag skulle göra fysiska övergången till universi...

DIY LED fickur

Hej alla!Detta är min första instructable och är mycket inspirerad av detta instructable av awall99:Ledde fickur, en töntig enMitt resultat är ganska lika, men jag använde en mindre storlek fickur och således hade en annan inställning.Material:LED-kl...

Mekaniskt fickur för 3D utskrift

en snabb anteckning säga att dessa är endast preliminära bilder! Jag kommer att lägga upp en video av klockan i åtgärder som bättre återger och mer beskrivningar nästa vecka men tyvärr jag sent denna vecka. Titta på detta utrymme för att se hur det h...

Kartong Pocket Watch Step-by-step

jag började göra dessa fickur när metallen en jag hade knäckt frontplåten. Jag kände mig tvungen att ta isär och bygga en kartong replik för att hysa den klocka delen.[Nyligen hade ett litet problem med detta intro och alla tidigare info jag hade här...

Billig pocket watch anpassning

Ett tag tillbaka fick jag en souvenir fickur från Paris, och fören bröt nyligen. Att ersätta jag använde inte ser ut som med resten av klockan, så jag bestämde mig att ändra det till Gallifreyan.Steg 1: Verktyg och materialFör verktyg behöver du.Ett...

Flower power klocka eller en smutsig tid bit

Detta är min andra instructable och till detta en jag kommer att hacka in i ett fickur och ersätter behovet av batterier och förvandla det till en Skrivbordsklocka eller väggklocka med sin egen solar powered nattlampa och också det fungerar som en pl...

Boss Hogg

min man och jag drog fördel av det faktum att vår son inte ännu har vetorätt på sin Halloween kostym. Så, en snabb internet köp (vita barn kostym), en resa till Western store (barn hatt), användning av en gammal BRUDGUMS närvarande (fickur), och en k...

Pocket Watch Vault

är du trött på att ha små föremål stulen för dig? Pocket Watch valvet är ett litet värdeskåp, komplett med nyckel, gömd inuti ett ordinarie fickur. Den kan lagra upp till storlek några staplade halv dollar och är oansenliga. Det är svårt att öppna me...

Hur man gör en rund sak utan en svarv (plus modell att göra tips)

du vill göra en modell av något som du har sett i en film, men den är rund och har härliga sammansatta kurvor och du inte har en svarv. Inte oroa dig, detta instructable visar dig hur du kan använda en enkel profil och vissa bil harts filler att få e...

Omvandling av en laptop till en Steampunk 18.5" Tablet PC

jag var inte riktigt redo att börja detta instructable; Jag är fortfarande i utvecklingsmässiga faser av projektet. Men när jag såg tävlingarna för den göra den verkliga utmaningen och Shop Bot utmaningen; Jo jag var bara tvungen att få detta "vänner...

Avant Garde Dolly Assemblage halsband

precis som Dr Frankenstein, jag skapade detta en av ett slag halsband med sammelsurium av glömda minnen från förflutnan.Jag har använt modet från en länge sedan bruten, vintage fickur, en skelett nyckel som en gång upplåst någons hemligheter, och en...

Gör en Steampunk tangentbord - Win Guy stil!

~ En postThe vinnare i Steampunk Weekly Challenge! Se det här: (länk) ~Greetings, min vänliga medmänniskor, och Välkommen till mitt kort (sarkasm alert!) tutorial på hur man konstruerar en Steampunk tangentbord - utan att helt riva styrelsen i proces...

Min första Steampunk projekt... någonsin. Roanoke v.1

Detta är det första Steampunk objektet jag någonsin gjort. Mestadels gjorda av plasic med några metall del hittade från massor av slumpmässiga artiklar. Det är lite som ett fickur utan en kedja... eller vapen, ledsen jag bröt them.lol. Listan över ob...