Innehållsförteckning:

Klocka, LCD -display, infraröd till inställning: 6 steg
Klocka, LCD -display, infraröd till inställning: 6 steg

Video: Klocka, LCD -display, infraröd till inställning: 6 steg

Video: Klocka, LCD -display, infraröd till inställning: 6 steg
Video: Основные ошибки при возведении перегородок из газобетона #5 2024, Juli
Anonim
Klocka, LCD -skärm, infraröd att ställa in
Klocka, LCD -skärm, infraröd att ställa in
Klocka, LCD -skärm, infraröd att ställa in
Klocka, LCD -skärm, infraröd att ställa in

Bygg en realtidsklocka som håller aktiveringstiden inom några minuter om året. Koden och komponenterna kan enkelt återanvändas i andra projekt.

Detta projekt kräver en minsta mängd kablar och ingen lödning. Tidsvakten är en DS3231 realtidsklocka. Tiden visas på en billig 1602 LCD. Båda modulerna använder I2C -kommunikation. I2C använder bara 2 ledningar per modul vid anslutning till en Arduino. Jag använder en Arduino Nano eftersom den passar fint på en brödbräda. Följande instruktioner fungerar med en Arduino Uno eftersom den har samma pin -nummer som Nano för detta projekt. Den andra komponenten är den infraröda mottagaren. Det låter dig använda en vanlig fjärrkontroll som TV -fjärrkontroll för att ställa in tiden precis som du skulle göra på vår smart -TV. Den infraröda mottagaren kräver bara en tråd för att ansluta den till Arduino.

Det första steget är att testa Arduino och koppla den till brödbrädan. Stegen nedan som är utformade för att fungera självständigt. Varje steg har kabelinstruktioner och testinstruktioner. När jag bygger projekt, trådar och testar jag varje komponent för att bekräfta att de fungerar. Detta hjälper till att integrera antalet komponenter eftersom vet att varje arbete och jag kan fokusera på integrationskraven.

Den här instruktionsboken kräver att du har Arduino IDE installerat. Du måste också ha de grundläggande färdigheterna för att ladda ner ett Arduino -skissprogram från länkarna i detta projekt, skapa en katalog för programmet (katalognamn samma som programnamnet). Nästa steg är att ladda, visa och redigera programmet i IDE. Ladda sedan upp programmet via en USB -kabel till ditt Arduino -kort.

Tillbehör

  • Nano V3 ATmega328P CH340G Mikrostyrkort för Arduino. Som ett alternativ kan du använda en Uno.
  • DS3231 realtidsklocka och ett CR2032 -batteri.
  • 1602 LCD med en I2C -modul
  • Infraröd mottagare och fjärrkontroll. Jag använde en trådlös IR -fjärrkontrollmodul som följde med en infraröd mottagare och infraröd fjärrkontroll.
  • Bakbord
  • Kablar
  • 5 volt väggadapter

Jag köpte delarna på eBay, mestadels från Hong Kong eller Kina distributörer. Amerikanska distributörer har någon gång samma eller liknande delar till rimliga priser och snabbare leverans. Kina delar tar från 3 till 6 veckor att levereras. De distributörer jag har använt har alla varit pålitliga.

Ungefärliga kostnader: Nano $ 3, DS3231 $ 1, LCD $ 3, infrarött kit $ 1, brödbräda $ 2, paket med 40 trådkablar $ 1, $ 1 för en 5 volt väggadapter. Totalt, cirka $ 11. Observera, jag köpte Nano och LCD med brödbrädestiften redan lödda på plats, eftersom jag min lödkunnighet är dålig. För klockbatteriet köpte jag ett 5 -pack litium CR2032 -batterier för cirka 1,25 dollar. Jag köpte också en 5 -pack med DS3231s eftersom jag gillar tidstycken. Detta projekt använder 1 brödbräda. Jag köpte ett 3 breadboard -paket för ca $ 7; en bättre affär än att köpa en individuell bräda.

Steg 1: Lägg till Arduino Nano i brödbrädan

Lägg Arduino Nano till brödbrädet
Lägg Arduino Nano till brödbrädet

Anslut Arduino Nano till brödbrädet. Eller, om du föredrar det, kan du använda en Arduino Uno för detta projekt; de använder båda samma stift för detta projekt. Anslut Nano (eller Uno) till din dator via en USB -kabel.

Anslut ström och jord från Arduino till brödbrädans powerbar. Anslut Arduino 5+ -nålen till brödbrädans positiva bar. Anslut Arduino GRN (slipad) stift till brödbrädans negativa (mark) bar. Detta kommer att användas av andra komponenter.

Ladda ner och kör det grundläggande Arduino -testprogrammet: arduinoTest.ino. När programmet körs tänds den inbyggda LED -lampan i 1 sekund och släcks sedan i 1 sekund. Dessutom publiceras meddelanden som kan visas i Arduino IDE Tools/Serial Monitor.

+++ Inställning.

+ Initialiserade den inbyggda LED -digitalpinnen för utmatning. Lysdioden är släckt. ++ Gå till loop. + Loop -räknare = 1 + Loop -räknare = 2 + Loop -räknare = 3 …

Som en övning, ändra tidsfördröjningen på det blinkande ljuset, ladda upp det ändrade programmet och bekräfta ändringen.

På fotot ovan är en 140 -bitars lödlös brödbräda -trådkitlåda som du kan få för 3 till 5 dollar. De gör brädor snyggare med långa kablar för korta anslutningar.

Steg 2: Lägg till klockmodulen DS3231 och anslut den till Arduino

Lägg till klockmodulen DS3231 och anslut den till Arduino
Lägg till klockmodulen DS3231 och anslut den till Arduino

Anslut klockmodulen till brödbrädan. Anslut klockmodulens GND -stift till brödbrädans markstångslist. Anslut klockmodulens VCC -stift till brödbrädans positiva stapelremsa. Anslut klockmodulens SDA (data) stift till A4 -stiftet på Arduino (I2C data pin). Anslut klockmodulens SCL (klocka) stift till stift A5 på Arduino (I2C klockstift).

Installera ett DS3231 Clock Library i Arduino IDE. Välj Verktyg/Hantera bibliotek. Filtrera din sökning genom att skriva "rtclib". Välj RTClib av Adafruit (för referens, bibliotekets länk).

Ladda ner och kör det grundläggande testprogrammet: clockTest.ino. När du kör programmet läggs klockmeddelanden ut som kan visas i Arduino IDE Tools/Serial Monitor.

+++ Inställning.

+ Klocka. ++ Gå till loop. ---------------------------------------- + Aktuellt datum och tid: 2020/3/ 22 (söndag) 11: 42: 3 + Aktuellt datum och tid: 2020/3/22 (söndag) 11: 42: 4 + Aktuellt datum och tid: 2020/3/22 (söndag) 11: 42: 5 …

Som övning använder du rtc.adjust () för att ställa in klockans tid och datum, ladda upp det ändrade programmet och bekräfta ändringen.

rtc.adjust (DateTime (2020, 3, 19, 10, 59, 50)); // Första vårdagen 2020.

Steg 3: Lägg till 1602 LCD -displaymodulen och anslut den till Arduino

Lägg till 1602 LCD -displaymodulen och anslut den till Arduino
Lägg till 1602 LCD -displaymodulen och anslut den till Arduino

Anslut LCD -modulen till brödbrädan. Anslut klockmodulens GND -stift till brödbrädans markstångslist. Anslut klockmodulens VCC -stift till brödbrädans positiva stapelremsa. Anslut klockmodulens SDA (data) stift till A4 -stiftet på Arduino (I2C data pin). Anslut klockmodulens SCL (klocka) stift till stift A5 på Arduino (I2C klockstift).

I Arduino IDE installerar du ett 1602 LCD -bibliotek. Välj Verktyg/Hantera bibliotek. Filtrera din sökning genom att skriva ‘LiquidCrystal’. Välj LiquidCrystal I2C av Frank de Barbander (för referens, bibliotekets länk).

Ladda ner och kör det grundläggande testprogrammet: lcd1602Test.ino. När du kör programmet läggs klockmeddelanden ut som kan visas i Arduino IDE Tools/Serial Monitor.

+++ Inställning.

+ LCD redo att använda. +++ Gå till loop. + räknaren = 1 + räknaren = 2 + räknaren = 3 …

Som övning, ändra LCD -displaymeddelandena, ladda upp det ändrade programmet och bekräfta ändringen.

Steg 4: Lägg till den infraröda mottagaren och anslut den till Arduino

Lägg till den infraröda mottagaren och anslut den till Arduino
Lägg till den infraröda mottagaren och anslut den till Arduino

Anslut honkablarna till hankablarna i den infraröda mottagaren (honändarna). Anslut marknålen på klockmodulen till brödbrädans markstångslist. Anslut klämmodulens strömtapp till brödbrädans positiva stapelremsa. Anslut den infraröda mottagarens utgångsstift till Arduino A1 -stiftet.

Anslut infraröd mottagare, stift uppifrån till vänster till höger:

Vänster mest (bredvid X) - Nanostift A1 Center - 5V Höger - mark

A1 + - - Nano -stiftanslutningar

| | | -Infraröda mottagarpinnar --------- | S | | | | --- | | | | | | --- | | | ---------

Installera ett infrarött bibliotek i Arduino IDE. Välj Verktyg/Hantera bibliotek. Filtrera din sökning genom att skriva 'IRremote'. Välj IRremote av Shirriff (för referens, bibliotekets länk).

Ladda ner och kör det grundläggande testprogrammet: infraredReceiverTest.ino. När du kör programmet, rikta fjärrkontrollen mot mottagaren och tryck på olika knappar, t.ex. siffran från 0 till 9. Seriella meddelanden matas ut (skrivs ut) som kan ses i Arduino IDE Tools/Serial Monitor.

+++ Inställning.

+ Initialiserade den infraröda mottagaren. ++ Gå till loop. + Tangent OK - Toggle + Key> - nästa + Key < - föregående + Key up + Key down + Key 1: + Key 2: + Key 3: + Key 4: + Key 6: + Key 7: + Key 8: + Knapp 9: + Knapp 0: + Knapp * (Retur) + Knapp # (Avsluta)

Som övning kan du använda en fjärrkontroll för att se värdena som skrivs ut. Du kan sedan ändra programmet för att använda värdena i infraredSwitch () -funktionens switch -sats. Till exempel, tryck på "0" -knappen och få värdet för din fjärrkontroll, till exempel "0xE0E08877". Lägg sedan till ett fall i switch -satsen som i följande kodavsnitt.

fall 0xFF9867:

fall 0xE0E08877: Serial.print ("+ nyckel 0:"); Serial.println (""); ha sönder;

Steg 5: Ladda Clock Project Arduino Sketch Program och testa det

Ladda Clock Project Arduino Sketch Program och testa det
Ladda Clock Project Arduino Sketch Program och testa det
Ladda Clock Project Arduino Sketch Program och testa det
Ladda Clock Project Arduino Sketch Program och testa det
Ladda Clock Project Arduino Sketch Program och testa det
Ladda Clock Project Arduino Sketch Program och testa det

Nu när alla komponenter läggs till på brödbrädan, kopplas och testas; det är dags att ladda huvudklockprogrammet och köra det. Klockprogrammet hämtar tiden från klockmodulen, visar tiden på LCD -skärmen och låter dig ställa in tiden med en infraröd fjärrkontroll.

Ladda ner och kör projektets klockprogram: clockLcdSet.ino.

När programmet startar kommer det att visa DS3231: s tid på 1602 LCD -skärmen. Meddelanden kan ses i Arduino IDE Tools/Serial Monitor.

+++ Inställning.

+ LCD -set. + syncCountWithClock, theCounterHours = 13 theCounterMinutes = 12 theCounterSeconds = 13 + Klockan är inställd och synkroniserad med programvariabler. + Infraröd mottagare aktiverad. ++ Gå till loop. + clockPulseMinute (), theCounterMinutes = 15 + clockPulseMinute (), theCounterMinutes = 16 + clockPulseMinute (), theCounterMinutes = 17 …

Rikta fjärrkontrollen mot mottagaren och tryck på högerpilen. Året visas för inställning. Tryck på högerpilen flera gånger för att se att du kan ställa in år, månad, dag, timme, minut och sekunder. För att ställa in ett tidsvärde, gå till värdet. Använd upp- och nedpilarna för att ställa in visningsvärdet. Använd sedan "OK" -knappen för att ställa in klockans värde. Ett värde ställs in i taget.

Steg 6: Extern strömförsörjning

Extern strömförsörjning
Extern strömförsörjning

Nu när din klocka är testad och fungerar kan du koppla ur den från datorn och använda en oberoende strömförsörjning. För enkelhetens skull använder jag en 5 volt väggadapter, som kan köpas för ungefär en dollar, och en USB -kabel, ytterligare en dollar. Kabeln ansluter Arduino till +5V väggadapter. Eftersom Arduino -ström och jordstift är anslutna till brödbräda, kommer det att driva de andra komponenterna.

På grund av dess enkelhet och låga kostnad använder jag samma kombination för att driva andra projekt.

Jag hoppas att du lyckades med att bygga en infraröd kontrollerad LCD -klocka.

Rekommenderad: