- Tarvittavat komponentit
- Piirikaavio ja selitys
- Piirilevyjen suunnittelu ja valmistus digitaalikellolle
- Piirilevyn tilaaminen PCBGoGon avulla
- Piirilevyn kokoaminen
- Digitaalisen kellon testaaminen
Jokaisessa digitaalisessa kellossa on kristalli ajan seuraamiseksi. Tätä kideä ei ole vain kellossa, vaan se on läsnä myös kaikissa laskevissa reaaliaikaisissa järjestelmissä. Tämä kide tuottaa kellopulsseja, joita tarvitaan ajoituslaskelmiin. Vaikka on olemassa joitain muita tapoja saada kellopulsseja paremmaksi tarkkuudeksi ja taajuudeksi, mutta edullisin tapa on käyttää kristallia ajan seuraamiseen. Täällä rakennamme DS3231 RTC IC: n rakentamaan Atmega16-pohjaisen digitaalisen seinäkellon. DS3231 RTC: ssä on erittäin tarkka kide, joten ulkoista kideoskillaattoria ei tarvita.
Tässä digitaalikelloprojektissa kymmenen tavallista 0,8 tuuman 7-segmenttistä anodinäyttöä käytetään ajan ja päivämäärän näyttämiseen. Tässä seitsemää segmenttinäyttöä käytetään tunnin, minuutin, päivämäärän, kuukauden ja vuoden näyttämiseen. Piirilevymallissamme on myös vaihtoehtoja sekuntien ja lämpötilan näyttämiseksi, jotka voidaan näyttää lisäämällä lisää näyttöyksiköitä.
Tarvittavat komponentit
- ATmega16 AVR-mikrokontrolleri
- DS3231 RTC -piiri
- Yhteisen anodin 0,8 tuuman seitsemän segmentin näyttö (sen suurempi kuin yhteisen koon näyttö (0,56 tuumaa)
- Paina nappia
- Napin solu 3v
- 7805-jännitesäädin
- 1000uf kondensaattori
- Summeri (valinnainen)
- Transistorit BC547 ja BC557
- 10uf kondensaattori
- 100 ohmin vastus
- 1k vastus
- 10k vastus
- Piirilevy
- Hyppääjän johdot
- Burgstips
- Virtalähde
Käyttäjä voi myös käyttää Atmega32: ää, se on määritettävä kääntäjässä ennen heksadesimaalin luomista.
Piirikaavio ja selitys
Tässä digitaalisessa seinäkellopiirissä on kaksi osaa, yksi on näyttöosa, jossa on 5 paria 7-segmenttiä viidellä eri piirilevyllä ja toinen on ohjattava yksikön osa, joka vastaa ajan noutamisesta RTC-sirulta ja lähettää kyseisen datan ja ajan 7-segmenttinen näyttö. Koska olemme käyttäneet 10 seitsemän segmenttinäyttöä, emme voi yhdistää kutakin näyttöä erilliseen IO-porttiin. Joten tässä multipleksointitekniikkaa käytetään yhdistämään useita seitsemää segmenttiä käyttämällä vähemmän mikro-ohjaimen nastoja.
LED-nastat a, b, c, d, e, f, g, h seitsemästä segmenttinäytöstä on kytketty atmega16-porttiin rinnakkain. Tässä olemme käyttäneet 10 seitsemän segmenttinäyttöä, joten tarvitsemme 10 ohjaintappia, jotka on kytketty PORTD, PORTA ja PORTC.
Sisäisen kristallin omaava RTC DS3231 on kytketty PORTC: n SDA- ja SCL-nastaan, koska tämä siru toimii I2C-viestinnässä. Tämän sirun liitäntämenetelmä on sama kuin DS1307. Olemme käyttäneet DS1307: tä Arduinon, Raspberry Pi: n ja 8051 MCU: n kanssa. Samaa koodia voidaan käyttää sekä DS3231: lle että DS1307: lle.
Kaksi 10 k: n vetovastusta on kytketty SDA- ja SCL-linjoihin. 3 V: n kolikkokennoa käytetään RTC-sirun virran seurantaan, vaikka päävirtalähde olisi pois päältä. Aina kun virta palaa takaisin, aika alkaa näkyä seitsemän segmentin näytöllä. Nyt meillä on joitain painikkeita ajan asettamiseksi PORT A: ssa, täydellinen prosessi selitetään lopussa olevassa videossa. 5 V: n jännitesäädintä käytetään tulojännitteen muuntamiseen 5 V: ksi. Kaikki liitännät on esitetty alla olevassa kytkentäkaaviossa:
Yhdelle näyttölevylle käytetään kahta seitsemää segmenttinäyttöä ja kahta LEDiä. Joten tässä meillä on viisi erilaista näyttötaulua, jotka näyttävät kellonajan tunteina ja minuutteina (HH-MM) ja päivämäärät PP-MM-YY.
Piirilevyjen suunnittelu ja valmistus digitaalikellolle
Tätä Atmega16-pohjaista seinakelloprojektia varten olemme suunnitelleet kaksi piirilevyä. Yksi on ohjausyksikölle, jota käytetään projektin kaikkien toimintojen ohjaamiseen, ja toinen osa on kellonajan ja päivämäärän näyttämiseen seitsemällä segmenttinäytöllä. Näyttöosa sisältää viisi paria 0,8 tuuman seitsemän segmentin näyttöä. Joten kokoamalla 5 kappaletta meillä on täydellinen digitaalikello. Multipleksoitaviin 7-segmenttinäyttöihin viiden piirilevyn datalinja kytketään samaan ohjausyksikön porttiin ja ohjauslinja on kytketty ohjausyksikön eri tapiin.
Alla on ylä- ja alareunan piirilevyasettelut yhdestä näyttötaulusta, joka koostuu kahdesta seitsemästä segmenttinäytöstä:
Alla on ohjausyksikön piirilevyjen ylhäältä ja alhaalta katsottavat näkymät
Tässä on liitetty Gerber-tiedosto molemmille levyille:
- Gerber-tiedosto Atmega16-pohjaiseen ohjausyksikköön
- Gerber-tiedosto Seven Segment Display -taululle
Piirilevyn tilaaminen PCBGoGon avulla
On olemassa monia piirilevyjen valmistuspalveluita, jotka ovat saatavilla verkossa, mutta kun käytin PCBGoGoa aiemmin yhdessä muissa projekteissani, löysin sen halpana ja vaivattomana verrattuna muihin toimittajiin.
Tässä ovat vaiheet tilaamaan piirilevy PCBGoGolta:
Vaihe 1: Mene osoitteeseen www.pcbgogo.com, rekisteröidy, jos olet ensimmäinen kerta. Syötä sitten piirilevyn prototyyppi -välilehdelle piirilevyn mitat, kerrosten määrä ja tarvitsemasi piirilevyn määrä.
Vaihe 2: Jatka napsauttamalla Lainaa nyt -painiketta. Sinut siirretään sivulle, jossa voit asettaa muutamia lisäparametreja tarvittaessa, kuten käytetyn raidan etäisyys jne. Mutta useimmiten oletusarvot toimivat hyvin. Ainoa asia, joka meidän on otettava huomioon tässä, on hinta ja aika. Kuten näette, rakennusaika on vain 2-3 päivää ja se maksaa vain 5 dollaria PSB: lle. Voit sitten valita haluamasi toimitustavan vaatimuksesi perusteella.
Vaihe 3: Viimeinen vaihe on lähettää Gerber-tiedosto ja jatkaa maksua. Varmistaaksesi prosessin sujuvuuden, PCBGOGO tarkistaa ennen maksun suorittamista, onko Gerber-tiedostosi kelvollinen. Näin voit olla varma, että piirilevysi on valmistusystävällinen ja tavoittaa sinut sitoutuneena.
Nyt PCBGoGo vie jonkin aikaa noin 10 minuutista 1 tuntiin Gerber-tiedostosi tarkistamiseksi. Tarkistuksen jälkeen voit jatkaa maksua.
Piirilevyn kokoaminen
Kun levy oli tilattu, se saapui minuun muutaman päivän kuluttua, vaikka kuriiri oli siististi merkittyssä hyvin pakatussa laatikossa ja kuten aina piirilevyn laatu oli mahtava. Jaan muutaman kuvan alla olevista taulukoista, jotta voit arvioida.
Kytkin juottotangon päälle ja aloin koota levyä. Koska jalanjäljet, tyynyt, läpiviennit ja silkkipaino ovat täydellisesti oikean muotoisia ja kokoisia, minulla ei ollut mitään ongelmia levyn kokoamisessa. Lauta oli valmis vain 10 minuutissa laatikon purkamisesta.
Muutama kuva taulusta juottamisen jälkeen on esitetty alla.
Digitaalisen kellon testaaminen
Täydellinen koodi on tämän opetusohjelman lopussa, kytke vain piirilevyt piirikaavion mukaisesti ja lataa koodi Atmega16: een. Ja näet kellonajan ja päivämäärän ilmestyvän kymmenen seitsemän segmentin näyttöön.
Aika ja päivämäärä voidaan asettaa ohjausyksikön neljällä painikkeella alla olevan videon mukaisesti.