Introduction: Playing Wave File Using Arduino
Step 1: Parts
2- SD card Module.
3- SD card.
4- Bread Board.
5- four push Button .
6- four 22K resistors.
7- one 4.7K resistor.
8- BC546B NPN transistor.
9- Speaker.
10- wires.
Step 2: Prepare Your SD Card
2- Convert your music to .WAV files and make sure the below:
-Samples Per second(Hz):16000
-Channel :Mono
- Bits Per Sample: 8
I use Wav Sample rate converter software (picture attached).
3- Wave files samples attached.
Attachments
Step 3: Circuit Digram
Attachments
Step 4: Source Code
https://github.com/TMRh20/TMRpcm/wiki
all information how to install and use the library included in the website .
2- Download the attached WavSW_ino.zip file and open it with arduino sketch ,I tried to copy and paste the Source Code from arduino sketch to instructable but for some reason the text convert to rubbish.
Attachments
Step 5: Troubleshooting Update 29/5/2016
For people whom unable to make this circuit work ,I created the attached folder "for test" for troubleshooting purpose .
The folder includes tested code for Arduino Nano ,UNO and MEGA.
No need to connect the push buttons,the sounds will play automatically.
No need to connect the transistor ,Connect a small speaker or headphone directly to pin 9 for arduino nano or pin 11 for Mega .
Copy the .wav files directly to SD card ,Do not put them inside folder.
Pin Connection:
Arduino Nano ---------> SD Card
12 -------------------> MISO
11 -------------------->MOSI
13 -------------------->SCK
4 ---------------------->CS
9 ---------------------->Speaker
GND ------------------>GND
5V ------------------> VCC
Arduino MEGA ---------> SD Card
50-------------------> MISO
51-------------------->MOSI
52 -------------------->SCK
53---------------------->CS
11---------------------->Speaker
GND ------------------>GND
5V ------------------> VCC
if the tested code worked fine do the following for the push buttons code file to make it work:
1-If you faced problem in compiling the original push buttons code file ,please add line #include<SPI.h>
in the 3rd line of the code.
still have no sound add a delay command between the play commands delay(1000);
Good luck
Husham