Innehållsförteckning:

LED Matrix väckarklocka (med MP3 -spelare): 6 steg (med bilder)
LED Matrix väckarklocka (med MP3 -spelare): 6 steg (med bilder)

Video: LED Matrix väckarklocka (med MP3 -spelare): 6 steg (med bilder)

Video: LED Matrix väckarklocka (med MP3 -spelare): 6 steg (med bilder)
Video: Часы- будильник из китая 2024, Juli
Anonim
LED Matrix väckarklocka (med MP3 -spelare)
LED Matrix väckarklocka (med MP3 -spelare)
LED Matrix väckarklocka (med MP3 -spelare)
LED Matrix väckarklocka (med MP3 -spelare)

Denna Arduino -baserade väckarklocka har allt du kan förvänta dig av ditt larm - möjlighet att väcka dig med varje låt du gillar, snooze -knapp och den är lätt att styra med tre knappar. Det finns tre huvudblock - LED -matris, RTC -modul och MP3 -skärm med högtalare.

Steg 1: Material och verktyg

  • LED -matris
  • Arduino Uno
  • MP3 -sköld DHF -spelare Mini
  • RTC -modul DS1307
  • Vilken högtalare som helst
  • 3 knappar (med pullup/pulldown -motstånd 10k)
  • Trådar
  • Plexi (eller annat material från vilket du vill ha din låda)
  • 3D -skrivare (för utskrift av matrisboxar)
  • DC -strömförsörjningskontakt
  • USB B honkontakt.

Jag tror att du kan ändra denna materiallista utifrån dina möjligheter (definitivt kan du använda olika MP3 -sköldar, olika RTC -moduler och allt ska fungera bra:)

Steg 2: LED -matris

LED -matris
LED -matris
LED -matris
LED -matris
LED -matris
LED -matris

Som inspiration använde jag dessa instruktioner för att bygga LED -matris, jag bestämde mig bara för att inte använda prototypkort och designa min egen PCB. Du hittar mitt projekt i kretsmakaren här. Du kan också använda scheman och om du vill skicka gerberdata (hellre sedan generera den från kretsmakarprojekt av vår egen) låt mig veta att jag kommer att skicka den till dig:). Några tips - för det första använde jag väldigt billig LED men efter att jag lödt alla dioder och kört arduino -koden visade det sig att variansen på LED -diodens färg inte var acceptabel så jag behövde beställa olika och göra en annan LED -matris. Jag kommer att förklara arbetsprincipen i del arduino. Hur som helst, för att ta reda på om du gjorde ett bra jobb och displayen fungerar, är det bara att byta ut konstanterna i DisplayChar -funktionen i huvud -arduino -slingan (t.ex. istället för DisplayChar (1, letA); använd DisplayChar (0, 9); som kommer att skriva nummer 9 från första kolumnen) behöver du inte kommentera något annat.

Steg 3: Annat HW

Övrigt HW
Övrigt HW
Övrigt HW
Övrigt HW
Övrigt HW
Övrigt HW

De andra HW -komponenterna för att bygga väckarklocka är: RTC -modul, MP3 -skärm, Knappar och arduino UNO.

För RTC -modulen använde jag modul DS1307 och bibliotek MD_DS1307.h det är ganska enkelt allt fungerar smidigt, men jag skulle rekommendera att använda noggrannare RTC -modul som 3231 eller annat - om jag låter den utan ström i några dagar började det tappa några sekunder.

MP3 -skärm DHF -spelare Mini - Denna MP3 -skärm är väldigt enkel, du kan ladda upp lite mp3 till SD -kort, ansluta alla högtalare du hittar och sedan kan den drivas på två sätt antingen genom seriell kommunikation eller med I/O -stift. För att vara ärlig av någon anledning lyckades jag inte med seriekommunikation (det fungerade inte tillsammans med SPI och I2C -kommunikation som användes för andra komponenter) men jag var snäll bara för att använda IO -stift (jag använde ADKEY1 ansluten till arduino Digital output som en utlösare för att spela låt och sedan fästa USB+ för att stoppa musiken).

Som du kan se på bilden använde jag tre enkla knappar på prototypkort som är anslutna till digitala ingångar av arduino med neddragbara 10kOhm -motstånd.

Ledningarna för arduino syns tydligt i Arduino -koden:)

Steg 4: Mekaniska delar

Mekaniska delar
Mekaniska delar
Mekaniska delar
Mekaniska delar
Mekaniska delar
Mekaniska delar
Mekaniska delar
Mekaniska delar

För att skapa en vacker, vanlig display måste du använda ett rutnät för att definiera den exakta formen för varje LED. Jag använde ett enkelt 3D -tryckt rutnät som fungerar alldeles utmärkt - Det består av två delar, vänster och höger, du kan hitta STL -data i bilagan.

Lådan är fräst på CNC -maskin från milk plexi. Det är helt upp till dig från vilket material du gör, bara en rekommendation, om du kommer att använda liknande material som jag gjorde, lägg ett halvt genomträngligt lager på en del som är direkt på lysdioder för att förhindra att lysdioder syns som en ljuskälla. Du kan se att i sidoväggen finns plats för likströmskontakt och USB för att ladda upp bättre idéer om kod:) Jag använde standardlim för plast för att limma ihop plexidelar. I bilagan finns STL -filer för alla delar (Tack min vän Peshi för att du har designat denna supercoola låda:))

Steg 5: Arduino -del

Arduino del
Arduino del

Delvis relaterat till arduino skulle jag bara vilja kort beskriva huvudslingalgoritmen och sedan några ord för att styra skiftregistren genom SPI och larminställningar.

I huvudslingan kontrollerar du bara om någon knapp trycks in, kontrollerar om RTC skickar dig nyligen uppdaterade värden på minuter och om det är dags att spela någon rosa floyd -låt:) och om inte, tänder och släcker du bara regelbundet lysdioder med ange nummer.

Kontrollera LED -matrisen - För bättre förståelse är det bra att följa instruktioner för LED -matris som jag nämnde i början, men bara kort - det är viktigt att förstå att för att visa siffror eller bokstäver i denna matris måste du regelbundet välja vilken LED från uppsättningen rad måste slås på och sedan vrida alla lysdioder från rad under en tid. I nästa steg stänger du av den här raden och förbereder andra raden och detta om och om igen. Vad detta betyder? - använd inga förseningar! - annars visar det inte siffror utan blinkar bara:)

Jag använder ganska olika och jag skulle säga enklare sätt att styra skiftregister (tack till min vän Krystof som skrev denna smidiga funktion). Så det första steget (förberedelse av data för skiftregister sker i funktionen DisplayChar, där du bara hittar den önskade symbolen från arrayen konstant och förbereder data för register. Och när funktionen UpdateDisplay kallas flyttas data till utgångar (för mer info se skärm från arduino IDE)

Larminställning. Det finns tre knappar, vänster, mitten och höger. När du dubbeltrycker höger och mitten kommer du in i larmmenyn. I larmmenyn finns följande funktioner tillgängliga - vänster knapp (Ställ in larm i timmar) mittknapp (Ställ in larm för minuter) Höger knapp lång tryckning (bekräftelse av larm), lång tryckning på mitten och höger knapp (radering av befintligt larm).

När larmet är inställt (du kan känna igen detta genom att larmet tänder markerings -LED nere till höger) och Klockan börjar spela din favorit morgonsång:) det finns följande funktioner tillgängliga - vänster knapp (Snooze i ytterligare 5 minuter), mittknapp (avbryt larm).

Steg 6: Slutföra larm

Image
Image
Slutför larm
Slutför larm

I slutet klistrar jag bara ihop allting inuti:) och stänger limmet på baksidan av larmet. I den bifogade videon kan du se kontrollmekanismen för detta larm. Observera bara videon, i videon ser det ut som att den blinkar, den orsakas av principen att tända och stänga av lysdioder och bildtexts bildfrekvens - i själva verket ser dina ögon detta som påslaget utan att blinka:)

För framtiden skulle jag vilja prova olika material - helst lite svart:) och lägga till några fler funktioner, som att visa datum, kanske temperatur osv:)

Hoppas du kommer att tycka om att bygga din egen väckarklocka och ser fram emot dina idéer:)

Tävlingar
Tävlingar
Tävlingar
Tävlingar

Andra pris i klocktävlingen

Rekommenderad: