- Būtini komponentai
- Grandinės schema ir paaiškinimas
- PCB dizainas ir gamyba skaitmeniniam laikrodžiui
- Užsakymas PCB naudojant PCBGoGo
- PCB surinkimas
- Skaitmeninio laikrodžio testavimas
Kiekviename skaitmeniniame laikrodyje yra kristalas, leidžiantis sekti laiką. Šis kristalas yra ne tik laikrodyje, bet ir visose skaičiuojamose realaus laiko sistemose. Šis kristalas generuoja laikrodžio impulsus, kurie reikalingi skaičiuojant laiką. Nors yra keletas kitų būdų gauti laikrodžio impulsus didesniam tikslumui ir dažniui, tačiau labiausiai pageidaujamas būdas yra naudoti kristalą laiko sekimui. Čia mes sukursime „DS3231 RTC IC“, kad sukurtume „Atmega16“ pagrindu pagamintą skaitmeninį sieninį laikrodį. DS3231 RTC viduje yra labai tikslus kristalas, todėl nereikia jokio išorinio „Crystal“ osciliatoriaus.
Šiame „ Skaitmeninio laikrodžio projekte“ laikas ir data rodomi naudojant dešimt įprastų 7 segmentų anodo 7 segmentų ekranų. Čia septyni segmentų ekranai naudojami valandai, minutei, datai, mėnesiui ir metams rodyti. Mūsų PCB dizainas taip pat turi galimybes rodyti sekundes ir temperatūrą, kurią galima parodyti pridedant daugiau ekrano vienetų.
Būtini komponentai
- „ATmega16 AVR“ mikrovaldiklis
- DS3231 RTC IC
- Bendras anodo 0,8 colio septynių segmentų ekranas (didesnis nei įprasto dydžio ekranas (0,56 colio)
- Paspauskite mygtuką
- Mygtuko elementas 3v
- 7805 įtampos reguliatorius
- 1000uf kondensatorius
- Buzzer (pasirinktinai)
- Tranzistoriai BC547 ir BC557
- 10uf kondensatorius
- 100 omų rezistorius
- 1k rezistorius
- 10k rezistorius
- PCB plokštė
- Džemperių laidai
- „Burgstips“
- Maitinimo adapteris
Vartotojas taip pat gali naudoti „Atmega32“, prieš generuodamas šešioliktainę, jį reikia sukonfigūruoti kompiliatoriuje.
Grandinės schema ir paaiškinimas
Yra dvi šios skaitmeninės sieninio laikrodžio grandinės dalys, viena yra ekrano dalis, kurioje yra 5 poros 7 segmentų penkiose skirtingose PCB plokštėse, o kita yra valdoma vieneto dalis, atsakinga už laiko paėmimą iš RTC lusto ir tų duomenų bei laiko siuntimą į 7 segmentų ekranas. Kadangi naudojome 10 septynių segmentų ekranų, negalime kiekvieno ekrano sujungti su atskiru IO prievadu. Taigi čia multipleksavimo technika naudojama sujungti kelis septynis segmentus, naudojant mažiau mikrovaldiklio kaiščių.
Šviesos diodų kaiščiai a, b, c, d, e, f, g, h iš septynių segmentų ekrano yra prijungti prie atmega16 lygiagretaus PORTB. Čia mes panaudojome 10 septynių segmentų ekranų, todėl mums reikia 10 valdymo kaiščių, sujungtų PORTD, PORTA ir PORTC.
RTC DS3231 su vidiniu kristalu yra prijungtas prie PORTC SDA ir SCL kaiščio, nes ši mikroschema veikia I2C ryšiu. Šios mikroschemos sąsajos metodas yra toks pats kaip DS1307. Mes naudojome DS1307 su „Arduino“, „Raspberry Pi“ ir 8051 MCU. Tą patį kodą galima naudoti tiek DS3231, tiek DS1307.
Du 10 k traukimo rezistoriai yra prijungti prie SDA ir SCL linijos. 3v monetų elementas naudojamas maitinti RTC lustą, kad būtų galima stebėti laiką net ir tada, kai pagrindinis maitinimo šaltinis yra išjungtas. Kai maitinimas vėl grįš, laikas bus rodomas septynių segmentų ekrane. Dabar mes turime keletą mygtukų, leidžiančių nustatyti laiką PORT A, visas procesas yra paaiškintas pabaigoje pateiktame vaizdo įraše. 5v įtampos reguliatorius naudojamas įėjimo įtampai paversti 5v. Visos jungtys parodytos toliau pateiktoje grandinės schemoje:
Vienai ekrano lentai naudojami du septynių segmentų ekranai ir 2 LED. Taigi čia mes turime penkias skirtingas ekrano lentas, kuriose laikas rodomas valandomis ir minutėmis (HH-MM), o data - DD-MM-YY.
PCB dizainas ir gamyba skaitmeniniam laikrodžiui
Šiam „ Atmega16“ pagrindu sukurto sieninio laikrodžio projektui sukūrėme dvi PCB. Vienas skirtas valdymo blokui, kuris naudojamas valdyti visas projekto operacijas, o antroji dalis skirta laiko ir datos rodymui septyniuose segmentų ekranuose. Ekrano dalyje yra penkios poros po 0,8 colio septynių segmentų ekraną. Taigi surinkdami 5 vienetus turime visą skaitmeninį laikrodį. Norėdami kaupti 7 segmentų ekranus, 5 PCB duomenų linija bus prijungta prie to paties valdymo bloko prievado, o valdymo linija bus sujungta su skirtingu valdymo bloko kaiščiu.
Žemiau pateikiami viršutiniai ir apatiniai vienos ekrano plokštės, kurią sudaro du septyni segmentų ekranai , PCB išdėstymo vaizdai:
Žemiau pateikiami viršutiniai ir apatiniai valdymo bloko PCB vaizdai
Čia pridedame abiejų lentų „Gerber“ failą:
- „Gerber“ failas, skirtas „Atmega16“ pagrindiniam valdymo blokui
- Gerber failas septynių segmentų ekranui
Užsakymas PCB naudojant PCBGoGo
Yra daugybė PCB gamybos paslaugų, kurias galima rasti internete, tačiau kadangi anksčiau naudoju PCBGoGo viename iš savo kitų projektų, man pasirodė, kad jis yra pigus ir be rūpesčių, palyginti su kitais pardavėjais.
Čia pateikiami veiksmai, kaip užsisakyti PCB iš „PCBGoGo“:
1 žingsnis: Eikite į www.pcbgogo.com, užsiregistruokite, jei tai jūsų pirmas kartas. Tada skirtuke PCB Prototype įveskite savo PCB matmenis, sluoksnių skaičių ir reikalingą PCB skaičių.
2 žingsnis: tęskite spustelėdami mygtuką „ Pasiūlyti dabar “. Būsite nukreipti į puslapį, kuriame prireikus nustatysite keletą papildomų parametrų, pvz., Naudojamos medžiagos takų tarpai ir pan. Tačiau dažniausiai numatytosios vertės veiks gerai. Vienintelis dalykas, į kurį turime atsižvelgti, yra kaina ir laikas. Kaip matote, pastatymo laikas yra tik 2-3 dienos, o mūsų PSB jis kainuoja tik 5 USD. Tada galite pasirinkti pageidaujamą pristatymo būdą pagal savo reikalavimus.
3 žingsnis: Paskutinis žingsnis yra įkelti „Gerber“ failą ir tęsti mokėjimą. Norėdami įsitikinti, kad procesas vyksta sklandžiai, prieš tęsdamas mokėjimą, PCBGOGO patikrina, ar jūsų „Gerber“ failas galioja. Tokiu būdu galite būti tikri, kad jūsų PCB yra draugiškas gamybai ir pasieks jus kaip įsipareigojusį.
Dabar „PCBGoGo“ užtruks maždaug nuo 10 minučių iki 1 valandos, kol peržiūrėsite „Gerber“ failą. Baigę peržiūrą, galite tęsti mokėjimą.
PCB surinkimas
Užsakius lentą, ji mane pasiekė po kelių dienų, nors kurjeris tvarkingai paženklintoje, gerai supakuotoje dėžutėje ir kaip visada PCB kokybė buvo nuostabi. Dalinuosi keliomis lentų nuotraukomis žemiau, kad galėtumėte įvertinti.
Aš įjungiau litavimo strypą ir pradėjau montuoti lentą. Kadangi pėdsakai, įklotai, vijokliai ir šilkografija yra tinkamos formos ir dydžio, neturėjau jokių problemų surenkant lentą. Lenta buvo paruošta per 10 minučių nuo dėžutės išpakavimo.
Žemiau parodytos kelios lentos nuotraukos po litavimo.
Skaitmeninio laikrodžio testavimas
Pilnas kodas pateikiamas šios instrukcijos pabaigoje, tiesiog prijunkite PCB, kaip parodyta grandinės schemoje, ir įkelkite kodą į „Atmega16“. Dešimt septynių segmentų ekranuose matysite laiką ir datą.
Laiką ir datą galima nustatyti naudojant valdymo bloko keturis mygtuko mygtukus, kaip parodyta toliau pateiktame vaizdo įraše.