Turinys:

7 Segmentinis laikrodis 2 versija: 4 žingsniai
7 Segmentinis laikrodis 2 versija: 4 žingsniai

Video: 7 Segmentinis laikrodis 2 versija: 4 žingsniai

Video: 7 Segmentinis laikrodis 2 versija: 4 žingsniai
Video: CS50 2015 - Week 5 2024, Liepa
Anonim
Image
Image
KAS NAUJO
KAS NAUJO

Sveiki!

Gavęs „Instructables“vartotojo prašymą dėl 12 valandų formato, pasinaudojau esminiais pradinio projekto pakeitimais.

Naudodamas 1 versiją maniau, kad reikia sukurti atskirą versiją, todėl sudarė galimybę pakeisti visus parametrus tiesiogiai iš laikrodžio, nenaudojant kompiuterio.

Jei kas neskaitė mano ankstesnių instrukcijų, tai įprastas 7 segmentų LED laikrodis su kai kuriomis papildomomis funkcijomis:

  1. 7 skirtingi minučių keitimo perėjimai
  2. 3 iš anksto nustatytos spalvos laiko tarpsniams
  3. aplinkos šviesos intensyvumas automatinis pritemdymas
  4. automatinis išjungimas/paleidimas, kai nereikia rodyti laiko
  5. automatinis vasaros laiko reguliavimas

2 versija taip pat leidžia:

  • keisti laiko formatą 12/24 val
  • lengvai keičiami parametrai

Parametrai, kuriuos galima keisti tiesiogiai iš laikrodžio, yra šie:

  • pabudimo/išjungimo laikas
  • spalvos pagal laiko tarpsnius
  • data/laikas
  • laiko formatas 12/24 val

Šie duomenys dabar saugomi „Arduino eeprom“kartu su pasirinktu perėjimo režimu. Kitame žingsnyje taip pat paruošiau trumpo pradžios vadovą.

Rėmas yra atspausdintas 3D, maitinamas „Arduino Nano“, DS3231 ir WS2812 šviesos diodais.

Prekės

  • Arduino nano
  • foto chell
  • 2 x momentinis mygtukas
  • įjungimo/išjungimo jungiklis
  • DC kištukas
  • 5V transformatorius
  • n ° 30 WS2812 šviesos diodų (modelis 30 LED/metras)
  • PCB
  • DS3231 modulis
  • ploni kabeliai, skirti LED jungtims
  • rezistoriai 10K, 550
  • lituoklis
  • klijai
  • džemperiai
  • antraštės vyrai/moterys

1 žingsnis: KAS NAUJA

Kaip jau minėta, nenorėjau prijungti laikrodžio prie kompiuterio kiekvieną kartą, kai norėjau pakeisti parametrus, pridėdamas momentinį mygtuką prie projekto, kurį lengvai pasiekiau. Vienu mygtuku galiu slinkti tarp parinkčių, kitas - patvirtinti duomenis ir pereiti į meniu. Aš taip pat prijungiau fotoelementą prie „Arduino“PIN kodo, o ne +5 V, taigi, kai laikrodis pereina į miego režimą, fotoelementų grandinė neišleidžia energijos. Pagaliau padariau profesionaliau išgraviruoti grandinę ant varinės plokštės.

2 žingsnis: PCB surinkimas

PCB surinkimas
PCB surinkimas
PCB surinkimas
PCB surinkimas
PCB surinkimas
PCB surinkimas

Kad būtų patogiau, pakeičiau kai kuriuos ryšius, žiūrėkite schemą. ĮJUNGIMO/IŠJUNGIMO jungiklis yra neprivalomas, norint patekti į vidinį meniu be to, tiesiog prijunkite +5V laikydami nuspaudę 1 mygtuką.

Atsparumas tarp šviesos diodų ir D5 yra 550 omų, kitas - 10Kohm.

Grandinė yra labai paprasta ir jos nereikia išgraviruoti.

Mano projekte kiekvienam kiekvienam skaitmeniui skirtam segmentui reikia vieno vadovo. Didesniems projektams, pakeitus biblioteką „segment_display.cpp“, galima pridėti daugiau segmentų indikatorių

Norėdami gauti daugiau informacijos apie LED seką ir kitą 1 versijos patikrinimą

3 žingsnis: 3D spausdinimas

3D spausdinimas
3D spausdinimas
3D spausdinimas
3D spausdinimas
3D spausdinimas
3D spausdinimas

Pradėdamas nuo pradinės versijos („Thingverse“vartotojo random1101 dėka), aš pertvarkiau palaikymą, pritaikydamas jį brūkšniniu kodu (tai reiškia ACMECORPORATION, bet brūkšninių kodų skaitytuvas jo neatpažins …. Sob).

Rekomenduojama kiekvieną skaitmenį įklijuoti įdėjus į lizdą.

4 žingsnis: eskizas

Bibliotekos lieka nepakitusios, o pirmą kartą įkėlus ir paleidus eskizą nieko negali atsitikti, nes jis skaito duomenis iš „eeprom“ir tikriausiai jūsų „eeprom“viduje gali būti atsitiktinių verčių. Tada pirmą kartą paleidžiant reikia nustatyti duomenis.

Perėjimo režimas dabar saugomas „eeprom“.

Įvesdami duomenis, griežtai laikykitės laiko formato (faktinis arba 24 val. Žiemos laikas).

Patikrinkite ankstesnę bibliotekos informaciją ir naudojimą.

Rekomenduojamas: