Talaan ng mga Nilalaman:

LCD DATE / CLOCK Kalimutan ang RTC: 9 Mga Hakbang
LCD DATE / CLOCK Kalimutan ang RTC: 9 Mga Hakbang

Video: LCD DATE / CLOCK Kalimutan ang RTC: 9 Mga Hakbang

Video: LCD DATE / CLOCK Kalimutan ang RTC: 9 Mga Hakbang
Video: Lesson 19: Using LCD Screen with Arduino LCD1602 LCD2004 | Arduino Step By Step Course 2024, Nobyembre
Anonim
LCD DATE / CLOCK Kalimutan ang RTC
LCD DATE / CLOCK Kalimutan ang RTC

Isang NIST 2010 na orasan ng kabuuan ng lohika batay sa isang solong aluminyo ion.

Noong 2010 ang isang eksperimento ay naglagay ng dalawang aluminyo-ion na mga quantum na orasan na malapit sa bawat isa, ngunit sa pangalawa ay nakataas ang 12 sa (30.5 cm) kumpara sa una, na ginagawang nakikita ang pang-gravitational na epekto ng pagluwang ng oras sa pang-araw-araw na mga antas ng lab. Sa gayon ay pinagsasabihan ang mga teoryang gravity ni Einstein. Ang mga orasan ay nabaligtad sa mga posisyon at ipinakita ang parehong oras na offset. Ang mananaliksik na taga-postdoctoral ng NIST na si James Chin-wen Chou sa mga pinaka-tumpak na orasan sa mundo, batay sa mga panginginig ng isang solong aluminyo ion (electronics na singil na atom). Ang ion ay nakulong sa loob ng silindro ng metal (kanan sa gitna). Sinabi niya na 'off ng 1 sec sa 3.7 Bilyong taon' … hinihintay at makita!

SUPER DUPER WOW.

Kaya sa pamamagitan ng paggamit ng mga pang-vibration ng kabuuan na kung saan ay talagang mabilis, sa tingin mo mas mabilis ang mas mahusay. Ang 328 chip sa Unos ay mabilis na malayo sa 16mhz. Iyon ay mas mabilis kaysa sa karaniwang orasan (relo) na kristal na 32.768 khz. Iyon ay 500 beses na mas mabilis! At ang 328 ay may sensor ng temperatura upang mabayaran ang orasan.

Kaya't bakit hindi magawa ng 328 out ang isang cheep relo na kristal?

Hakbang 1: ANO ANG AASAHIN

ANONG AASAHIN
ANONG AASAHIN

Ito ang aking pangalawang pagtatangka na gumawa ng isang orasan gamit LAMANG ang 328 chip. Ang bawat 328 ay tumatakbo sa iba't ibang oras kahit na mayroon silang isang 16mhz na kristal. Kaya makakakuha ka ng hindi magandang mga resulta sa pagbibilang lamang ng millis (). Na tumatakbo sa 1, 000 hz. Ginagawa nitong tumpak ang ONE millis (1) na halos + - 3.6 segundo bawat oras na tumpak. Ang mga galingan ng Arduino () ay hindi binibilang ang mga factional mill o gumagamit ng float. Ginagawa nitong imposible ang pagbibilang ng mga praksiyon ng isang galingan. Kaya ang paggamit ng Arduino micros () ang susunod na pagpipilian. Ngunit ang paggamit ng micros () ay maubusan sa loob lamang ng 71 minuto. (ito talaga ay HINDI isang problema). Ang problema para sa akin ay pagharap sa maraming mga numero at paggawa ng paulit-ulit na mga pagsasaayos batay sa oras ng orasan na gps. Ang isa pang pagpipilian ay isang nakakagambala. Binibilang nito ang mga segundo hindi mahalaga kung saan tumatakbo ang code sa loob ng loop. Ginagawa nitong mabuti ang 328 bilang isang RTC. Kahit na ang mga specks ng 'micros ()' ay isinasaalang-alang, sa + - 4 uS, gumagana ito upang maging isang 250khz na orasan. Iyon ay 7 beses na mas mahusay kaysa sa 32.768khz.

Kaya narito ang aking Arduino lcd na orasan batay sa isang 16bit timerOne ay nakakagambala gamit ang mga microsecond. Hindi ito kasing ganda ng pagbibilang ng mga ion ng aluminyo! Ngunit ito ay madali at sa ilang mga calibration maaari itong maging kasing ganda ng isang RTC. Gumawa ako ng 3 mga bersyon ng orasan na ito. Mula sa kumonekta sa computer usb. Upang tumayo nang nag-iisa na may 4 na mga pindutan. Sa labas ng gps na may temperatura gamit ang isang HC12. Ang itinuturo na ito ay sasakupin ang unang 2 orasan at magsusulat ako ng isa pang 'malalim' para sa HC12.

Tingnan ang aking iba pang maituturo sa mga problema sa saklaw ng HC12.

Ang maaasahan mo ay isang madaling lcd na orasan / petsa gamit ang UNO at isang 16x2 lcd. Gumawa ako ng ilang mga pasadyang numero para sa lcd. Ang library ng 'MALAKING numero' ay tumatagal ng 3 mga puwang, ang akin lang 1. Ang 4 na pindutan ay may panloob na hilahin hanggang sa madali ang pagbuo. Mayroon akong isang kaso para sa ito at isang 2 lcd at likod.

Ang pampublikong silid-aklatan dito sa aking maliit na bayan ay may isang 3d printer na maaaring gamitin ng sinuman. Kaya suriin ang isang silid-aklatan na malapit sa iyo para sa paggawa ng kaso ng lcd.

Ipinapakita ang aking mga pagsubok - + segundo bawat 24-48 na oras. Iyon ay halos isang minutong pahinga sa loob ng dalawang buwan. Tatlo o apat na pagsasaayos ang inilalagay ang spot ng orasan. Lamang off ng tungkol sa 12 segundo pre MONTH. Paulit-ulit na mga pagtatangka upang 'i-calibrate' ang mga seam upang maging habol lamang ng mga numero. Ang tampok na BAD na gumagamit ng ANUMANG 'menu' ay nagre-reset ng mga segundo hanggang 00. Binabago nito ang kasalukuyang oras. Iniwan ko ang isang 60sec timeout para sa pindutan ng pindutan upang payagan ang pag-synk sa isa pang orasan.

Hakbang 2: ANG NUTS AT BOLTS

ANG NUTS AT BOLTS
ANG NUTS AT BOLTS
ANG NUTS AT BOLTS
ANG NUTS AT BOLTS
ANG NUTS AT BOLTS
ANG NUTS AT BOLTS
ANG NUTS AT BOLTS
ANG NUTS AT BOLTS

Ang proyektong ito ay isang STAND ALONE na orasan nang walang RTC isang uno at lcd lamang. Pinapayagan ng 4 na mga pindutan ang takdang oras / petsa at ayusin ang time zone at i-calibrate.

Ang mga file ng 3d printer ay mayroong isang at dalawang case na lcd para sa iba pang mga proyekto.

Ang lcd ay may BIG NOMBERS na tumatagal lamang ng ISANG puwang ang lapad. Medyo natagalan ako

Ang kaso ay may 8 butas para sa mga pindutan para sa iba pang mga proyekto.

Ikonekta lamang ang isang 5v wall wart para sa lakas.

Suriin ang iyong lokal na LIBRARY para sa paggamit ng isang 3d printer !!

Hakbang 3: TUNGKOL SA BUILD

TUNGKOL SA BUILD
TUNGKOL SA BUILD
TUNGKOL SA BUILD
TUNGKOL SA BUILD
TUNGKOL SA BUILD
TUNGKOL SA BUILD

Anumang mga Arduino board na may MEGA 328 micros ay dapat na gumana. Kailangan nito ng 16mhz na kristal at dapat na tumatakbo sa bilis na iyon. Ang isang 3.3 volt sa 8mhz ay maaaring hindi gumana sa nakakagambalang oras. Para sa kaso ng enclosure isang pinakamahusay na akma ang pro-mini ngunit maaari mong pisilin ang isang nano ngunit ang usb cable ay maaaring isang problema. Ito ay isang Hitachi 16x2 lcd, napakapopular. Ang ilang mga cheep ay DULO at nahimatay lamang. Ang isang gilid na konektor ay kinakailangan upang magkasya sa isang tanyag na module ng converter ng I2c. 4 na wires lamang ang kinakailangan upang mai-hook sa uno. Maraming mga tutorial upang maipakita kung paano i-hook up ang lcd nang walang converter module kung hindi mo nais ang isa. Para sa orasan ng walang pindutan na ang ginagawa mo lang.

Ang Lcd ay may isang BIG NOMBER pasadyang char. Ang mga malalaking numero ay kukuha lamang ng ISANG lapad.

Hakbang 4: 4 BUTTON at KASO

4 BUTTONS at KASO
4 BUTTONS at KASO
4 BUTTONS at KASO
4 BUTTONS at KASO
4 BUTTONS at KASO
4 BUTTONS at KASO

Kapareho ng nasa itaas ngunit idagdag ang 4 na switch. Ang isang karaniwang pc board 2inch x 2.5 inch ay ginagamit upang magkasya ang kaso. Gupitin lamang ang kalahati at i-install ang mga switch upang ang mga binti ay kumaliwa sa kanan. Kung inilagay mo ang mga switch na may mga binti pataas ang mga butas ay hindi pumila sa kaso. Subukan na pumila sila sa mga butas ng kaso BAGO maghinang. Ibaba ang mga ibabang binti (lahat) at patakbuhin ang bawat tuktok na binti sa isang pin sa uno. Tingnan ang nakapaloob na eskematiko. Kung 3d mong nai-print ang kaso, ang bahagi ng pindutan ay kailangang i-GLUED sa kaso ng lcd. Hindi ito snap tulad ng ginagawa ng likod. Ang anumang maliliit na turnilyo ng self taping ay hahawak sa lcd sa lugar. SOBRANG malaki at sisikapin mo ang kaso. Ang hot stick ng pandikit ay maaaring ang pinakamahusay. Bago i-mount ang lcd … itim ang pinangunahang lugar gamit ang black tape. Kung hindi man ay ito ay lumiwanag sa kaso. Gumagamit ako ng 2 gilid foam tape sa 2 mga layer para sa pag-mount ang pro mini. Ang tape na ito ay isang bargain sa 'dolyar na mga tindahan ng puno'. Gumagamit ako ng solidong pinahiran na magnet wire na tungkol sa 26 gauge. Mayroon akong mahusay na itinuturo sa 'isang mahirap na solder pot' para sa paggamit ng wire na ito sa mga hookup.

Hakbang 5: ANG LCD

ANG LCD
ANG LCD
ANG LCD
ANG LCD
ANG LCD
ANG LCD

lcd mga problema

Kapag natapos na sa pagbuo, i-download at i-install ang sketch. Maaaring hindi masindihan ng lcd ang display. Narito ang ilang mga tip. Ang lcd 'led' ay dapat na naiilawan at gawing bluish ang screen. Kung walang pinangunahan suriin ang mga jumper pin sa tapat ng resistor pot. Kailangan nito ang jumper o 150 ohm risistor. Ang asul na palayok ang laging problema. Kaya't buksan ang palayok hanggang sa magpakita ang display ng 2 mga hilera ng mga parisukat. Pagkatapos ay umatras lamang hanggang sa halos hindi mawala ang mga parisukat. Kung wala pa ring display, Suriin ang mga koneksyon sa SDA at SCL. Napakadali upang paurong sila. Iyon ay A4 sa SDA at A5 sa SCL. Ito ang mga A pin hindi D pin at ilang pro minis ay may mga pin na ito sa loob ng pc wala sa mga gilid. Ang huling pagpipilian ay suriin ang address. Ang ilang mga module ng lcd converter ay may iba't ibang mga address. O sa paggamit ng higit sa isang aparato ang lahat ay nangangailangan ng iba't ibang mga address. Karamihan sa mga module ay may 3 solder pin upang mag-set up ng 3 magkakaibang mga address. Tandaan na ang I2c ay nagpapatakbo lamang ng 2 wires sa anumang at LAHAT ng mga aparato. Kaya't ang bawat aparato ay DAPAT magkaroon ng isang natatanging address. Kasama ang isang scanner ng I2c address. I-download ang pag-install ng scanner at basahin ang serial monitor. Ipinapakita ng display ang address para sa ANUMANG I2c aparato. Suriin ang Sketch ng orasan para sa linya sa tuktok ng sketch. 'LiquidCrystal_I2C lcd (0x3F, 16, 2); '0x3F ang tamang address para sa aking converter. Kung naiiba ang iyong address, baguhin sa tamang isa mula sa scanner. Pag-iingat: kopyahin at i-paste ang bagong address kung minsan ay may kasamang pagtatapos ng linya o mga pagbalik sa karwahe. TYPE lang sa ibang address. Ang mga unang titik ay palaging zero at maliit na case x 0x. Sinasabi nito sa C ++ na ito ay isang hex. Pagkatapos ng 0x anumang letra ay nasa itaas na kaso.

Hakbang 6: HOOKUPS

HOOKUPS
HOOKUPS
HOOKUPS
HOOKUPS
HOOKUPS
HOOKUPS

sundin ang eskematiko at i-wire ang yunit.

Hakbang 7: IBA PANG LARAWAN

IBA PANG LARAWAN
IBA PANG LARAWAN
IBA PANG LARAWAN
IBA PANG LARAWAN
IBA PANG LARAWAN
IBA PANG LARAWAN

good luck MANGYARING makita ang aking iba pang mga itinuturo

Hakbang 8: ANG SKETCH

hindi ako papayagang magturo ng isang Arduino file !!!! kaya nag text ako. Kakailanganin mong kopyahin at i-paste ang teksto sa isang BAGONG arduino bukas na file sa IDE ……. Sensya

at ang mga file ng teksto ay hindi maa-load !!! at sinubukang i-paste dito ngunit ginulo ito !!

sa wakas !!! nakuha ang aking sketch upang mai-download dito. 3-26-2020 Naayos din ang ilang mga menor de edad na bagay.

Ang mga taong nagbabayad upang magsulat ng code ay lumiligid sa sahig kapag nakita nila ang aking code. Ang aking mga sketch ay karaniwang nagsisimula nang simple. Pagkatapos ay nagdagdag ako ng maraming bagay na dapat gawin. Kaya't ang sketch ay napilipit sa gulo. Inaasahan kong matuto ka mula sa aking dalawang pinakamalaking pagkakamali. Dapat mayroong isang tinukoy na balangkas at layunin sa simula. Hindi magdagdag ng tonelada ng mga bagay-bagay sa buong sketch. Ang pinakapangit kong pagkakamali ay ang maling paggamit ng isang FUNCTION. Dapat itong maging maikli at ibalik ang isang kabuuan, at gagamitin lamang kapag pinapalitan nito ang mga paulit-ulit na linya ng code sa buong sketch. pagkaantala (100) ay isang magandang halimbawa.

Ang aking paggamit ng isang FUNCTION ay upang paghiwalayin ang mga seksyon ng sketch. Ito ay umalis sa pangunahing katawan na madali para sa akin na sundin pati na rin ang pagpayag na i-debug ang magkakahiwalay na mga seksyon sa pamamagitan lamang ng pagtawag sa pagpapaandar. Sa palagay ko nagawa ito ni GOTO ngunit nahulog ito mula sa pabor at HINDI nagagamit. Sabi ni Nuff. Sinuri ko ang mga petsa at oras nang pinakamahusay hangga't makakaya ko. Ang parehong mga bahagi ng sketch ay nagpapatakbo ng aking mga 'ORAS NA NAIKAT' sa mga orasan sa loob ng maraming taon. Kung may napalampas ako o may isang bug mangyaring ipaalam sa akin. Upang mai-calibrate ang 'walang mga button sketch' ang linya na may 'unsigned long tSec = 1000122; '(linya 34) ang binago mo. Ang pare-pareho ng 277 bawat segundo bawat oras ay tama. Ngunit sa pagsasagawa gumagawa lamang ako ng 2 hanggang 8 halaga ng mga pagbabago sa halagang 'tSec'. Sa 1000122 marami sa aking mga orasan ang tumatakbo kasing ganda ng isang RTC. Pagpasensyahan ang isang maliit na pagbabago ng 2-8 lamang ay maaaring maging isang perpektong orasan. Ang pababang bahagi ng anumang mga pagbabago para sa alinmang orasan ay nangangahulugang mababago ang kasalukuyang oras. Kakailanganin mong baguhin sa tamang kasalukuyang oras / petsa.

// // easy_one_lcd_clock_no_buttons // // arduino and lcd clock // use timerOne 16 bit timer // upang i-calibrate ang orasan na ito: // gumamit ng isang magandang segundo na orasan tulad ng isang GPS. // gumamit ng mga oras bilang baseline. Bilangin ang mga segundo // NAKA-OFF na ito. Kung ITO ay nasa likod ng isang GPS // GPS = 00.. THIS = 58 SUBTRACT 277 para sa bawat // segundo / oras. Kaya kung mas mabagal ng 2 sec sa // 3 na oras… (277 * 2) / 3 = 184 // SUBTRACT mula sa tSec. // kung ITO ay nasa unahan GPS = 00… ITO = 03 // parehong matematika Idagdag lamang sa tSec. // cauction, ang karamihan sa mga orasan ay tama sa 00. // 20 sec ay isang mas mahusay na pagsusuri ng timer.

Hakbang 9: KASO STL Mga File

Narito ang mga file ng case ng 3d printer. Ang keypad ay kailangang nakadikit sa lcd case. Ang likod ay pumutok sa parehong isa at dalawang lcd case sa harap. I-snap muna ang tuktok pagkatapos ay gumana pababa upang makakuha ng magandang pagkakasya.

CHECH OUT ang iyong lokal na LIBRARY para sa paggamit ng isang 3d printer.

Inirerekumendang: