Nieuwe aarde tijd (NET) digitale klok in geval van gerecycled retro-moderne (4 / 6 stap)

Stap 4: Microcontroller Code


Hier is de broncode voor de klok in zowel vergadering (.CATPart) en Hex (hexadecimaal), opgesteld voor de PIC16F627A.  De code is vrij goed gedocumenteerd, maar hier is een korte uitleg van wat er op.

Uitleg van de code:

Tijdwaarneming:
De magische verhouding tot reguliere speeltijd omzetten in nieuwe aarde tijd is 0,25 NET minuten per 1 seconde (of 1 netto minuut voor elke 4 seconden verstreken tijd).  Dit wordt berekend met de verhoudingen 360 netto Deg per 24 uur en 60 NET minuten per NET graad.

Graaf NET, gebruikt de code de foto's ingebouwde Timer1-module (TMR1) met een externe 32.768kHz kristal voor de tijdwaarneming.  Om te bereiken de magische verhouding van 1 NET Min per 4 seconden, kunnen we het 16-bits TMR1 register gebruiken met een prescaler van 1:2. (De 16-bits TMR1 loopt over op 65536 graven, crystal prestatiestatus 32768 tellingen per seconde.  65536/32768 = overloop elke 2 seconden.  Voeg in de 1:2 prescaler en voila!  Onderbreken van elke 4 seconden!)

Display:
De foto zelf draait op de interne 4MHz oscillator.  De vijf 7-segment LED displays worden gescand met een vaste interval bestuurd door Timer0 (TMR0).  Elke keer TMR0 doorloopt, zal de PIC overschakelen naar het volgende scherm (voor tijd division multiplexing).  De sleutel tot tijd division multiplexing displays is om te scannen ze zo snel mogelijk en met een regelmatig interval.  Anders zal uw oog waarnemen flikkeren in het display.

Tijd instelling/knoppen:
Tijdinstelling wordt uitgevoerd door twee knoppen - één knop stappen NET graden en minuten met een NET. De knoppen worden voortdurend gecontroleerd door de PIC in het hoofdprogramma lus.  Als u wilt opslaan I/O pinnen, zijn de knoppen verbonden met wat normaal gesproken een uitgang Pins is. Wanneer de PIC de status van de knop controleert, het dat I/O pin wordt overgeschakeld naar een input en neemt een lezing.

Wanneer een druk op de knop wordt gedetecteerd, wordt het programma gaat naar een tijd instelling functie specifiek voor elke knop.  Deze functie wordt de variabele het bijhouden van tijd, net als de TMR1 interrupt verhoogd.  Een enkele druk zal de klok één stap, terwijl die de knop in continu voorschot resulteren zal verhogen.  Er is een vertraging-functie in de code om te debounce de eerste pers en de timing voor de continue advance.

Gerelateerde Artikelen

Digitale klok met behulp van MSP430

Digitale klok met behulp van MSP430

Hallo vrienden, dit is mijn project op digitale klok, met behulp van de MSP430G2452 [u kunt elke 20 pin MSP controller] ik heb geupload zijn schema met de code hier, je ziet het werken bij...http://Youtu.be/3GbRLwAJdfM
Digitale klok beurt model van "Johnny 5" circa 1980 's films

Digitale klok beurt model van "Johnny 5" circa 1980 's films

Nummer 5 leeft!Dat is juist u jaren 1980 mafkezen. Ik bracht de heer Johnny 5 weer tot leven in dit nieuwe leuke instructable. Als u een ding over nummer 5 weet, u zult zich herinneren hem als een geestig, lief, militaire rang robot die meer menselij
Digitale klok met behulp van 7 Segment Display gecontroleerd met behulp van TV Remote

Digitale klok met behulp van 7 Segment Display gecontroleerd met behulp van TV Remote

er zijn rassen van digitale klok beschikbaar in ons dagelijks leven. Eenvoudige digitale klok zal meestal hebben sommige gebouwd in functies zoals alarm klok, kalender en thermometer naast de display de klok-informatie. Sommige van de vooraf digitale
Sequential Logic Design voor een digitale klok leren

Sequential Logic Design voor een digitale klok leren

Dit instructable is voor twee doeleinden 1) te begrijpen en te leren van dat de fundamentals voor sequentiële logic 2) gebruiken die kennis om te maken een digitale klok.Digitale klokken zijn door talloze electronica hobbyisten gebouwd over de hele w
De digitale klok Numechron

De digitale klok Numechron

Mijn Numechron digitale klok-ontwerp is geïnspireerd op de Pennwood Model 1364 digitale klok. Klokken van dit type is ontstaan in de jaren 1930, en jarenlang werden gebouwd door de Pennwood en Lawson bedrijven in vele verschillende hout, metaal en pl
Volledige digitale klok met aanwezigheid Sensor (RTC - Alarm - PIR - temperatuur - vochtigheid - dauwpunt)

Volledige digitale klok met aanwezigheid Sensor (RTC - Alarm - PIR - temperatuur - vochtigheid - dauwpunt)

HoiIk heb al enkele digitale klokken projecten gedaan met Arduino met inbegrip van LED en LCD schermen, maar deze is specialer omdat ik hebben een nieuwe functie ingevoerd met een bewegingssensor (PIR).Zie VIDEOBelangrijkste kenmerkenPIR (aanwezighei
Pong klok met geval

Pong klok met geval

Deze klok maakt gebruik van het klassieke videospel Pong de tijd te vertellen.De 2 spelers automatisch winnen en verliezen zodat hun scores hoeveel uren en minuten tonen.Dit is MrNick1234567 Pong klok ontwerp en dit Instructable toont hoe het passen
Massief hout digitale klok

Massief hout digitale klok

hoe het bouwen van een houten digitale klok aangedreven door een atmega168 (arduino) met een ingebouwd alarm en spelletjes.Ik dacht eerst over het maken van dit, toen ik zag een LED klok gedekt door een houten fineer. Ik vond het toen ik het zag, tot
Aangepaste digitale klok uit hout en Jeep VIC

Aangepaste digitale klok uit hout en Jeep VIC

ik was trollen via het autokerkhof in de gebruikelijke Jeep sectie een tijdje terug en ik kwam over de Grand Cherokee. Ik zag dat bijna iedereen van hen had nog steeds de voertuiginformatie centreren vertoning nog in hen. Ik gezien online dat deze sc
Multi color digitale klok

Multi color digitale klok

In dit instructable zullen we een bi-color digitale klok die de tijd, temperatuur en datum kan weergevenDeze PIC-project gebruikt een I2C (of IIC) Real Time klok IC (DS1307) en een viercijferige zeven segment display om het maken van een standaard di
De digitale klok Barebone rev2

De digitale klok Barebone rev2

De kerels van Hey...Hier is een opvolging van het project van de digitale klok dat ik over een jaar geleden gepost heb. Ik heb niet overwogen de drift van de RTC-module! Ik heb gevonden de drift te zijn plus 1 RTC minuut voor elke 21 dagen voorbij, d
Digitale klok RTC in LED-scherm van 4 cijfers en 7 segmenten

Digitale klok RTC in LED-scherm van 4 cijfers en 7 segmenten

Hallo, alle!!Dit is mijn project van een digitale klok met RTC (Real Time Clock) met behulp van een LED-display van 04 cijfers en 07 segmenten met inbegrip van de functies van temperatuur en vochtigheid.Om de weergave te besturen die ik heb gebruikt
Digitale muur klok met behulp van Atmega-8 en RTC

Digitale muur klok met behulp van Atmega-8 en RTC

Klok is een van de meest essentiële dingen van huis houden. Er zijn verschillende soorten klokken zoals goede oude klokken van de slinger, analoge klokken en de nu trending moderne digitale klokken.Digitale klokken heeft vele voordelen ten opzichte v
Hoe maak je een digitale klok van Arduino

Hoe maak je een digitale klok van Arduino

Digitale klokken zijn een van de geweldige uitvinding op het gebied van de wetenschap.Heb je je ooit afgevraagd "Hoe te maken van uw eigen digitale klokken, net zoals in films!"???Nou die ik heb het ook, mijn kindertijd in een droom aan mijn zee