Nya jorden tid (NET) digital klocka i återvunnet retro-modern fall (4 / 6 steg)

Steg 4: Microcontroller kod



Här är källkoden för klockan i både församling (.asm) och Hex (hex), sammanställts för PIC16F627A. Koden är ganska väl dokumenterat, men här är snabb förklaring av vad som händer på.

Kod förklaring:

Tidtagning:
Magiska förhållandet att konvertera regelbunden tid till ny jord tid är 0,25 NET minuter per sekund (eller 1 NET minut för varje 4 sekunder av förfluten tid). Det här beräknas med nyckeltal 360 NET Deg per 24 timmar och 60 NET minuter per NET grad.

Att räkna NET, koden använder pics inbyggda Timer1 (TMR1) modul med en extern 32.768kHz kristall för tidtagning. För att uppnå det magiska förhållandet 1 NET min per 4 sekunder, kan vi använda 16-bitars TMR1 registret med en 1:2 prescaler. (16-bitars TMR1 flödar över på 65536 räknas, crystal körs på 32768 räknas per sekund. 65536/32768 = overflow var 2 sekunder. Lägg bara till i 1:2 prescaler och voila! Avbryta var 4 sekund!)

Display:
PIC själv kör på 4MHz intern oscillator. De fem 7-segment LED-displayerna genomsöks enligt ett fast intervall styrs av Timer0 (TMR0). Varje gång TMR0 flödar över, att PIC växla till nästa visning (time division multiplexing). Nyckeln till tid division multiplexing visar är att skanna dem som snabbt som möjligt och med regelbundna mellanrum. Annars uppfattar ögat flimmer i displayen.

Tid inställning/knappar:
Tidsinställning utförs av två knappar - en knapp steg NET grader och en NET minuter. Knapparna skall kontinuerligt övervakas av PIC i huvudprogrammet ögla. Om du vill spara I/O pins, är knapparna anslutna till vad är normalt en utgångsstiftet. När PIC söker för knappen status, det växlar det i/o pin till indata och tar en behandling.

När en knapptryckning upptäcks, går programmet till en tid sättande funktion specifik för varje knapp. Denna funktion ökar variabeln att hålla reda på tiden, precis som på TMR1 avbryta. En enda tryckning ökar värdet för den klocka ett steget, när du håller ner knappen kommer att resultera i kontinuerlig förväg. Det finns en fördröjning funktion i koden till Dämpningstid inledande pressen och ge tid för kontinuerlig förskottet.

Se Steg
Relaterade Ämnen

Lärande sekventiella logik Design för en Digital klocka

Detta instructable är för två ändamål 1) att förstå och lära dig grunderna i sekventiella logik 2) använder den kunskapen för att skapa en digital klocka.Digitala klockor har byggts av otaliga elektronik hobbyister världen över. Så varför har jag val...

Multi färg digital klocka

I detta instructable kommer vi att göra en bi-color digital klocka som kan visa tid, temperatur och datumDenna bild används en I2C (eller IIC) realtidsklocka IC (DS1307) och ett fyrsiffrigt sju segment display om du vill skapa en standard digital klo...

Digital klocka tur modell av "Johnny 5" ca 1980-talet filmer

Nummer 5 är vid liv!Det stämmer du av 1980-talet bozos. Jag tog Mr Johnny 5 tillbaka till livet i denna nya roliga instructable. Om du vet något om nummer 5, du kommer att minnas honom som en kvick, älskvärda, militär grad robot som är mänskligare än...

Billigt och enkelt PacMan digital klocka!

Detta är gjord helt av objekt som du kan hitta liggandes på ditt hus!Steg 1: delar... Behöver du:-sax-varm limpistol och lim-en begagnad digital klocka-en havregryn plastlock-vissa konstruktion papper-X-acto knivSteg 2: Redo... Markera var du ska kli...

DIY Digital klocka

Har du någonsin varit riktigt uttråkad och behövde lite kul DIY-projekt att göra? Tja, har du någonsin tänkt på att göra en super, awesome, digital klocka som du kan faktiskt berätta tid med? Bra än du borde verkligen instruktionerna awesome. Ha det...

Digital klocka RTC i LED-Display av 4 siffror och 7 segment

Hej, alla!Detta är mitt projekt av en digital klocka med RTC (realtidsklocka) med hjälp av en LED-skärm av 04 siffror och 07 segment, inklusive funktioner för temperatur och luftfuktighet.För att kontrollera displayen jag har använt en Arduino Uno oc...

Digital klocka med 7 Segment Display kontrolleras med hjälp av fjärrkontrollen

det finns sorter av digital klocka finns i vårt dagliga liv. Grundläggande digital klocka kommer att oftast ha några inbyggda funktioner som väckarklocka, kalender och termometer förutom display klockan information. Några av de förskott digital klock...

Nintendo Game Boy gjorde till en Digital klocka

I detta instructable jag ska visa dig hur jag gjorde min egen retro videospel tema digital klocka från en gammal trasig Nintendo Game Boy.Sak behövs; En gammal trasig Nintendo Game Boy du inte misstycker skära upp, billiga digital väckarklocka ungefä...

WOL klockan ESP8266-12naE + 60 LED WS2812B analog digital klocka

Detta instructable kommer att guida dig genom processen att ansluta följande delar för att skapa en intressant och korrekt analog / digital klocka som kommer att automatiskt ställa in tiden från internet.Delar som behövs:ESP8266-12naE modul (kan köpa...

Tissue Box & Digital klocka Mash-Up!

Tja, här är en digital klocka och vävnad box... MASH UP!* dun dun dun! *Hur som helst...Jag fick en digital klocka på mål för $5,00 (+ skatt förstås), och jag hade det under en lång tid.Men många Instructables inspirerade mig att göra några bra konst...

Göra en Digital klocka från Scratch

i någon gång i livet för varje elektronik hobby är behovet av att göra en klocka vattenburen, i mitt fall var det ungefär en månad efter jag lödda min första delen på en bräda, men då jag inte hade de rätta verktygen, delar och kunskap för att göra e...

Införandet av Digital klocka temperatur spänning elektronikmodulen för Arduino STM8 AVR 51 STM32 ARM

Hej vänner, idag jag presentera denna underbara digital elektronisk klocka temperatur spänning modul från ICStation i detaljer. Denna produkt är utvecklad av ICStation teamet nyligen. Vi delar det till dig och Välkommen alla vän att utvärdera produkt...

Digital klocka!

Jag kommer att visa dig hur man gör en digital klocka med en arduino.Steg 1: material Arduino uno r3Diverse hoppare ledningarUSB 5v batteripackUSB-kabelsju seg digitalvisning (SMA420564)Box/låda för proejectLödfritt set av brödunderläggenTryck swithc...

2 $ digital klocka

2 $ digital klockavideoProdukt länk...

Tysta din digital klocka för smygande standardiserade examen med

syfte: tysta din digital klocka piper och larm. Efter denna ändring, kommer att din digital klocka vara permanent tyst.Metod: ta bort våren-membran förstärkningMålgrupp: detta är särskilt användbart för standardiserat test takers (MCAT, satt, LSAT, G...

Hur man gör en digital klocka kit baserat på Atmel

denna digtial klocka kit levereras med nedan funktioner:Funktioner• Digital klocka• Räknare• Time alarm• StoppurKnappar• S1: urval funktionsknappen• S2: utöka funktionsknappen• S3: adjustment (Bildjustering)Funktioner:Klockinställningen: Tryck på S1...

Digital klocka med MSP430

Hej vänner, detta är mitt projekt på Digital klocka, med MSP430G2452 [du kan använda valfri controller 20-pin MSP], jag har lagt upp sin schematiska med koden här, du kan se det på...http://youtu.be/3GbRLwAJdfM...

Numechron digital klocka

Min Numechron digitalklocka design var inspirerad av Pennwood modell 1364 digital klocka. Klockor av denna typ har sitt ursprung i 1930-talet och byggdes under många år av Pennwood och Lawson företag i många olika trä, metall och plast fall stilar.Ja...

Hur man bygger en återvunnet Retro: NES fördel Desktop lampa Edition

The Nintendo Entertainment System hade några ganska intressant tillbehör. Från djupet av sin till synes oändliga bibliotek av licensierade och icke-licensierade system, har jag grävt ut denna Best. När du lyfter det, du kommer att förstå att "odjuret...