-
- This project is very simple wave player program with SD card using Nim language and using only passive parts, capacitor,diode and resistor except SC card.
-
- nim-1.6.0
- Important: It must be used above nim version otherwise it won't work well.
- avr-gcc v7.3.0 (inclued in arduino-1.8.16 IDE)
- For example, if on Windows10 set executable path to
d:\arduino-1.8.16\hardware\tools\avr\bin
- For example, if on Windows10 set executable path to
- make,rm and etc Linux tool commands
- nim-1.6.0
-
- Arduino Uno / Nano
-
- You can use make command for build management as follows,
or
$ make # build target $ make clean # clean target $ make w # upload to flash
$ nim make # build target $ nim clean # clean target $ nim w # upload to flash
- Artifacts (
*
.hex,*
.lst files etc) would be generate to .BUILD folder.
- You can use make command for build management as follows,
-
- SDSC/SDHC card FAT16 and FAT32
- First, format SD card using SD Card Formatter
- Copy PCM wav files to root directory of the SD card.
- SDSC/SDHC card FAT16 and FAT32
-
PCM wave files that have file extension ".wav" on root directory.
PCM:16bit/8bit, fs(sampling rate)=32kHz,44.1kHz,48kHz.
Stereo/Mono. -
- Refer to the file ./port_setting.txt
- PWM output port:
Audio Left PWM out : OC1A: PB1, 15pin, D9 Audio Right PWM out : OC1B: PB2, 16pin, D10
-
- D2 (PD2) Button SW
- Next song : One click during Play mode.
- Play Pause: Push long time .
- Play : One click from Pause state.
- D2 (PD2) Button SW
-
- Set baudrate: 38400bps
- Next song: Send from key board 'n' or ' '(Space) during Play or Pause mode.
- Play/Pause:
Send from key board 's' or 'p' or 'ESC'(Escape char) during Play or Pause mode.
Play or Pause mode would be toggled.
- Set baudrate: 38400bps
-
- This is debug purpose so only display 8.3 type filename (ansi).
- UART output
OURPLACE.WAV # Power on. Start playing music. RAINBOWS.WAV ACOUST~1.WAV ARTP7 .WAV HOTELC .WAV OURPLACE.WAV # Repeat form first file. RAINBOWS.WAV ...
- UART output
- This is debug purpose so only display 8.3 type filename (ansi).
-
- Arduino Nano compatible board
- Wave player project Super lite series
- Nim language
- C++ language
- Jal language