Innholdsfortegnelse:

DIY lommeur: 9 trinn
DIY lommeur: 9 trinn

Video: DIY lommeur: 9 trinn

Video: DIY lommeur: 9 trinn
Video: ТАКОГО ЕЩЕ НИКТО НЕ ВИДЕЛ! Узнав это СЕКРЕТ, ты никогда не выбросишь пластиковую бутылку! 2024, Juli
Anonim
DIY lommeur
DIY lommeur
DIY lommeur
DIY lommeur

I denne travle verden er det nødvendig å holde oversikt over tid for bedre ytelse og for å være en hobbyist, hvorfor ikke lage en enhet for å holde oversikt over tiden. Takket være teknologien finnes det enheter som kalles 'se', men! Når du lager ting selv, er gleden annerledes, så i denne instruksen skal jeg vise deg hvordan jeg lagde denne lille klokken.

Trinn 1: Ideen

Ideen
Ideen

Tanken er å holde det så enkelt som mulig og å bruke minimale komponenter.

  1. Et display for å vise tiden.
  2. En komponent for å holde oversikt over tid.
  3. En annen komponent for å ta tid og sende den til visning.
  4. Og en strømkilde.

// Floddiagram

Trinn 2: Hjernen

Hjernen
Hjernen

Hjernen bør definitivt være en mikrokontroller, siden den har fordeler med enkel programmering og mindre størrelse. Først trodde jeg attiny85 ville passe perfekt, men da var det begrensede GPIO -pinner som gjorde det vanskelig å få det til. da bestemte jeg meg for å gå med Atmega328p tilgjengelig i tqfp -pakken, men med ubetydelig erfaring med lodding av en så liten pakke bestemte jeg meg for å gå med arduino pro mini. Selv om dette brettet er offisielt pensjonert, men er åpen kildekode, er det fortsatt tilgjengelig.

Trinn 3: Display

Vise
Vise
Vise
Vise
Vise
Vise

En 0,91 tommers OLED -skjermmodul ville være et godt valg for skjerm, slik at det ser mer moderne ut, men da er problemet at det er strømforbruk, det bruker i gjennomsnitt 20mA, noe som ville være heftig for batteriet. Mens jeg lurte på hva jeg skulle bruke som skjerm, fant jeg at denne DVD -skjermen lå rundt. Denne skjermen har fire sifre på syv segmentdisplayer med noen komplementære lysdioder. Alle lysdioder er konfigurert som en vanlig katode, så for å drive dem må vi bruke metoden som kalles mutliplexing, noe som ikke er annet enn å kjøre hvert siffer en etter en så fort at det ser ut til at alle lyser opp samtidig. Atmega328 kan også synke opptil 20mA, slik at behovet for transistorer reduseres. Hver LED fungerer ganske bra med 100 ohm på 3.3v.

Trinn 4: RTC

RTC
RTC

Arduino pro mini kan holde oversikt, men problemet med det er strømforbruket. På 3.3v trekker den ca 3mA ved 8MHz, og pluss at vi også har skjerm som også vil konsumere litt juice. Jeg velger å gå med DS3231 RTC -brikke, siden den er enkel å bruke takket være I2C -grensesnittet. Den holder også oversikt over tiden mer nøyaktig enn atmega328 og bruker til og med mindre strøm.

Trinn 5: Grensesnitt med bruker

Grensesnitt med bruker
Grensesnitt med bruker
Grensesnitt med bruker
Grensesnitt med bruker

Grensesnittet er enkelt - brukeren vil ha tid, enheten gir det for dette, vi kunne ha brukt komplekse ting som håndbevegelser eller så enkelt som en trykknapp. Så når brukeren vil vite klokkeslettet, trykker du på knappen og tiden vises på displayet. Planen for koden var å oppdage om knappen trykkes, når den trykkes, be om nåværende tid fra RTC og vise den gjennom displayet, men da skjønte jeg at arduino pro mini har en trykknapp for å tilbakestille seg selv, hvorfor ikke bruke den så i stedet for å sjekke opp for knappen, bare ta gjeldende tid og vis en gang og vent til neste tilbakestilling.

Trinn 6: Twist

Så nå har vi komponentene våre satt til arduino pro min, DVD -skjerm, DS3231 RTC -brikke og CR2032 -knappcelle som krafthus med ikke så mye tenking om valg av batteri. Så med krets i tankene designet jeg PCB -oppsettet. Og like før jeg kunne bestille PCB, slo en ting i tankene mine … hvis jeg vurderer RTC -brikke og knappecelleholder, så er de allerede loddet i DS3231 RTC -modulen, hvorfor så kaste bort ressurser på å skaffe en tilpasset PCB, i dette tilfellet har vi bare loddestyrke, I2C -linjer og DVD -skjermen til pro mini. Hvis du vil se på PCB -layouten, er den vedlagt nedenfor.

Trinn 7: Problem med knappcelle

Feilen jeg gjorde ved å ikke gi tid til å velge batteritype betalte prisen. Da enheten ble drevet gjennom arduino uno, da jeg brukte den til å programmere arduino pro mini, fungerte den bra, men da den ble drevet av knappecelle, oppførte den seg merkelig. Etter å ha brukt mye tid på å finne ut hva problemet var - det var faktisk at CR2032 kan gi strøm opptil 2mA og kravet til enheten var mye mer enn det, så til slutt endte jeg opp med å bruke et lipo -batteri i stedet.

Trinn 8: Koden

Koden kan se lang og repeterende ut, men er faktisk enkel å forstå. Alt settes inn i oppsettseksjonen ettersom vi bare gjør ting en gang og venter til neste tilbakestillingskommando.

Kodestrøm er å initialisere alt -> ta nåværende tid fra RTC -> manipulere dataene slik at de kan brukes til å multiplekse visningssifrene -> og deretter vise dataene (tiden) i 2 sekunder ved å multipleksere hvert siffer ett etter ett.

Trinn 9: Ferdig

Jeg ville ha 3D -utskrevet et etui for det, men uten etui ser det bra ut da alle komponenter er eksponert.

Anbefalt: