Talaan ng mga Nilalaman:

AdaBox004 Music Player: 4 Hakbang
AdaBox004 Music Player: 4 Hakbang

Video: AdaBox004 Music Player: 4 Hakbang

Video: AdaBox004 Music Player: 4 Hakbang
Video: Adabox 004 2024, Hulyo
Anonim
AdaBox004 Music Player
AdaBox004 Music Player

Ginamit ko ang mga bahagi sa AdaBox004 upang makagawa ng isang simpleng music player. Nag-plug ito sa isang USB port at nagsimulang magpatugtog ng mga kanta nang sapalaran mula sa micro SD card. Para ito sa aking pagawaan para sa walang kaguluhan na mapagkukunan ng mga masiglang kanta.

Hakbang 1: Mga Bahagi

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

Hakbang 2: Gawin ang Music Box

Gawin ang Music Box
Gawin ang Music Box
Gawin ang Music Box
Gawin ang Music Box

Ang mga pangkalahatang tagubilin ay nasa site ng AdaFruit sa

Mahalaga na magbayad ng pansin sa:

Kapag nagbabasa sa pamamagitan ng mga tagubilin ng AdaBox004 madali na huwag pansinin ang mga link sa mga site ng pagtuturo para sa mga bahagi. Tiyaking bigyang-pansin ang mga berdeng kahon na may mga link para sa: Adafruit Feather HUZZAH ESP8266 (https://learn.adafruit.com/adafruit-feather-huzzah-esp8266). Sa ilalim ng seksyong "Paggamit ng Arduino IDE" para sa board mayroon itong mga link sa mga driver kailangan mong ikonekta ang board at i-download ang code mula sa Arduino IDE, pati na rin mga tagubilin para sa pagdaragdag ng board bilang isang pagpipilian sa Arduino IDE.

Gayundin bigyang pansin ang link para sa Music Maker FeatherWing (https://learn.adafruit.com/adafruit-music-maker-featherwing/). Mayroon itong mga tagubilin para sa pag-install ng mga kinakailangang aklatan sa Arduino.

Na-wire ko ang potensyomiter eksakto tulad ng ipinapakita (https://learn.adafruit.com/adabox004/adding-a-volume-knob) - ngunit tandaan na inilipat ko pa ang Feather sa breadboard upang makuha ang USB cable upang magkasya.

Ang puting kahon ay may kasamang kit. Ginamit ko lang ang isang butas na butas upang gumawa ng mga butas na sapat na malaki para sa kasamang USB cable upang magkasya. Gumawa ako ng isang maliit na slit na may isang bulsa na kutsilyo sa nakatiklop na kahon upang malaman ko kung saan sa bawat panel upang i-cut.

Para sa pagbubukas ng nagsasalita, tinantya ko ang gitna at minarkahan ito ng isang malaking banyagang barya (Costa Rican 100 colones na eksaktong), pagkatapos ay gupitin ang bilog ng isang libangan sa tindahan. Ang speaker ay nakapila at minarkahan ko kung saan dapat pumunta ang maliliit na bolts na may matalim na suntok.

Hakbang 3: Music Player Code

Binago ko ang halimbawa ng code para sa feather player, inaalis ang code na hindi nalalapat. Maaari mong i-cut-and-paste ito sa Arduino IDE pagkatapos i-load ito sa iyong Feather.

Tandaan na nahihirapan akong subukan na makilala ang mga file. Gumagawa ang mayroon ako dito, ngunit kailangan mong ayusin ang code upang mabago ang bilang ng mga kanta na magagamit. At tandaan na ang paraan ng paggawa ko nito ay magpapahirap na gumawa ng higit sa 100 mga kanta (000 - 099) sapagkat pipili lamang ito ng 2 indibidwal na mga digit. Maaari kong mapili ang aktwal na numero ng track, ngunit kakailanganin kong i-parse ito upang lumikha ng tamang pangalan ng file. Siguro sa hinaharap na pag-ulit.

Magagamit din ang file sa GitHub sa https://github.com/KFW/AdaBox004. Kung gumawa ako ng anumang mga pagbabago, nandiyan ang mga ito.

// AdaBox004_random_songs

// Partikular para magamit sa Adafruit Feather, ang mga pin ay paunang naka-set dito! // binago na halimbawa ng feather_player para sa proyekto ng AdaBox 004 // standalone player na nagpe-play ng mga random na kanta mula sa playlist // naalis ang hindi nagamit na code // Nagkakaproblema sa pagkuha ng pangalan ng file string upang gumana ang pag-convert ng uri ng String // dahil ang tawag sa pag-andar para sa paglalaro ay gumagamit ng char array // pagkatapos subukan ang iba't ibang mga diskarte na ito ay ang kludge na naisip ko // ang mga track ay pinangalanang TRACK ##. mp3 // Mayroon akong 60 mga kanta sa SD card I M gamit ang (000 - 059) // ay magiging mas matalino upang mabilang ang # ng mga file o makahanap ng iba pang paraan upang makakuha ng pangalan ng file nang sapalaran // Oh well sa susunod

// isama ang mga aklatan ng SPI, MP3 at SD

# isama ang # isama ang # isama

// Ito ang ginamit na mga pin

#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 Data request, perpektong isang Makagambala na pin #define VOLUME_KNOB A0

int lastvol = 10;

int loopcounter = 0; mahabang 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);

walang bisa ang pag-setup () {

// Serial.begin (115200); // kailangan lang para sa problema sa pagbaril // habang (! Serial) {pagkaantala (1); } // Hintaying mabuksan ang serial port, // Serial.println ("\ n / nAdafruit VS1053 Feather Test"); randomSeed (ESP.getCycleCount ()); // HUZZAH ay mayroon lamang 1 analog pin na nagamit na // kinakailangan ng iba't ibang mga random na binhi // ang ideyang ito mula sa https://github.com/esp8266/Arduino/issues/728 musicPlayer.begin (); musicPlayer.sineTest (0x44, 500); // Gumawa ng isang tono upang ipahiwatig VS1053 ay gumagana SD.begin (CARDCS);

// Itakda ang dami para sa kaliwa, kanang mga channel. mas mababang mga numero == mas malakas na lakas ng tunog!

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

void loop () {

// regular na suriin upang ayusin ang dami!

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

// Patugtugin ang isang file sa background, KAILANGAN na magambala!

kung (! musicPlayer.playingMusic) {trackNumber = random (6); // kailangang gawin ang isang digit na ito nang paisa-isa; unang digit 0-5 char c = char (trackNumber + 48); // ASCII 48 ay '0'; kailangang ilipat ang halaga upang makakuha ng tamang character na kanta [6] = c; // palitan ang sampung halaga sa char array trackNumber = random (10); // second digit 0-9 c = char (trackNumber + 48); kanta [7] = c; // Serial.println (kanta); musicPlayer.startPlayingFile (kanta); antala (10); }}

Hakbang 4: Masiyahan

Mag-plug in lamang sa isang USB power supply at masiyahan sa iyong mga paboritong kanta.

Maaaring iakma ang dami gamit ang potensyomiter sa loob ng kahon. Kung hindi man ay walang mga kontrol.

Inirerekumendang: