Turinys:
- Prekės
- 1 veiksmas: pridėkite „Arduino Nano“prie duonos lentos
- 2 veiksmas: pridėkite DS3231 laikrodžio modulį ir prijunkite jį prie „Arduino“
- 3 veiksmas: pridėkite 1602 LCD ekrano modulį ir prijunkite jį prie „Arduino“
- 4 veiksmas: pridėkite infraraudonųjų spindulių imtuvą ir prijunkite jį prie „Arduino“
- 5 veiksmas: įkelkite laikrodžio projekto „Arduino“eskizo programą ir išbandykite
- 6 žingsnis: išorinis maitinimo šaltinis
Video: Laikrodis, LCD ekranas, nustatytas infraraudonųjų spindulių ryšys: 6 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
Sukurkite realaus laiko laikrodį, kuris įjungia laiką per kelias minutes per metus. Kodas ir komponentai gali būti lengvai pritaikyti kitiems projektams.
Šiam projektui reikalingas minimalus laidų skaičius ir litavimas. Laiko laikytojas yra DS3231 realaus laiko laikrodis. Laikas rodomas nebrangiame 1602 LCD. Abu moduliai naudoja I2C ryšį. „I2C“naudoja tik 2 laidus kiekviename modulyje, kai jungiasi prie „Arduino“. Aš naudoju „Arduino Nano“, nes jis puikiai tinka ant duonos lentos. Šios instrukcijos veiks su „Arduino Uno“, nes jo PIN kodai yra tokie patys kaip šio projekto „Nano“. Kitas komponentas yra infraraudonųjų spindulių imtuvas. Tai leidžia naudoti įprastą nuotolinio valdymo pultą, pvz., Televizoriaus nuotolinio valdymo pultą, kad nustatytumėte laiką taip, kaip nustatytumėte mūsų išmaniajame televizoriuje. Infraraudonųjų spindulių imtuvui prijungti prie „Arduino“reikia tik vieno laido.
Pirmasis žingsnis yra išbandyti „Arduino“ir prijungti jį prie duonos lentos. Tolesni veiksmai yra skirti dirbti savarankiškai. Kiekvienas žingsnis turi prijungimo instrukcijas ir bandymo instrukcijas. Kurdamas projektus, jungiu laidus ir išbandau kiekvieną komponentą, kad įsitikinčiau, ar jie veikia. Tai padeda integruoti daugybę komponentų, nes žinokite, kad kiekvienas darbas ir aš galime sutelkti dėmesį į integracijos reikalavimus.
Ši instrukcija reikalauja, kad būtumėte įdiegęs „Arduino IDE“. Jūs taip pat turite turėti pagrindinius įgūdžius atsisiųsti „Arduino“eskizų programą iš šio projekto nuorodų, sukurkite programos katalogą (katalogo pavadinimas toks pat kaip ir programos pavadinimas). Kiti veiksmai - įkelti, peržiūrėti ir redaguoti programą IDE. Tada įkelkite programą per USB kabelį į „Arduino“plokštę.
Prekės
- „Nano V3 ATmega328P CH340G“mikro valdiklio plokštė, skirta „Arduino“. Kaip alternatyvą galite naudoti „Uno“.
- DS3231 realaus laiko laikrodis ir CR2032 baterija.
- 1602 LCD su I2C moduliu
- Infraraudonųjų spindulių imtuvas ir nuotolinio valdymo pultas. Naudojau IR belaidžio nuotolinio valdymo modulio rinkinius, kurie buvo komplektuojami su infraraudonųjų spindulių imtuvu ir infraraudonųjų spindulių nuotolinio valdymo pultu.
- Bandomoji Lenta
- Laidų kabeliai
- 5 voltų sieninis adapteris
Aš nusipirkau dalis „eBay“, daugiausia iš Honkongo ar Kinijos platintojų. JAV platintojai kartais turi tas pačias ar panašias dalis už priimtiną kainą ir greitesnį pristatymą. Kinijos dalių pristatymas trunka nuo 3 iki 6 savaičių. Visi mano naudojami platintojai buvo patikimi.
Apytikslės išlaidos: Nano 3 USD, DS3231 1 USD, LCD 3 USD, infraraudonųjų spindulių rinkinys 1 USD, duonos plokštė 2 USD, 40 laidų kabelių paketas 1 USD, 1 USD už 5 voltų sieninį adapterį. Iš viso, apie 11 USD. Atkreipkite dėmesį, aš nusipirkau „Nano“ir skystųjų kristalų ekraną su duonos lentos kaiščiais, kurie jau buvo lituoti, nes mano litavimo įgūdžiai yra prasti. Laikrodžio baterijai nusipirkau 5 paketus ličio CR2032 baterijų už maždaug 1,25 USD. Aš taip pat nusipirkau 5 paketus DS3231, nes man patinka laikrodžiai. Šiame projekte naudojama 1 duonos lenta. Aš nusipirkau 3 „breadboard“paketą už maždaug 7 USD; geresnis pasiūlymas nei pirkti atskirą lentą.
1 veiksmas: pridėkite „Arduino Nano“prie duonos lentos
Prijunkite „Arduino Nano“prie duonos lentos. Arba, jei norite, šiam projektui galite naudoti „Arduino Uno“; šiam projektui jie abu naudoja tuos pačius kaiščius. Prijunkite „Nano“(arba „Uno“) prie kompiuterio per USB kabelį.
Prijunkite maitinimą ir įžeminimą iš „Arduino“prie duonos lentos maitinimo juostos. Prijunkite „Arduino 5+“kaištį prie duonos lentos teigiamos juostos. Prijunkite „Arduino GRN“(įžemintą) kaištį prie duonos lentos neigiamos (įžemintos) juostos. Tai naudos kiti komponentai.
Atsisiųskite ir paleiskite pagrindinę „Arduino“testavimo programą: arduinoTest.ino. Vykdant programą, įmontuota LED lemputė įsijungs 1 sekundei, tada išsijungs 1 sekundei. Taip pat skelbiami pranešimai, kuriuos galima peržiūrėti naudojant „Arduino IDE Tools/Serial Monitor“.
+++ sąranka.
+ Inicializuotas LED skaitmeninis kaištis išėjimui. Šviesos diodas išjungtas. ++ Eiti į kilpą. + Ciklo skaitiklis = 1 + Ciklo skaitiklis = 2 + Ciklo skaitiklis = 3…
Atlikdami pratimą, pakeiskite mirksinčios šviesos delsą, įkelkite pakeistą programą ir patvirtinkite pakeitimą.
Aukščiau esančioje nuotraukoje yra 140 dalių be litavimo duonos lentos megztinių laidų rinkinio dėžutė, kurią galite įsigyti už 3–5 dolerius. Jie daro plokštes tvarkingesnes, naudojant trumpus sujungimus ilgus kabelius.
2 veiksmas: pridėkite DS3231 laikrodžio modulį ir prijunkite jį prie „Arduino“
Prijunkite laikrodžio modulį prie duonos lentos. Prijunkite laikrodžio modulio GND kaištį prie duonos lentos įžeminimo juostos. Prijunkite laikrodžio modulio VCC kaištį prie duonos lentos teigiamos juostos. Prijunkite laikrodžio modulio SDA (duomenų) kaištį prie „Arduino“(I2C duomenų kaiščio) A4 kaiščio. Prijunkite laikrodžio modulio SCL (laikrodžio) kaištį prie „Arduino“kaiščio A5 (I2C laikrodžio kaištis).
Į „Arduino IDE“įdiekite DS3231 laikrodžių biblioteką. Pasirinkite Įrankiai/Tvarkyti bibliotekas. Filtruokite paiešką įvesdami „rtclib“. Pasirinkite „RTClib by Adafruit“(nuoroda, bibliotekos nuoroda).
Atsisiųskite ir paleiskite pagrindinę testavimo programą: clockTest.ino. Vykdant programą, skelbiami laikrodžio laiko pranešimai, kuriuos galima peržiūrėti naudojant „Arduino IDE Tools/Serial Monitor“.
+++ sąranka.
+ Laikrodžio rinkinys. ++ Eiti į kilpą. ---------------------------------------- + Dabartinė data ir laikas: 2020/3/ 22 (sekmadienis) 11: 42: 3 + dabartinė data ir laikas: 2020/3/22 (sekmadienis) 11: 42: 4 + dabartinė data ir laikas: 2020/3/22 (sekmadienis) 11: 42: 5…
Kaip pratimą naudokite rtc.adjust (), kad nustatytumėte laikrodžio laiką ir datą, įkeltumėte pakeistą programą ir patvirtintumėte pakeitimą.
rtc.adjust (DateTime (2020, 3, 19, 10, 59, 50)); // Pirmoji pavasario diena, 2020 m.
3 veiksmas: pridėkite 1602 LCD ekrano modulį ir prijunkite jį prie „Arduino“
Prijunkite LCD modulį prie duonos lentos. Prijunkite laikrodžio modulio GND kaištį prie duonos lentos įžeminimo juostos. Prijunkite laikrodžio modulio VCC kaištį prie duonos lentos teigiamos juostos. Prijunkite laikrodžio modulio SDA (duomenų) kaištį prie „Arduino“(I2C duomenų kaiščio) A4 kaiščio. Prijunkite laikrodžio modulio SCL (laikrodžio) kaištį prie „Arduino“kaiščio A5 (I2C laikrodžio kaištis).
Į „Arduino IDE“įdiekite 1602 LCD biblioteką. Pasirinkite Įrankiai/Tvarkyti bibliotekas. Filtruokite paiešką įvesdami „LiquidCrystal“. Pasirinkite Frank de Barbander „LiquidCrystal I2C“(nuoroda - bibliotekos nuoroda).
Atsisiųskite ir paleiskite pagrindinę testavimo programą: lcd1602Test.ino. Vykdant programą, skelbiami laikrodžio laiko pranešimai, kuriuos galima peržiūrėti naudojant „Arduino IDE Tools/Serial Monitor“.
+++ sąranka.
+ LCD paruoštas naudoti. +++ Eiti į kilpą. + theCounter = 1 + theCounter = 2 + theCounter = 3…
Atlikdami pratimą, pakeiskite LCD ekrano pranešimus, įkelkite pakeistą programą ir patvirtinkite pakeitimą.
4 veiksmas: pridėkite infraraudonųjų spindulių imtuvą ir prijunkite jį prie „Arduino“
Į infraraudonųjų spindulių imtuvą (kištukiniai galai) prijunkite patelę prie laido kabelių. Prijunkite laikrodžio modulio įžeminimo kaištį prie duonos lentos įžeminimo juostos. Prijunkite laikrodžio modulio maitinimo kaištį prie duonos lentos teigiamos juostos. Prijunkite infraraudonųjų spindulių imtuvo išvesties kaištį prie „Arduino A1“kaiščio.
Prijunkite infraraudonųjų spindulių imtuvą, kaiščius iš viršaus į kairę į dešinę:
Kairė dauguma (šalia X) - Nano kaištis A1 centras - 5V Dešinysis - žemė
A1 + - - Nano kaiščių jungtys
| | | -Infraraudonųjų spindulių imtuvo kaiščiai --------- | S | | | | --- | | | | | | --- | | | ---------
Į „Arduino IDE“įdiekite infraraudonųjų spindulių biblioteką. Pasirinkite Įrankiai/Tvarkyti bibliotekas. Filtruokite paiešką įvesdami „IRremote“. Pasirinkite „IRremote by Shirriff“(nuoroda - bibliotekos nuoroda).
Atsisiųskite ir paleiskite pagrindinę testavimo programą: infraredReceiverTest.ino. Vykdydami programą, nukreipkite nuotolinio valdymo pultą į imtuvą ir paspauskite įvairius mygtukus, pvz., Skaičių nuo 0 iki 9. Serijiniai pranešimai išvedami (atspausdinami), kuriuos galima peržiūrėti naudojant „Arduino IDE Tools/Serial Monitor“.
+++ sąranka.
+ Inicijavo infraraudonųjų spindulių imtuvą. ++ Eiti į kilpą. + Klavišas Gerai - perjungti + klavišas> - kitas + klavišas < - ankstesnis + klavišas aukštyn + klavišas žemyn + 1 klavišas: + 2 klavišas: + 3 klavišas: + 4 klavišas: + 6 klavišas: + 7 klavišas: + 8 klavišas: + 9 klavišas: + klavišas 0: + klavišas * (grįžimas) + klavišas # (išeiti)
Norėdami pamatyti atspausdintas vertes, naudokite televizoriaus nuotolinio valdymo pultą. Tada galite modifikuoti programą, kad būtų naudojamos funkcijos „infraredSwitch ()“jungiklio teiginyje. Pavyzdžiui, paspauskite klavišą „0“ir gaukite nuotolinio valdymo pulto vertę, pavyzdžiui, „0xE0E08877“. Tada pridėkite raidę į jungiklio teiginį, kaip nurodyta toliau pateiktame kodo fragmente.
atvejis 0xFF9867:
atvejis 0xE0E08877: Serial.print ("+ raktas 0:"); Serial.println (""); pertrauka;
5 veiksmas: įkelkite laikrodžio projekto „Arduino“eskizo programą ir išbandykite
Dabar, kai visi komponentai yra pridedami prie duonos lentos, prijungti ir išbandyti; laikas įkelti pagrindinę laikrodžio programą ir ją paleisti. Laikrodžio programa gauna laiką iš laikrodžio modulio, rodo laiką LCD ekrane ir leidžia nustatyti laiką naudojant infraraudonųjų spindulių nuotolinio valdymo pultą.
Atsisiųskite ir paleiskite projekto laikrodžio programą: clockLcdSet.ino.
Pradėjus programą, 1602 LCD ekrane bus rodomas DS3231 laikas. Pranešimus galima peržiūrėti naudojant „Arduino IDE Tools/Serial Monitor“.
+++ sąranka.
+ LCD ekranas. + syncCountWithClock, theCounterHours = 13 theCounterMinutes = 12 theCounterSeconds = 13 + Laikrodis nustatytas ir sinchronizuotas su programos kintamaisiais. + Įjungtas infraraudonųjų spindulių imtuvas. ++ Eiti į kilpą. + clockPulseMinute (), theCounterMinutes = 15 + clockPulseMinute (), theCounterMinutes = 16 + clockPulseMinute (), theCounterMinutes = 17…
Nukreipkite nuotolinio valdymo pultą į imtuvą ir paspauskite rodyklės į dešinę mygtuką. Nustatymui bus rodomi metai. Kelis kartus paspauskite rodyklės į dešinę mygtuką, kad pamatytumėte, jog galite nustatyti metus, mėnesį, dieną, valandą, minutę ir sekundes. Norėdami nustatyti laiko vertę, eikite į vertę. Naudodami rodykles aukštyn ir žemyn nustatykite rodomą vertę. Tada naudokite mygtuką „Gerai“, kad nustatytumėte laikrodžio vertę. Vienu metu nustatoma viena vertė.
6 žingsnis: išorinis maitinimo šaltinis
Dabar, kai jūsų laikrodis yra išbandytas ir veikia, galite jį atjungti nuo kompiuterio ir naudoti nepriklausomą maitinimo šaltinį. Paprastumo dėlei naudoju 5 voltų sieninį adapterį, kurį galima nusipirkti už maždaug dolerį, ir USB kabelį, kitą dolerį. Kabelis jungia „Arduino“prie +5 V sieninio adapterio. Kadangi „Arduino“maitinimo ir įžeminimo kaiščiai yra prijungti prie duonos lentos, tai maitins kitus komponentus.
Dėl paprastumo ir mažos kainos aš naudoju tą patį derinį kitų projektų veikimui.
Tikiuosi, kad jums pasisekė ir patiko kurti infraraudonųjų spindulių valdomą LCD laikrodį.
Rekomenduojamas:
Raspberry Pi - TMD26721 infraraudonųjų spindulių skaitmeninis artumo jutiklis „Java“pamoka: 4 žingsniai
„Raspberry Pi“-TMD26721 infraraudonųjų spindulių skaitmeninis artumo jutiklis „Java“pamoka: TMD26721 yra infraraudonųjų spindulių skaitmeninis artumo detektorius, kuris suteikia pilną artumo aptikimo sistemą ir skaitmeninės sąsajos logiką viename 8 kontaktų paviršiaus tvirtinimo modulyje. Artumo aptikimas apima patobulintą signalo ir triukšmo tikslumas. Profesionalus
IOT išmanusis infraraudonųjų spindulių termometras (COVID-19): 3 žingsniai
IOT išmanusis infraraudonųjų spindulių termometras (COVID-19): dėl 2019 m. COVID sukilimo nusprendėme pagaminti išmanųjį infraraudonųjų spindulių termometrą „IOT“, jungiantį prie išmaniųjų įrenginių, kad būtų rodoma užfiksuota temperatūra, tai ne tik pigesnė alternatyva, bet ir puiki technologijų ir IOT mokymo modulis, kuris
„Universal TV Remote“- „Ardiuino“, infraraudonųjų spindulių ryšys: 5 žingsniai
„Universal TV Remote“- „Ardiuino“, infraraudonųjų spindulių ryšys: Sveiki! Šioje pamokoje aš jums parodysiu, kaip sukurti ir užprogramuoti savo universalų nuotolinio valdymo pultą, kuris veiks su daugeliu dalykų, kuriuose naudojamas infraraudonųjų spindulių nuotolinio valdymo pultas, ir kuris taip pat " klausysis " ir iššifruoti įvairių kitų siunčiamą infraraudonųjų spindulių signalą
„Adafruit SI1145“UV/matomos šviesos/infraraudonųjų spindulių jutiklis - „Arduino“ir LCD: 4 žingsniai
„Adafruit SI1145“UV/matomos šviesos/infraraudonųjų spindulių jutiklis - „Arduino“ir skystųjų kristalų ekranas: Šiame projekte naudojamas „Adafruit SI1145“UV/matomos šviesos/infraraudonųjų spindulių jutiklis dabartiniam UV spindulių skaičiavimui apskaičiuoti. UV spinduliai nėra tiesiogiai jaučiami. Greičiau jis apskaičiuojamas kaip matomos šviesos ir infraraudonųjų spindulių rodmenų funkcija. Kai išbandžiau lauke, tai
„Nokia 5110“LCD su infraraudonųjų spindulių jutikliu: 4 žingsniai
„Nokia 5110“skystųjų kristalų ekranas su infraraudonųjų spindulių jutikliu: „Nokia 5110“LCD ekranas yra nuostabus LCD ekranas, suderinamas su „Arduino“kūrimo lenta. Dabar valdykime vieną iš tų LCD ekranų ir sujunkime jį su „Arduino“ir IR jutikliu