Indholdsfortegnelse:

AdaBox004 musikafspiller: 4 trin
AdaBox004 musikafspiller: 4 trin

Video: AdaBox004 musikafspiller: 4 trin

Video: AdaBox004 musikafspiller: 4 trin
Video: Обзор на смарт-часы Blackview X2 Black ⌚ 2024, Juli
Anonim
AdaBox004 musikafspiller
AdaBox004 musikafspiller

Jeg brugte delene i AdaBox004 til at lave en simpel musikafspiller. Den tilsluttes en USB -port og begynder at afspille sange tilfældigt fra micro SD -kortet. Det er til mit værksted for en problemfri kilde til optimistiske sange.

Trin 1: Dele

AdaBox004 (https://www.adafruit.com/product/3370)

Trin 2: Lav musikboksen

Lav musikboksen
Lav musikboksen
Lav musikboksen
Lav musikboksen

De generelle instruktioner findes på AdaFruit -webstedet på

Vigtigt at være opmærksom på:

Når du læser AdaBox004 -instruktionerne igennem, er det let at overse links til instruktionssider for komponenterne. Sørg for at være opmærksom på de grønne kasser, der har links til: Adafruit Feather HUZZAH ESP8266 (https://learn.adafruit.com/adafruit-feather-huzzah-esp8266). Under afsnittet "Brug af Arduino IDE" til tavlen har det links til driverne, du skal forbinde kortet og downloade kode fra Arduino IDE samt instruktioner til tilføjelse af kortet som en mulighed til Arduino IDE.

Vær ligeledes opmærksom på linket til Music Maker FeatherWing (https://learn.adafruit.com/adafruit-music-maker-featherwing/). Det har instruktioner til installation af de nødvendige biblioteker til Arduino.

Jeg tilsluttede potentiometeret nøjagtigt som vist (https://learn.adafruit.com/adabox004/adding-a-volume-knob)-men bemærk, at jeg flyttede fjeren længere tilbage på brødbrættet for at få USB-kablet til at passe.

Den hvide æske følger med sættet. Jeg brugte simpelthen en hulning til at lave huller store nok til, at det medfølgende USB -kabel kunne passe igennem. Jeg havde lavet en lille slids med en lommekniv i den foldede æske, så jeg vidste, hvor på hvert panel jeg skulle skære.

Til åbningen af højttaleren estimerede jeg midten og markerede den med en stor udenlandsk mønt (Costa Rica 100 koloner for at være præcis) og skar derefter cirklen med en butikshobbykniv. Højttaleren stod i kø, og jeg markerede, hvor de små bolte skulle gå med et skarpt slag.

Trin 3: Musikafspillerkode

Jeg ændrede eksempelkode til fjerafspilleren og fjernede kode, der ikke gjaldt. Du kan klippe og indsætte det i Arduino IDE og derefter indlæse det på din fjer.

Bemærk, at jeg havde svært ved at prøve at få filerne til at blive genkendt. Hvad jeg har her virker, men du skal justere koden for at ændre antallet af sange, der er tilgængelige. Og bemærk, at den måde, jeg gjorde det på, vil gøre det svært at lave over 100 sange (000 - 099), fordi det kun vælger 2 individuelle cifre. Jeg kunne have valgt det faktiske spornummer, men så skulle jeg have analyseret det for at oprette det rigtige filnavn. Måske i en fremtidig iteration.

Filen er også tilgængelig på GitHub på https://github.com/KFW/AdaBox004. Hvis jeg foretager ændringer, er det dér, de vil være.

// AdaBox004_random_songs

// Specielt til brug med Adafruit Feather, stifterne er forudindstillet her! // modificeret feather_player eksempel til AdaBox 004 projekt // standalone player, der afspiller tilfældige sange fra afspilningsliste // fjernet ubrugt kode // havde problemer med at få filnavn streng til arbejde konvertering String type // da funktionsopkald til afspilning bruger char array // efter at have prøvet forskellige tilgange er dette kludge jeg kom frem til // spor hedder TRACK ##. mp3 // Jeg har 60 sange på SD -kort I Jeg bruger (000 - 059) // ville have været klogere at tælle # af filer eller finde en anden måde at få filnavn tilfældigt // Nå ja næste gang

// inkluderer SPI-, MP3- og SD -biblioteker

#include #include #include

// Det er de ben, der bruges

#define VS1053_RESET -1 // VS1053 reset pin (not used!) // Feather ESP8266 -using HUZZAH featther #define VS1053_CS 16 // VS1053 chip select pin (output) #define VS1053_DCS 15 // VS1053 Data/command select pin (output) #define CARDCS 2 // Card chip select pin #define VS1053_DREQ 0 // VS1053 Dataanmodning, ideelt set en afbrydelsesstift #define VOLUME_KNOB A0

int lastvol = 10;

int loopcounter = 0; long trackNumber; String trackString; char song [13] = {'T', 'R', 'A', 'C', 'K', '0', '2', '0', '.', 'm', 'p', '3', '\ 0'};

Adafruit_VS1053_FilePlayer musicPlayer =

Adafruit_VS1053_FilePlayer (VS1053_RESET, VS1053_CS, VS1053_DCS, VS1053_DREQ, CARDCS);

ugyldig opsætning () {

// Serial.begin (115200); // kun nødvendig for fejlfinding // mens (! Serial) {delay (1); } // Vent til seriel port åbnes, // Serial.println ("\ n / nAdafruit VS1053 Feather Test"); randomSeed (ESP.getCycleCount ()); // HUZZAH har kun 1 analog pin, som allerede er brugt // brug for forskellige tilfældige frø // denne idé fra https://github.com/esp8266/Arduino/issues/728 musicPlayer.begin (); musicPlayer.sineTest (0x44, 500); // Lav en tone for at angive, at VS1053 fungerer SD.begin (CARDCS);

// Indstil lydstyrke til venstre, højre kanal. lavere tal == højere lydstyrke!

musicPlayer.setVolume (lastvol, lastvol); musicPlayer.useInterrupt (VS1053_FILEPLAYER_PIN_INT); // DREQ int}

void loop () {

// tjek med jævne mellemrum for at justere lydstyrken!

loopcounter ++; hvis (loopcounter> = 1000) {loopcounter = 0; int vol = 0; vol = analogRead (VOLUME_KNOB); vol /= 10; hvis (abs (vol - lastvol)> 3) {// Serial.println (vol); sidste vol = vol; musicPlayer.setVolume (lastvol, lastvol); }}

// Afspil en fil i baggrunden, KRÆV afbryder!

hvis (! musicPlayer.playingMusic) {trackNumber = random (6); // skal gøre dette et ciffer ad gangen; første ciffer 0-5 char c = char (trackNumber + 48); // ASCII 48 er '0'; skal skifte værdi for at få den rigtige karakter sang [6] = c; // erstat værdien af ti i char array trackNumber = random (10); // andet ciffer 0-9 c = char (trackNumber + 48); sang [7] = c; // Serial.println (sang); musicPlayer.startPlayingFile (sang); forsinkelse (10); }}

Trin 4: Nyd det

Du skal blot tilslutte en USB -strømforsyning og nyde dine yndlingssange.

Lydstyrken kan justeres med potentiometeret inde i kassen. Ellers ingen kontrol.

Anbefalede: