Inhoudsopgave:
- Stap 1: Het idee
- Stap 2: De hersenen
- Stap 3: Weergeven
- Stap 4: RTC
- Stap 5: Interface met gebruiker
- Stap 6: De twist
- Stap 7: Probleem met knoopcel
- Stap 8: De code
- Stap 9: Klaar
Video: Doe-het-zelf zakhorloge: 9 stappen
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
In deze drukke wereld is het bijhouden van de tijd een must voor betere prestaties en als hobbyist, waarom zou u dan geen apparaat maken om de tijd bij te houden. Dankzij technologie bestaan er apparaten die 'watch' worden genoemd, maar! als je dingen zelf maakt, is het plezier anders, dus in deze Instructable ga ik je laten zien hoe ik dit kleine horloge heb gemaakt.
Stap 1: Het idee
Het idee is om het zo eenvoudig mogelijk te houden en minimale componenten te gebruiken.
- Een display om de tijd weer te geven.
- Een onderdeel om de tijd bij te houden.
- Een ander onderdeel om de tijd te nemen en het naar het display te sturen.
- En een stroombron.
// Stroomschema van idee
Stap 2: De hersenen
The Brain zou absoluut een microcontroller moeten zijn, omdat het voordelen heeft van eenvoudige programmering en kleiner formaat. Eerst dacht ik dat attiny85 perfect zou passen, maar de beperkte GPIO-pinnen maakten het moeilijk om ermee om te gaan. toen besloot ik om te gaan met Atmega328p beschikbaar in tqfp-pakket, maar met verwaarloosbare ervaring in het solderen van zo'n klein pakket besloot ik om met arduino pro mini te gaan. Hoewel dit bord officieel met pensioen is, maar omdat het open source is, zijn ze nog steeds beschikbaar.
Stap 3: Weergeven
Een 0,91 inch OLED-displaymodule zou een goede keuze zijn voor weergave, waardoor het er moderner uitziet, maar het probleem is het stroomverbruik, gemiddeld verbruikt het 20mA, wat fors zou zijn voor de batterij. Terwijl ik me afvroeg wat ik als display moest gebruiken, vond ik dit dvd-scherm rondslingeren. Dit display heeft vier cijfers van zeven segmenten display met enkele complementaire leds. Alle leds zijn geconfigureerd als gemeenschappelijke kathode, dus om ze aan te sturen, moeten we de methode mutliplexing gebruiken, wat niets anders is dan elk cijfer één voor één zo snel aansturen dat het lijkt alsof ze allemaal tegelijkertijd oplichten. Ook Atmega328 kan tot 20mA zinken, zodat de noodzaak van transistors wordt verminderd. Elke led werkt prima met 100 ohm bij 3.3v.
Stap 4: RTC
Arduino pro mini kan het bijhouden, maar het probleem ermee is het stroomverbruik. Bij 3.3v trekt het ongeveer 3mA bij 8MHz en bovendien hebben we ook een display dat ook wat sap verbruikt. Ik kies ervoor om met de DS3231 RTC-chip te gaan, omdat deze gemakkelijk te gebruiken is dankzij de I2C-interface. Ook houdt het de tijd nauwkeuriger bij dan atmega328 en verbruikt het zelfs minder stroom.
Stap 5: Interface met gebruiker
Interface is eenvoudig - de gebruiker wil tijd, het apparaat geeft het hiervoor, we hadden complexe dingen kunnen gebruiken, zoals een handgebaar of zo eenvoudig als een drukknop. Dus wanneer de gebruiker de tijd wil weten, drukt u op de knop en de tijd wordt weergegeven op het display. Het plan voor de code was om te detecteren of de knop wordt ingedrukt, wanneer erop wordt gedrukt de huidige tijd van RTC opvragen en deze via het display laten zien, maar toen realiseerde ik me dat de arduino pro mini een drukknop heeft om zichzelf te resetten, waarom zou je deze dan niet gebruiken in plaats van te controleren voor de knop neem je de huidige tijd en geef je deze één keer weer en wacht je tot de volgende reset.
Stap 6: De twist
Dus nu hebben we onze componenten arduino pro min, dvd-display, DS3231 RTC-chip en CR2032-knoopcel als krachtpatser ingesteld zonder zo veel na te denken over de keuze van de batterij. Dus met circuit in mijn gedachten ontwierp ik de PCB-lay-out. En net voordat ik PCB kon bestellen, kwam er één ding in me op… als ik denk aan een RTC-chip en een knoopcelhouder, dan zijn ze al gesoldeerd in de DS3231 RTC-module, waarom zouden we dan middelen verspillen aan het krijgen van een aangepaste PCB, in dit geval hebben we gewoon soldeerkracht, I2C-lijnen en de dvd-weergave naar pro mini. Voor het geval u de PCB-layout wilt bekijken, deze is hieronder bijgevoegd.
Stap 7: Probleem met knoopcel
De fout die ik maakte door geen tijd te geven om het batterijtype te kiezen, betaalde zijn prijs. Toen het apparaat via arduino uno werd gevoed, zoals ik het gebruikte om arduino pro mini te programmeren, werkte het prima, maar toen het werd aangedreven door een knoopcel, gedroeg het zich vreemd. Na veel tijd te hebben besteed aan het uitzoeken wat het probleem was - het was eigenlijk dat de CR2032 stroom tot 2mA kan leveren en de vereiste van het apparaat was veel dan dat, dus uiteindelijk gebruikte ik in plaats daarvan een lipo-batterij.
Stap 8: De code
De code ziet er misschien lang en repetitief uit, maar is eigenlijk eenvoudig te begrijpen. Alles wordt in de setup-sectie geplaatst, omdat we dingen maar één keer doen en wachten tot de volgende resetopdracht.
De codestroom is alles initialiseren -> neem de huidige tijd van RTC -> manipuleer de gegevens zodat het kan worden gebruikt om de weergavecijfers te multiplexen -> en geef vervolgens de gegevens (tijd) gedurende 2 seconden weer door elk cijfer één voor één te multiplexen.
Stap 9: Klaar
Ik zou er een 3D-hoes voor hebben geprint, maar zonder een hoes ziet het er geweldig uit omdat alle componenten zichtbaar zijn.
Aanbevolen:
Game Design in Flick in 5 stappen: 5 stappen
Game-ontwerp in Flick in 5 stappen: Flick is een heel eenvoudige manier om een game te maken, vooral zoiets als een puzzel, visuele roman of avonturengame
Gezichtsdetectie op Raspberry Pi 4B in 3 stappen: 3 stappen
Gezichtsdetectie op Raspberry Pi 4B in 3 stappen: In deze Instructable gaan we gezichtsdetectie uitvoeren op Raspberry Pi 4 met Shunya O/S met behulp van de Shunyaface-bibliotheek. Shunyaface is een bibliotheek voor gezichtsherkenning/detectie. Het project streeft naar de hoogste detectie- en herkenningssnelheid met
Hoe plug-ins in WordPress te installeren in 3 stappen: 3 stappen
Hoe plug-ins in WordPress te installeren in 3 stappen: In deze tutorial laat ik je de essentiële stappen zien om de WordPress-plug-in op je website te installeren. In principe kunt u plug-ins op twee verschillende manieren installeren. De eerste methode is via ftp of via cpanel. Maar ik zal het niet opsommen, want het is echt compl
Akoestische levitatie met Arduino Uno stap voor stap (8 stappen): 8 stappen
Akoestische levitatie met Arduino Uno Stap voor stap (8-stappen): ultrasone geluidstransducers L298N Vrouwelijke DC-adapter voeding met een mannelijke DC-pin Arduino UNOBreadboardHoe dit werkt: eerst upload je code naar Arduino Uno (het is een microcontroller uitgerust met digitale en analoge poorten om code te converteren (C++)
Doe alsof je Xyzzy Server bent op Raspberry Pi - Ajarnpa
Doen alsof je een Xyzzy-server bent op Raspberry Pi: deze gids laat je zien hoe je een Pretend You're Xyzzy (PYX)-server op een Raspberry Pi kunt instellen. Ik noem het een XyzzyPiPretend You're Xyzzy is een online, open-source Cards Against Humanity-kloon die in een webbrowser wordt gespeeld. Op Android kun je ook de Clien