Cuprins:
- Provizii
- Pasul 1: Conectați componentele
- Pasul 2: Părți imprimate 3D
- Pasul 3: Codul
- Pasul 4: Funcționare și setări
Video: Ceas de pensionare / Count Up / Ceas Dn: 4 pași (cu imagini)
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:42
Am avut câteva dintre aceste afișaje cu matrice de puncte LED 8x8 în sertar și mă gândeam ce să fac cu ele. Inspirat de alte instructabile, mi-a venit ideea de a construi un afișaj de numărătoare inversă / în sus pentru a număra înapoi până la o dată / oră viitoare și, dacă timpul țintă a trecut, contorizați din acesta. I-am făcut acum ceasul meu de pensionare așezat pe raft.
Ideea de ao pune într-o sticlă a fost mai degrabă un accident în timp ce ne gândeam la o carcasă. Alții pun corăbiile într-o sticlă, de ce nu un ceas?
De asemenea, am vrut să fac ceasul să respecte ora de vară și bineînțeles să-mi amintesc setările și ora când am fost deconectat. Alimentez ceasul prin USB, ceea ce îl face reprogramabil dacă doriți să faceți ceva diferit sau doar să adăugați caracteristici la cod. Codul este destul de simplu și ar putea folosi, de asemenea, o mulțime de optimizare. Nu am avut mare grijă de consumul de RAM, trebuie să recunosc. Dacă am timp și motivație, voi reveni la asta.
Provizii
1. Arduino Nano
2. RTC (am folosit DS3231 comun care are și EEPROM)
3. Modul matrice de 12x 8x8 puncte. (Am avut modulele quad care sunt mai ușor de aliniat)
4. LDR pentru a regla luminozitatea afișajului
5. Rezistor 10 kOhm
6. Condensator 5x 100 uF suprimând vârfurile de pe afișaj
7. Pentru a crește contrastul modulelor de 8x8, am folosit „Window Film” cu nuanță închisă. Afișajul arată LED-urile ca puncte albe dacă nu sunt aprinse. Filmul pentru fereastră îl transformă într-un aspect negru strălucitor.
Pasul 1: Conectați componentele
Am folosit trei dintre afișajele quad pentru a asambla afișajul. Pentru a afișa o dată cu bare oblice și ora cu două puncte, avem nevoie de spațiu pentru 8 caractere. Folosind fontul tipic 5x7, am avea nevoie de șase blocuri de 8x8 pe rând. Am tăiat unul dintre blocurile quad în jumătate și le-am aranjat ca două rânduri pe șase blocuri, așa cum se arată în schema de bord.
Pasul 2: Părți imprimate 3D
Pentru a ține cele două rânduri ale afișajului și a le poziționa în sticlă, am imprimat inele rotunde de distanță pentru cadrul afișajului. Am adăugat fișierele pe care le-am folosit mai jos. Pentru a putea tipări acestea fără suport, acestea sunt împărțite în părți. Captura de ecran arată cele două inele lipite de cadrul afișajului. Capacul gâtului sticlei găzduiește cele trei butoane pentru a comuta între modurile de afișare și setarea orei curente și a timpului țintă. Capacul gâtului sticlei l-am imprimat în TPU permițând să glisați cablul USB în capac fără a tăia conectorii și să-l legați cu câteva înfășurări de sârmă. Am uitat să menționez că am folosit o sticlă de vin de 1,5 L pe care am tăiat-o chiar în partea de jos. Toate piesele care vor fi tipărite se potrivesc pe un pat de imprimantă de 20x20 cm (8x8 in).
Pasul 3: Codul
Codul Arduino folosește câteva biblioteci utilizate în mod obișnuit.
MD_MAX72xx
SPI
Sârmă
RTClib
Fus orar
TimeLib
Există câteva linii în fișierul INO care ar putea necesita modificări:
Linia 38: #define HARDWARE_TYPE MD_MAX72XX:: FC16_HW <- depinde de modulul 8x8 și de orientarea acestuia
în loc de FC16_HW ar putea una dintre:
- MD_MAX72XX:: PAROLA_HW
- MD_MAX72XX:: GENERIC_HW
- MD_MAX72XX:: ICSTATION_HW
- MD_MAX72XX:: FC16_HW
Codul folosește setările pentru ora centrală din SUA și trebuie ajustat pentru alte fusuri orare:
Linia 53/54:
TimeChangeRule myDST = {"CDT", Second, Sun, Mar, 2, -300}; // Ora de vară UTC-5TimeChangeRule mySTD = {"CST", First, Sun, 2 Nov, -360}; // Ora standard UTC -6
Acest lucru este ușor de reglat. Numele CST / CDT este doar pentru a avea o referință. Nu afișez abrevierea din trei litere, deci nu contează. Următorii parametri se referă la ce zi din lună are loc comutarea. Reglarea este în câteva minute, astfel încât locațiile care utilizează ajustări de +/- 30 de minute vor funcționa și ele.
RTC funcționează intern la ora UTC, permițând bibliotecii de fus orar să funcționeze conform intenției. S-ar putea să vă întrebați de ce codul face trimitere la vechiul chip DS1307 contrar chipului de ceas pe care l-am folosit, dar acest lucru nu contează. Biblioteca funcționează bine cu oricare dintre cipuri. DS1307 are tendința de a deriva mai mult decât DS3132. DS3132 este ceasul preferat. Pentru cei care ar dori să adauge timp de internet, un ESP8266 va face treaba destul de ușor. Acest lucru ar putea face RTC învechit. Dacă faceți aceste modificări, utilizați Arduino EEPROM pentru a stoca timpul țintă, am folosit RTC EEPROM pentru a face acest lucru.
Pasul 4: Funcționare și setări
Există trei butoane
1. Meniu / setări
2. Sus
3. Jos
Butonul de meniu permite parcurgerea celor trei tipuri de afișaj: Ora curentă, Ora țintă, Ora Delta. Ora Delta arată numărul de zile, HH / MM / SS între ora curentă și ora țintă. Se va afișa t- și numărătoarea inversă dacă ținta este în viitor sau t + și numărătoarea în sus dacă ținta este în trecut.
Pentru a regla ora curentă sau ora țintă, selectați ora curentă sau afișarea timpului țintă. Pentru a schimba ora, țineți apăsat butonul de meniu timp de 2 secunde și eliberați, ceea ce vă va aduce în modul de setare. „/” Sau „:” vecin se vor transforma în „” pentru a indica ce cifră ajustați. Utilizați butoanele sus / jos pentru a regla individual hh / mm / ss și mm / dd / aa. Nu am adăugat o setare pentru a comuta între zz / ll / aa și zz / ll / aa, acest lucru trebuie schimbat în cod sau poate cineva este dispus să adauge această caracteristică.
Veți observa că, dacă treceți minutele peste 59 sau sub 00, afișajul orelor se va regla și. același lucru este valabil pentru secunde, ore și zile schimbând următoarea valoare mai mare dacă treceți sub 0 sau peste valoarea maximă pentru această cifră. Am făcut acest lucru pentru a evita programarea diferitelor limite ale lunilor individuale și dacă februarie are nevoie de 29 de zile într-un an bisect. Reglarea timpului se face de fapt în epocă, secunde de la 1 ianuarie-1970.
Am adăugat un videoclip simplu pentru a arăta numărarea. Am vrut să le fac ca un afișaj rotativ. Dacă doriți să reglați durata modificării, linia 69 din INO vă oferă câteva opțiuni pentru a accelera sau a încetini schimbarea. 120 ms ar face ca cifrele să deruleze suficient de lent, deoarece ar fi o roată care rulează continuu.
Sper că ți-a plăcut acest lucru instructabil.
Patrick Geschwindner
Recomandat:
Ceas cu alarmă inteligentă: o ceas cu alarmă inteligentă realizată cu Raspberry Pi: 10 pași (cu imagini)
Ceas cu alarmă inteligentă: o ceas cu alarmă inteligentă realizată cu Raspberry Pi: Ți-ai dorit vreodată un ceas inteligent? Dacă da, aceasta este soluția pentru dvs.! Am creat Smart Alarm Clock, acesta este un ceas pe care îl puteți schimba ora alarmei conform site-ului web. Când alarma se declanșează, se va auzi un sunet (buzzer) și 2 lumini vor
C51 Ceas electronic cu 4 biți - Ceas din lemn: 15 pași (cu imagini)
C51 Ceas electronic cu 4 biți - Ceas din lemn: a avut ceva timp liber în acest weekend, așa că am mers mai departe și am asamblat acest 2,40 USD Ceas digital digital cu 4 biți, pe care l-am cumpărat de la AliExpress acum ceva timp
Crearea unui ceas dintr-un ceas: 11 pași (cu imagini)
Crearea unui ceas dintr-un ceas: în acest instructabil, iau un ceas existent și creez ceea ce simt că este un ceas mai bun. Vom trece de la imaginea din stânga la imaginea din dreapta. Înainte de a începe cu propriul ceas, vă rugăm să știți că reasamblarea poate fi o provocare ca piv
Microdot - Ceas pentru încheietura mâinii Ceas cu model: 7 pași (cu imagini)
Microdot - Ceas pentru încheietura mâinii Ceas cu model: O altă producție RGB Sunset Productions! Acest proiect este o placă de circuite pentru realizarea unei versiuni de dimensiuni de ceas de mână a ceasului meu minidot: https: //www.instructables.com/id/EEGLXQCSKIEP2876EE/cu câteva altele funcții mai aplicabile unui dispozitiv portabil. A
Construiți un ceas cu clopot real pentru computerul dvs. și un ceas cu stingător de incendiu: 3 pași (cu imagini)
Construiți un ceas cu clopot real pentru computerul dvs. și un ceas cu stingător de incendiu. OS X, de asemenea, am decis să instalez Ubuntu Linux pe un computer pe care l-am găsit în coșul de gunoi și să lucrez la asta: nu am avut niciodată