PWM Wave Player Super Lite for PIC16F1xxx with Jalv2
I came across this page WAVE PLAYER FOR PIC16F877A.! and
had an impression for very small code size about 1700 words.
But I struggled with the program that aimed to old and particular MMC FAT16 format
in the now, so I'd rewritten it using Jalv2(Jal) language
in order to work with SDSC(FAT16) / SDHC(FAT32) SD card from 2GB to 32GB.
-
Supported PICs are 8bit Enhanced Midrange PIC16F1xxx series
and PIC18F26J50 etc, as follows:-
Programmed by PicKit2/3:
PIC12F1840 PIC16F1455 PIC16F1459 PIC16F1705 PIC16F1709 PIC16F1825 PIC16F1827 PIC16F1829 PIC16F1938 PIC18F14K50 PIC18F26J50 -
Programmed by PicKit3 or later:
PIC16F1619 PIC16F1764 PIC16F18313 PIC16F18325
-
-
PCM wave music file
Select 8bit stereo or mono.
fs (Sample frequency) = 44.1KHz. -
Auto play after power on.
-
One push switch controls Play,Pause and Next song operation.
-
Code size is about 1700 words.
- Refer to pin_map.txt in the archive file.
- Pin side
--------------. 9 = \ DAT2/NC 1 ===| CS/DAT3 [CS] 2 ===| CMD/DI [DI] 3 ===| VSS1 Bottom 4 ===| VDD View 5 ===| CLK [CLK] 6 ===| VSS2 7 ===| DO/DAT0 [DO] 8 =| DAT1/IRQ -----------------'
- Logo side
Arduino NUCLEO-F411 NUCLEO-F030R8 -----------------. 8 =| DAT1/IRQ 7 ===| DO/DAT0 [DO] D12 D12/PA_6 D12/PA_6 6 ===| VSS2 Top 5 ===| CLK [CLK] D13 D13/PA_5 D13/PA_5 View 4 ===| VDD 3 ===| VSS1 2 ===| CMD/DI [DI] D11 D11/PA_7 D11/PA_7 1 ===| CS/DAT3 [CS] D8 D10/PB_6 D10/PB_6 9 = / DAT2/NC --------------'
------------------
Pickit2/3 pin map
------------------
----------.
\
\
==> |1 Vpp/MCLR
|2 VDD Target
|3 Vss ground
|4 ICSPDAT/PGD
|5 ICSPCLK/PGC
|6 Aux N.C.
/
/
-----------'
-
Latest version
16f-wave-player-pwm-super-lite-jalv2-9.1.zip (2021/12)
If you need to recompile the source code, use this Jalv2 version : jallib_full-1.6.0.7z -
Old version
16f-pwm-wave-player_jalv2_v8.8-2019-02.zip
16f-pwm-wave-player_v8.6-2017-02.zip
If you need to recompile the source code, use this Jalv2 version : jallib_full-1.2.0.zip
- You can find hex files in hex folder,
for instance,
sd-wav-player-16F1705-v8.8-2019-02.hex
You can write this file to flash using PicKit2/3 Programmer.
- For 8pin PICs: The .wav files must be converted to 'Mono' data.
For other PICs:The .waf files must be converted to 'Stereo' data. - Use converter tools for example,
foobar2000
Audacity
SoX
etc.
- SDSC/SDHC card, FAT16 and FAT32.
- First, format SD card with SD Card Formatter
- Copy PCM wav files to the SD card in root directory.
- Jalv2 mailing list
- Wave Player Super Lite family