Musik spelas väckarklocka (15 / 24 steg)
Steg 15: Bygga elektronik
Läsa filer från ett MicroSD-kort
Förvandla MicroSD-kortet till en USB-masslagringsenhet
Skriva ut text och tid på en LCD-skärm
Få aktuell tid från en RTC
Läs knappar från en IR-fjärrkontroll
Spela upp ljud med hjälp av en VS1033D
Jag tror att vi är redo att bygga ett helt fullt fungerande musikspelare.
Om du har följt alla tidigare åtgärder och utförde alla föregående exempel demonstrationer, kan du redan tråd upp kretsen.
Du vill göra din slutliga krets mycket pålitlig. Du bör sätta frikoppling kondensatorer på flera ställen. Först, Läs den här
http://Elm-Chan.org/docs/MMC/mmc_e.html
Uppmärksamma "Cosideration till buss flytande och heta Insertion"
Du en frikoppling kondensator på DS1307. Helt enkelt få en 0.1 uF kondensator mellan Vcc och GND av DS1307. Denna kondensator bör vara fysiskt nära stiften skall vara effektiv.
Du en frikoppling kondensator på IR-mottagaren. Helt enkelt få en 0.1 uF kondensator mellan Vcc och GND av IR-mottagaren. Denna kondensator bör vara fysiskt nära stiften skall vara effektiv.
Om du inte använder Teensy ++, då behöver mikrokontroller en frikoppling kondensator alltför. Igen, en 0.1 uF kondensator fysiskt nära Vcc och GND bör göra det.
Om du inte ansluter klockan till datorn hela tiden, kan du behöva bygga ett nätaggregat. Min nätaggregatet är gjord med en 7805 regulator först, som matar också en låg avhopp 3,3 volt regulator, plus några kondensatorer. En DC fat jack används att acceptera 9V eller 12V ström från en vägg AC/DC adapter. Jag kastade bara detta tillsammans med vissa delar som jag hittade. Se diagram nedan. Kontrollera att kondensatorerna är placerade fysiskt nära komponenterna. Diagrammet innehåller inte frikoppling kondensatorer för ATmega644, IR-mottagaren, DS1307 eller SD-kortet. De bör vara 0.1 uF kondensatorer placeras fysiskt nära deras respektive komponenter.
Observera att köra en högtalare direkt från VS1033D är dåliga men acceptabelt om talarens wattal är tillräckligt låg. Mjukvaran konfigurerar VS1033D för att använda "inverterad Utläge" som i princip tillåter människor använder mono-högtalarna korrekt.
Min slutliga utformningen används en ATmega644 eftersom jag bara har en Teensy ++ och jag behöver det för andra projekt. ATmega644 har inte USB, oh well... Den kod jag anger bör fungera för båda, beroende på sammanställning alternativ. Stifttilldelningar är olika och du kan räkna ut den nya ledningar dem genom att läsa en fil som heter "pins.h"
Använda ATmega644 betyder jag var tvungen att tillgripa en ISP programmerare att bränna min kod, istället för att använda en USB-bootloader. Eftersom Internet-leverantören använder SPI bussen, satte jag pull-up motstånd på CS pin av SD-kort, plus CS och DCS pin av VS1033D. Det är så att när jag programmering i ATmega644, andra saker på SPI bussen inte få misstag "markerade" eftersom AVR kommer att ha alla andra stift flytande.
Pull-up resistor på VS1033D Återställ PIN-koden är inte längre rekommenderas, skäl, se nästa steg om stänga av VS1033D. Pull-up resistor finns det bra för testning av olika skäl (om du använder en förstärkt högtalare, du kommer att höra buller när Återställ PIN-koden är låg), men när du behöver lämna denna väckarklocka på i månader i taget, du vill inte det där.
Den. ZIP-fil nedan innehåller alla bilder i original beslutsamhet