Sisällysluettelo:

LCD DATE/CLOCK Unohda RTC: 9 vaihetta
LCD DATE/CLOCK Unohda RTC: 9 vaihetta

Video: LCD DATE/CLOCK Unohda RTC: 9 vaihetta

Video: LCD DATE/CLOCK Unohda RTC: 9 vaihetta
Video: LDmicro 11: Serial LCD Temperature Controller (Microcontroller PLC Ladder Programming with LDmicro) 2024, Marraskuu
Anonim
LCD DATE/CLOCK Unohda RTC
LCD DATE/CLOCK Unohda RTC

NIST 2010 kvanttilogiikkakello, joka perustuu yhteen alumiini -ioniin.

Vuonna 2010 kokeessa asetettiin kaksi alumiini-ionikvanttikelloa lähelle toisiaan, mutta toinen kohotettuna 12 tuumaa (30,5 cm) ensimmäiseen verrattuna, jolloin gravitaatioajan laajenemisvaikutus näkyi jokapäiväisissä laboratorioasteikoissa. Näin oikaistaan Einsteinin painovoimateoriat. Kellot käännettiin paikoilleen ja osoittivat saman ajan poikkeamia. NIST-tutkijatohtori James Chin-wen Chou, jolla on maailman tarkin kello, joka perustuu yhden alumiini-ionin (sähköisesti varautuneen atomin) värähtelyihin. Ioni on loukussa metallisylinterin sisällä (keskellä oikealla). Hän sanoo "pois 1 sekunnilla 3,7 miljardissa vuodessa" … odota ja katso!

SUPER DUPER WOW.

Joten käyttämällä kvanttivärähtelyjä, jotka ovat todella nopeita, luulet, että nopeampi on parempi. Unosin 328 -siru on nopeaa 16 MHz: n taajuudella. Se on paljon nopeampi kuin tyypillinen kellokristalli, joka on 32,768 kHz. Se on 500 kertaa nopeampi! Ja 328: ssa on lämpötila -anturi kellon kompensoimiseksi.

Miksei 328 -ulostulo voi muotoilla kellokristallia?

Vaihe 1: MITÄ ODOTTAA

MITÄ ODOTTAA
MITÄ ODOTTAA

Tämä on toinen yritykseni tehdä kello VAIN 328 -sirun avulla. Jokainen 328 toimii eri aikoina, vaikka niissä on 16 MHz: n kide. Joten saat huonoja tuloksia vain laskemalla millis (). Joka toimii 1000 Hz: n taajuudella. Tämä tekee yhden millin (1) keskiarvosta noin +- 3,6 sekunnin tarkan. Arduinon myllyt () eivät laske fraktiomyllyjä tai käytä kellukkeita. Tämä tekee myllyn osien laskemisen mahdottomaksi. Joten Arduino micros (): n käyttäminen on seuraava vaihtoehto. Mutta micros (): n käyttö loppuu vain 71 minuutissa. (tämä ei todellakaan ole ongelma). Minun ongelmani on käsitellä suuria lukuja ja tehdä toistuvia säätöjä gps -kellonajan perusteella. Toinen vaihtoehto on keskeytys. Tämä laskee sekunnit riippumatta siitä, missä koodi kulkee silmukan sisällä. Tämä tekee 328: sta yhtä hyvän kuin RTC. Vaikka "micros ()": n täplät otettaisiin huomioon, +- 4 uS, tämä toimii 250 kHz: n kellonaikana. Se on 7 kertaa parempi kuin 32,768 kHz.

Joten tässä on Arduinon LCD -kelloni, joka perustuu 16 -bittiseen ajastimeenOne keskeyttää mikrosekuntien avulla. Se ei ole aivan yhtä hyvä kuin alumiini -ionien laskeminen! Mutta se on helppoa ja joillakin kalibroinneilla se voi olla yhtä hyvä kuin RTC. Olen tehnyt tästä kellosta 3 versiota. Yhdistämisestä tietokoneeseen usb. Seiso yksin 4 painikkeella. GPS: n ulkopuolelle lämpötilan avulla HC12: lla. Tämä opas kattaa kaksi ensimmäistä kelloa, ja kirjoitan toisen "syvällisesti" HC12: lle.

Katso muut ohjeeni HC12 -alueen ongelmista.

Voit odottaa helppoa lcd -kelloa/päivämäärää UNO: n ja 16x2 lcd: n avulla. Tein joitakin mukautettuja numeroita lcd: lle. "SUURET numerot" -kirjasto vie 3 tilaa, minun vain 1. 4 -painikkeessa on sisäinen vedin ylös, joten rakentaminen on helppoa. Minulla on kotelo tätä varten ja 2 lcd ja selkä.

Pikkukaupungini julkisessa kirjastossa on 3D -tulostin, jota kuka tahansa voi käyttää. Joten tutustu lähellä olevaan kirjastoon lcd -kotelon tekemiseen.

Testit osoittavat -+ sekunti 24-48 tunnin välein. Se on noin minuutin tauko kahdessa kuukaudessa. Kolme tai neljä säätöä asettavat kellopisteen päälle. Vain pois päältä noin 12 sekuntia ennen KUUKAUSTA. Toistuvat yritykset "kalibroida" saumat vain jahtaamaan numeroita. Yksi BAD -ominaisuus käyttää MITÄ tahansa "valikkoa" palauttaa sekunnit arvoon 00. Tämä muuttaa kellonajan. Jätin 60 sekunnin aikakatkaisun painikkeen painamiselle, jotta synkronointi toisen kellon kanssa olisi mahdollista.

Vaihe 2: MUTTERIT JA PULTIT

MUTTERIT JA PULTIT
MUTTERIT JA PULTIT
MUTTERIT JA PULTIT
MUTTERIT JA PULTIT
MUTTERIT JA PULTIT
MUTTERIT JA PULTIT
MUTTERIT JA PULTIT
MUTTERIT JA PULTIT

Tämä projekti on STAND ALONE -kello ilman RTC: tä, vain uno ja lcd. Neljä painiketta mahdollistavat kellonajan/päivämäärän asettamisen, aikavyöhykkeen säätämisen ja kalibroinnin.

3D -tulostintiedostoissa on yksi ja kaksi lcd -koteloa muille projekteille.

LCD -näytössä on isoja numeroita, jotka vievät vain yhden tilan leveyden. Tämän tekeminen kesti melko kauan

Kotelossa on 8 reikää painikkeita varten muihin projekteihin.

Liitä vain 5 V: n seinäsyöpä virran saamiseksi.

Tarkista paikallisesta kirjastosta, onko käytössä 3D -tulostin !!

Vaihe 3: TIETOJA RAKENTESTA

TIETOJA RAKENTESTA
TIETOJA RAKENTESTA
TIETOJA RAKENTESTA
TIETOJA RAKENTESTA
TIETOJA RAKENTESTA
TIETOJA RAKENTESTA

Kaikkien Arduino -levyjen, joissa on MEGA 328 mikrot, pitäisi toimia. Se tarvitsee 16 MHz: n kristallin ja sen on toimittava tällä nopeudella. 3,3 voltin taajuus 8 MHz ei välttämättä toimi keskeytyksen ajoituksen kanssa. Kotelokoteloon pro-mini sopii parhaiten, mutta voit puristaa nanon sisään, mutta USB-kaapeli voi olla ongelma. Tämä on erittäin suosittu Hitachi 16x2 lcd. Jotkut cheepit ovat DULL ja vain heikkoja. Reunaliitin tarvitaan sopimaan suosittuun I2c -muunninmoduuliin. Unoon kytkemiseen tarvitaan vain 4 johtoa. On olemassa monia opetusohjelmia, jotka osoittavat, kuinka kytkeä lcd ilman muunninmoduulia, jos et halua sitä. Sinun ei tarvitse tehdä kelloa ilman painiketta.

LCD -näytössä on BIG NUMBER mukautettua merkkiä. Suuret numerot vievät vain yhden leveyden.

Vaihe 4: 4 PAINIKETTA JA KOTELO

4 PAINIKETTA JA KOTELO
4 PAINIKETTA JA KOTELO
4 PAINIKETTA JA KOTELO
4 PAINIKETTA JA KOTELO
4 PAINIKETTA JA KOTELO
4 PAINIKETTA JA KOTELO

Sama kuin edellä, mutta lisää 4 kytkintä. Kotelon sovittamiseen käytetään tavallista 2 tuuman x 2,5 tuuman PC -levyä. Leikkaa vain puoliksi ja asenna kytkimet niin, että jalat menevät vasemmalta oikealle. Jos laitat kytkimet jalat ylös, reiät eivät ole linjassa kotelossa. Testaa, että ne ovat linjassa kotelon reikien kanssa ENNEN juottamista. Maadoita alajalat (kaikki) ja vedä jokainen yläjalka unon tappiin. Katso oheinen kaavio. Jos tulostat kotelon 3D -muodossa, painikeosa on liimataan LCD -koteloon. Se EI napsahdu sisään kuten takaosa. Kaikki pienet itsekierteittävät ruuvit pitävät lcd: n paikallaan. Liian iso ja rikkoo kotelon. Kuuma liimapuikko voi olla paras. Ennen lcd: n asentamista… tummenna led -alue mustalla teipillä. Muuten se loistaa kotelon läpi. Käytän 2 sivuvaahtoteippiä 2 kerroksessa pro minin kiinnittämiseen. Tämä nauha on edullinen "dollaripuukaupoissa". Käytän kiinteää päällystettyä magneettilankaa noin 26 gauge. Minulla on loistavat ohjeet "köyhän miehen juotospottiin" tämän langan käyttämiseksi kytkennöissä.

Vaihe 5: LCD -näyttö

LCD -näyttö
LCD -näyttö
LCD -näyttö
LCD -näyttö
LCD -näyttö
LCD -näyttö

lcd ongelmia

Kun olet valmis, lataa ja asenna luonnos. LCD -näyttö ei ehkä sytytä näyttöä. Tässä muutamia vinkkejä. LCD -ledin pitäisi syttyä ja tehdä näytöstä sinertävä. Jos lediä ei ole, tarkista vastustappia vastapäätä olevat hyppytapit. Tämä vaatii hyppyjohtimen tai 150 ohmin vastuksen. Sininen kattila on aina ongelma. Käännä pannua, kunnes näytössä näkyy 2 ruutua. Sitten taaksepäin, kunnes neliöt häviävät tuskin. Jos näyttö ei vieläkään näy, tarkista SDA- ja SCL -liitännät. Liian helppo saada ne taaksepäin. Se on A4 SDA: lle ja A5 SCL: lle. Nämä ovat A -nastoja, ei D -tappeja, ja joissakin pro minissa nämä nastat ovat tietokoneen sisällä, eivät reunoissa. Viimeinen vaihtoehto on tarkistaa osoite. Joillakin lcd -muunninmoduuleilla on eri osoitteet. Tai jos käytät useampaa kuin yhtä laitetta, kaikki tarvitsevat eri osoitteet. Useimmissa moduuleissa on 3 juotosnappia 3 eri osoitteen asettamiseksi. Muista, että I2c käyttää vain 2 johtoa mihin tahansa ja KAIKKIIN laitteisiin. Joten jokaisella laitteella on oltava yksilöllinen osoite. Mukana on I2c -osoiteskanneri. Lataa skannerin asennus ja lue sarjamonitori. Näytössä näkyy MITÄ tahansa I2c -laitteen osoite. Tarkista kellon luonnos luonnoksen yläreunassa olevasta viivasta. '' LiquidCrystal_I2C lcd (0x3F, 16, 2); '0x3F on oikea osoite muuntimelleni. Jos osoitteesi on erilainen, vaihda skannerista oikeaan osoitteeseen. Varoitus: kopioi ja liitä uusi osoite joskus rivin lopun tai vaunun palautuksiin. Kirjoita vain TYPE toiseen osoitteeseen. Ensimmäiset kirjaimet ovat aina nolla ja pieni kirjain x 0x. Tämä kertoo C ++: lle, että se on heksadesimaali. 0x: n jälkeen mikä tahansa kirjain on iso kirjain.

Vaihe 6: KOUKKUT

KOUKKUT
KOUKKUT
KOUKKUT
KOUKKUT
KOUKKUT
KOUKKUT

noudata kaaviota ja kytke laite johtoon.

Vaihe 7: MUUT KUVAT

MUUT KUVAT
MUUT KUVAT
MUUT KUVAT
MUUT KUVAT
MUUT KUVAT
MUUT KUVAT

onnea KATSO muut ohjeistani

Vaihe 8: LUONNOS

ohjeet eivät salli minun ladata Arduino -tiedostoa !!!! käytin siis tekstiä. Sinun on kopioitava ja liitettävä teksti uuteen arduino -avoimeen tiedostoon IDE: ssä ……. SORRY

ja tekstitiedostot eivät myöskään lataa !!! ja yritin liittää tänne, mutta sekoitin sen !!

vihdoin !!! sain luonnoksen ladattavaksi täältä. 26.3.2020 Korjattu myös pieniä asioita.

Ihmiset, joille maksetaan koodin kirjoittamisesta, pyörivät lattialla, kun he näkevät koodini. Luonnokseni alkavat yleensä yksinkertaisesti. Lisään sitten lisää tekemistä. Joten luonnos kiertyy sotkuksi. Toivottavasti opit kahdesta suurimmasta virheestäni. Alussa on oltava määritelty hahmotelma ja tavoite. Älä lisää tonnia tavaraa koko luonnokseen. Pahin virheeni on käyttää TOIMINTAA väärin. Sen tulee olla lyhyt ja palauttaa summa, ja sitä käytetään vain silloin, kun se korvaa toistuvat koodirivit luonnoksen aikana. delay (100) on hyvä esimerkki.

TOIMINTOani käytän luonnoksen osien erottamista. Tämä jättää päärungon helposti seurattavaksi ja mahdollistaa erillisten osien virheenkorjauksen vain kutsumalla toimintoa. Luulen, että GOTO teki tätä ennen, mutta se on pudonnut suosiosta eikä KOSKAAN totu. Tarpeeksi sanottu. Tarkistin päivämäärät ja ajat mahdollisimman hyvin. Luonnoksen samat osat käyttävät TIME SQUARED -kellojani vuosia. Jos olen unohtanut jotain tai siinä on vika, ilmoita siitä minulle. Ei painikkeiden luonnoksen kalibroimiseksi viiva unsigned long tSec = 1000122; '(rivi 34) muutat. Vakio 277 sekunnissa tunnissa on oikea. Käytännössä teen kuitenkin vain 2-8 muutosta tSec -arvoon. Kellossa 1000122 monet kellot toimivat yhtä hyvin kuin RTC. Ole kärsivällinen ja pieni muutos, vain 2-8, voi olla täydellinen kello. Kummankin kellon muutosten alaspuoli tarkoittaa, että nykyistä aikaa muutetaan. Sinun on vaihdettava oikeaan kellonaikaan/päivämäärään.

//// easy_one_lcd_clock_no_buttons // // arduino ja lcd clock // käytä ajastinta Yksi 16 -bittinen ajastin // kalibroi tämä kello: // käytä hyvän sekunnin kelloa kuten GPS. // käytä tunteja lähtötilanteena. Laske sekunteja // TÄMÄ on pois päältä. Jos TÄMÄ on GPS: n takana // GPS = 00.. TÄMÄ = 58 ALALAITETTA 277 kullekin // sekunnille/tunnille. Joten jos hitaampi 2 sekunnissa // 3 tunnissa… (277 * 2)/3 = 184 // SUBTRACT from tSec. // jos TÄMÄ on edessä GPS = 00… TÄMÄ = 03 // sama matematiikka vain LISÄÄ tSec. // cauction, useimmat kellot ovat oikeassa 00. // 20 s on parempi ajastintarkistus.

Vaihe 9: CASE STL -tiedostot

Tässä ovat 3D -tulostinkotelotiedostot. Näppäimistö on liimattu lcd -koteloon. Takaosa napsahtaa sekä yhden että kahden lcd -kotelon etuosaan. Napsauta yläosa ensin ja työnnä sitten alaspäin saadaksesi hyvän istuvuuden.

TUTUSTU paikalliseen kirjastoon, jos haluat käyttää 3D -tulostinta.

Suositeltava: