Inhoudsopgave:

M-Clock miniatuur multimode klok - Ajarnpa
M-Clock miniatuur multimode klok - Ajarnpa

Video: M-Clock miniatuur multimode klok - Ajarnpa

Video: M-Clock miniatuur multimode klok - Ajarnpa
Video: MOST IMPRESSIVE RC MODEL TRUCKS!! RC SCANIA, MAN, ACTROS, GRAND HAULER, SUPER SCALE!! 2024, Juli-
Anonim
Image
Image
HHMM-modus
HHMM-modus

Minimalistische klok? Multimode klok? Matrix klok?

Dit is een multi-mode klokproject gebaseerd op de MSP430G2432. Het kan worden geassembleerd zonder solderen en minimaal gebruik van gereedschap. Met een beperkte schermresolutie van 8x8 pixels geeft deze 12-uursklok de tijd in 6 verschillende modi weer. Het maakt gebruik van minimale componenten (slechts 5 tot 7 onderdelen) en minimale bedrading (4 draden). Het hele project inclusief batterij is ondergebracht in een 1,5 "x 2" breadboard. Bonus paasei "Tetris"-achtig spel, zie laatste projectstappen.

Functies

  • Minimaal aantal componenten, 5 delen.
  • Minimale bedrading, slechts 4 draden nodig. Werkt op batterijen van 3V tot 3.6V.
  • Gebruik van watchdog-timer om de tijd bij te houden, power-down slaapmodus (LPM3) kost uA-stroom.
  • 32 Khz-kristal om de juiste tijd bij te houden tijdens het slapen.
  • Draait 1Mhz DCO-gekalibreerde klok wanneer actief (tijdweergave).
  • Dit is een 12H-klok, geen 24H en heeft geen AM/PM-indicator.
  • Paaseitoepassing van het Tetris-spel.

Stap 1: HHMM-modus

HHMM-modus, typische uren plus minuten scrollende cijfers met dubbele puntscheidingsteken. Foto hieronder is niet duidelijk omdat de cijfers scrollen.

Stap 2: Seconden-modus

Seconden Modus
Seconden Modus

Secondenmodus, toont alleen seconden

Stap 3: Tix-modus

Tix-modus
Tix-modus

Tix-modus, led-matrix is verdeeld in kwadranten, de bovenste kwadranten tonen het uur in bcd-waarden (binair gecodeerd decimaal). ze worden weergegeven door het aantal punten om de cijfers aan te geven. de onderste kwadranten tonen de minuut in bcd. d.w.z. voor 4:32 toont het geen stip + 4 stippen op de bovenste helft en 3 stippen + 2 stippen op de onderste helft.

Stap 4: Dobbelmodus

Dobbelmodus
Dobbelmodus

Dice-modus, de led-matrix is verdeeld in twee sets 'dobbelstenen'. waarbij het bovenste paar het uur van 1 - 12 aangeeft, het onderste paar dobbelstenen toont minuten in stappen van 5 minuten. Elke seconde zal de dobbelsteen tussen mogelijke waarden draaien. Het 4e uur kan bijvoorbeeld worden weergegeven door 0 + 4, 1 + 3 en 2 + 2 combinaties van 1 of 2 dobbelstenen. Hieronder, voor 4:32, wordt de dobbelsteenwaarde bovenste 4 + onderste 6 (5 + 1) weergegeven, komt uit op 4 uur, 6 x 5 = 30 min, met de oneven 2 minuten afgekapt omdat we alleen waarden weergeven van stappen van 5 minuten.

Stap 5: Cijfermodus

Cijfermodus
Cijfermodus

Cijfers-modus, een klein 3x3 gecondenseerd lettertype wordt gebruikt om zowel de uren als de minuten weer te geven zonder dat u door de cijfers hoeft te scrollen. De minutencijfers verschuiven naar links en rechts op de seconde en het uurcijfer (wanneer in het uur van 1 tot 9) verschuift van rechts naar links om elke 10 seconden vooruitgang tijdens de minuut aan te geven. 4:33 en ongeveer 30+ seconden worden op de foto getoond.

Stap 6: Binaire modus

Binaire modus
Binaire modus

Binaire modus (eigenlijk is het bcd, of binair gecodeerd decimaal), de uren, minuten en seconden worden weergegeven als binaire stip op verschillende kolommen in de led-matrix. de kolommen 0 en 1 (van links) vertegenwoordigen de uurcijfers, kolom 2 is blanco, kolommen 3 en 4 vertegenwoordigen de minutencijfers, kolom 5 is blanco, kolommen 6 en 7 vertegenwoordigen de tweede cijfers. Hieronder de tijd van 4:34:16.

Stap 7: Hoe het werkt

De schakeling maakt gebruik van rij- en kolommultiplexing om de leds rij voor rij aan te sturen, dit geeft een inschakelduur van 12,5% wanneer "sets" leds (8 van hen in elk van de 8 rijen) kort worden ingeschakeld. stroombeperkende weerstanden zijn geëlimineerd om breadboard-ruimte te besparen en omdat we niet constant individuele leds aansturen, zullen ze niet worden beschadigd.

De bediening (gebruikersinterface) is ook zo ingericht dat we slechts één tactiele knop gebruiken voor invoer. de firmware legt de lange druk op de knop vast (ingedrukt houden) voor menurotatie en normale druk op de knop voor menuselectie. Door dit project te migreren van een AVR mcu naar een msp430 mcu had ik het mogelijk gemaakt om de tijd veel nauwkeuriger bij te houden. Tijdens weergave (d.w.z. led aan) loopt het project op 1Mhz DCO. De MSP430 mcu heeft in de fabriek gekalibreerde klokwaarden. Als dit project niet wordt weergegeven, gaat het naar een LPM3 (low-power-modus 3) om stroom te besparen. Bij LPM3 kan de DCO-klok niet worden gebruikt en het project schakelt over naar het gebruik van een op 32 Khz kristal gebaseerde AClk om de tijd bij te houden.

Stap 8: Componenten / onderdelen

Componenten / Onderdelen
Componenten / Onderdelen
  • MSP430G2432 (of andere G-serie dip 20-pins apparaten met 4k+ flitser)
  • 8x8 LED-matrixdisplay (alleen rood, dit is een 3V-project)
  • tactiele knop, je hebt er 3 nodig als je het Tetris-spel wilt inschakelen
  • 32Khz klokkristal
  • CR2032 of andere 3V-batterijbron

Stap 9: Breadboard-indeling

Breadboard-indeling
Breadboard-indeling
Breadboard-indeling
Breadboard-indeling
Breadboard-indeling
Breadboard-indeling

De 8x8 led-matrix heeft een puntgrootte van 1,9 mm en is van een gemeenschappelijke kathode, als u een gemeenschappelijk anodetype heeft, kunt u een paar regels in de code wijzigen voor adoptie. Zie de bijgevoegde foto's en schema en kijk of je de juiste pin-outs hebt. Het lijkt erop dat ze vrij algemeen zijn en als u via ebay koopt, hebben de meeste leveranciers dezelfde pin-out, zelfs als het modelnummer anders is.

Stap 10: Schematisch / Assembleren

Schema / Montage
Schema / Montage
  • Volg de layout van het breadboard en plaats twee jumperdraden op het mini breadboard
  • Plaats MSP430G2432 mcu
  • Plaats 32Khz kristal
  • Tactiele knop plaatsen
  • Plaats stroombron (ik gebruik CR2032-knoopcel)
  • Plaats tot slot 8x8 led-matrix bovenop MSP430G2432

Broncode en firmware voor het project kunnen worden gedownload van mijn github-repository, benodigde bestanden zijn mclock.c (bron) en M-Clock.hex (firmware binair)

Stap 11: Easter Egg / Tetris Like Game

Easter Egg / Tetris-achtig spel
Easter Egg / Tetris-achtig spel

Met extra flash-ruimte op de MCU kan ik een Tetris-achtig spel spelen. Deze Easter Egg-toepassing wordt mogelijk gemaakt door de extra / optionele tactiele knoppen in de juiste breadboard-posities te plaatsen.

Door op een van de spelknoppen (links of rechts) te drukken wanneer de klok wordt weergegeven, wordt het spel gestart. De spelbesturing is via de linker- en rechterknop om het speelstuk horizontaal te verplaatsen, en de klokknop, in de spelmodus, fungeert als de draaiknop voor het speelstuk. Er is geen snelheidsdaling in deze implementatie. Wanneer het spel eindigt (spelstukken tot aan het plafond gestapeld), wordt de score (aantal geëlimineerde rijen) kort weergegeven als 2 knipperende cijfers.

Aanbevolen: