Turinys:

Analoginis skaitmeninis laikrodis: 4 žingsniai (su nuotraukomis)
Analoginis skaitmeninis laikrodis: 4 žingsniai (su nuotraukomis)

Video: Analoginis skaitmeninis laikrodis: 4 žingsniai (su nuotraukomis)

Video: Analoginis skaitmeninis laikrodis: 4 žingsniai (su nuotraukomis)
Video: Orijaus kelionės. 5 sezonas, 2 laida. Uzbekistanas, 2 dalis - Taškentas 2024, Liepa
Anonim
Image
Image
Laikrodžio kūrimas
Laikrodžio kūrimas

Šio laikrodžio gamybos priežastis buvo ta, kad mano originalus IKEA laikrodis nebeveikė ir man labai patiko šio laikrodžio korpusas. Man atrodė veltui išmesti laikrodį ir nusprendžiau jį pakartotinai panaudoti analoginiam / skaitmeniniam laikrodžiui.

Galėjau pagaminti standartinį laikrodį, bet nusprendžiau padaryti kažką kitokio. Kaip ir bet kuris kitas laikrodis, jis rodo laiką, bet ne standartiniu būdu. Naudojant 60 dviejų spalvų raudonų/žalių šviesos diodų, laikrodis rodo laiką. Raudoni šviesos diodai naudojami valandoms rodyti, o žalieji - minutėms. Sekundes rodo geltonas (raudonas + žalias) šviesos diodas ir mirksintis geltonas šviesos diodas laikrodžio centre.

Norint išmokti skaityti laikrodį, reikia šiek tiek praktikos. Kadangi šviesos diodai naudojami tiek valandoms, tiek minutėms rodyti, reikia specialaus laiko pateikimo būdo. Laikas rodomas kaip šviesos diodų juosta, kurioje ilgiausia juosta rodo valandas arba minutes. Jei ilgiausia juosta pateikiama valandomis, tada trumpesnė juosta rodo minutes žaliai, o likusi dalis rodo valandas raudonai. Kad laikrodis būtų lengviau skaitomas tais atvejais, kai juostos yra trumpos, pridėjau valandos indikatorių, naudojant raudoną šviesos diodą. Jei minutės tampa didesnės nei valandos, juostos keičiasi, ty visos ankstesnės žalios minutės tampa raudonos, kad būtų rodomos valandos, o likusi dalis - minutes, taigi beveik visa žalia tampa raudona ir atvirkščiai.

Sunku paaiškinti, kaip tai veikia, todėl žiūrėkite vaizdo įrašą. Dėl šviesos diodų multipleksavimo atrodo, kad vaizdo įraše šviesos diodai mirksi. Tai fiksuoja tik kamera, o ne žmogaus akis.

Kaip visada, aš sukūriau šį projektą aplink savo mėgstamą mikrovaldiklį PIC, naudodamas JAL programavimo kalbą, bet taip pat galite naudoti „Arduino“.

1 žingsnis: dizainas

Iš viso sukūriau tris skirtingas laikrodžio versijas, kol buvau patenkintas. Šios versijos buvo sukurtos taip:

  1. Naudojant standartinį 20 MHz kristalą PIC. Naudojant šią konstrukciją, laikrodis buvo nesinchronizuotas 1 sekundę po vienos darbo dienos. Tai buvo per daug. Be to, laikas buvo prarastas, kai išjungėte laikrodį, nes konstrukcijoje nebuvo atsarginės baterijos.
  2. Naudojant DS1302 laikrodžio modulį. Puikus šio modulio dalykas yra tai, kad jis turi atsarginę bateriją, todėl laikas neprarandamas išjungus laikrodį. Kai išbandžiau laikrodį su šiuo moduliu, laikrodis buvo nesinchronizuotas 7 sekundes! po vienos dienos. Manau, kad tai sukelia netinkamas kristalas arba blogas PCB dizainas.
  3. Naudojant DS3231 laikrodžio modulį. Šis modulis taip pat turi atsarginę bateriją ir yra tikslesnis nei DS1302. Laikrodis puikiai veikė su šiuo moduliu, todėl jį panaudojau galutiniam dizainui. Dėl šios priežasties PIC kristalų nebereikėjo.

Visas dizainas yra sudarytas iš trijų schemų:

  1. Laikrodžio valdiklis naudojant PIC
  2. Vedė vairuotoją, naudodamas pamainų registrus
  3. 60 dviejų spalvų šviesos diodų

2 žingsnis: reikalingi komponentai

Šiame projekte turite turėti šiuos komponentus:

  • Duonos lentos gabalas
  • PIC mikrovaldiklis 16F1823
  • 3 pamainų registras 74HC595
  • 1 Darlingtono tranzistorių masyvas ULN2803A
  • IC lizdai: 1 * 14 kontaktų, 3 * 16 kontaktų, 1 * 18 kontaktų
  • Laikrodžio modulis DS3231
  • 2 mygtukiniai jungikliai
  • Rezistoriai: 2 * 33 k, 8 * 100 omų, 8 * 47 omai
  • 1 elektrolitinis kondensatorius 100 uF/16V
  • 4 kondensatoriai 100 nF
  • Šviesos diodai: 60 2 mm dviejų spalvų (raudona/žalia), 1 5 mm geltona
  • Lizdas 3 mm
  • 5 voltų adapteris, pavyzdžiui, tas, kuris naudojamas įkraunant išmanųjį telefoną. Įsitikinkite, kad tai tikras 5 voltų maitinimo šaltinis.
  • Neprivaloma: antraštės, skirtos išorinėms dalims prijungti prie duonos lentos
  • Kynar vielos ir vielos nuėmėjas
  • Laikrodžio korpusas.

Žiūrėkite schemas, kaip prijungti komponentus. Tam reikia šiek tiek lituoti, ypač norint prijungti 60 šviesos diodų. Scheminės diagramos yra įtrauktos į ZIP failą.

3 žingsnis: laikrodžio kūrimas

Laikrodžio kūrimas
Laikrodžio kūrimas
Laikrodžio kūrimas
Laikrodžio kūrimas

Pažiūrėkite į paveikslėlius, kaip aš kuriu laikrodį. Pradėjau pašalindamas pradinio laikrodžio vidų, po to išgręžiau 60 skylių 2 mm dviejų spalvų šviesos diodams priekinėje plokštėje. Tada aš nudažiau priekinę plokštę juodai ir pridėjau plastiko gabalėlį, kad padengtų skylę, kurioje buvo originalios laikrodžio rodyklės. Dabar toje vietoje yra geltonas šviesos diodas.

Tada sumontavau visus 60 šviesos diodų, naudojau karštus klijus, kad juos laikyčiau savo vietoje, ir sujungiau juos „Kynar“viela. Paskutinis, bet ne mažiau svarbus dalykas - aš surinkiau duonos lentą su visais komponentais.

Ant galinio dangtelio pritvirtinau du mygtukus ir maitinimo lizdą. Pamirškite apie papildomą plokštelę, kurią priklijavau ant nugaros, kaip parodyta paveikslėlyje. Aš pridūriau, kad mano pirmojo dizaino mygtukai buvo ten, bet man reikėjo juos perkelti, nes turėjau pridėti DS3231 modulį ir galėjau rasti tik tą vietą, kur buvo tie mygtukai, kai sukūriau savo pirmąjį dizainą.

4 žingsnis: programinė įranga

Kaip jau minėta, programinė įranga parašyta PIC16F1823, naudojant JAL programavimo kalbą. PIC veikia vidiniu 32 MHz laikrodžiu. Kaip minėta anksčiau, laikrodžio laiką nustato DS3231 laikrodžio modulis.

Programinė įranga atlieka šias pagrindines užduotis:

  • DS3231 modulio inicijavimas naudojant I2C sąsają. Modulis sugeneruos 1 sekundės signalą, kuris bus prijungtas prie PIC pertraukimo kaiščio. PIC naudoja šį 1 sekundės pertrauką, kad nuskaitytų laiką iš DS3231 modulio.
  • 60 dviejų spalvų šviesos diodų valdymas per pamainų registrus. Schemoje matyti, kad šviesos diodai yra sujungti 16x8 matricoje. Tai sumažina laidų, reikalingų prijungti visus šviesos diodus, skaičių. Šis matricos dizainas reikalauja, kad PIC turi multipleksuoti šviesos diodus, kad galėtų juos uždegti atskirai. Šviesos diodų multipleksavimas atliekamas pertraukiant, kai atnaujinimo dažnis yra 70 Hz, todėl žmogaus akiai nematomas.
  • Valdymas mygtukais. Jie naudojami laikui nustatyti, vienas - valandoms, kitas - minutėms. Norint įjungti laiko nustatymo režimą, reikia paspausti abu mygtukus. Pasirinkus laiko nustatymo režimą, geltona lemputė nuolat degs. Po 5 sekundžių, kai nenaudojate mygtukų, laikrodis grįžta į įprastą laiko režimą ir geltonas šviesos diodas pradės mirksėti.

Žiūrėkite antrą vaizdo įrašą, kaip nustatyti laiką.

JAL šaltinio failas ir „Intel Hex“failas PIC programavimui pridedami prie ZIP failo. Jei jus domina PIC mikrovaldiklio naudojimas su JAL - Paskalio tipo programavimo kalba - apsilankykite JAL svetainėje.

Smagiai kurkite savo projektą ir laukite jūsų reakcijos.

Rekomenduojamas: