(Redirected from MP3 Decoder)Jump to navigation Jump to search
|GPD2856C||Buttons||play from TF/U-disk, on board amplifier||MP3||32Gb U-disk, 16Gb TF|
|VS1003/VS1053||SPI||play from TF||File:VS1003datasheet.pdf|
|YX5200||serial||play from TF||MP3, WAV, WMA, ~48Khz||32Gb, FAT16, FAT32,||File:Yx5200 english manual.pdf, more serial commands|
|WTV020-SD-20S||serial or button||play from TF||~16Khz WAV, ~36Khz ADCPM(AD4)||1Gb, FAT||WTV020-SD-20S|
- MP3 control mode: play/pause, previos/next, volume up/down
- Point-to-point mode: each press will trigger one file to play
- loop-play mode: play all files one by one after booting
- Serial control play mode: control by MCU, play files control by commands from CLK and DI pin
- VS1003 RAM 5K conventional I/O 4, support decoding format is relatively small
- VS1053 RAM 16K conventional I/O 8, OGG / MP3 / WMA / WAV / FLAC (need to load the patch) / MIDI / AAC and so on.
- KT603 - https://www.amobbs.com/thread-5697911-1-1.html
- VS1053 - File:VS1053B英文版.pdf
Other Documents and Sources
- SPI SCK, MISO, MOSI - SPI interface
- SPI - XCS / XDCS - select and controll different operation
- DREQ - data requst, check if the module can output music data
- RST - IC reset, low ttl to reset
Code Steps of VS1053
- Mount the file system (we use the file system is Petit Fatfs) only mount the system before you can open the tf card music files
- Initialize the VS1053 chip (including hardware initialization and software initialization, and some value of the test)
- Reads the data of the specified music file into the cache array
- Through the way to read out the data stream to every 32 bytes once the way into the VS1053
- At this time VS1053 audio output will have music broadcast.
VS1053 Main Register
- MODE register is used to control the operation of the VS1053 and is one of the most critical registers. The reset value of this register is 0x0800, which is the default mode.
- BASS register can be used to set the high and low sound effects of the VS1053.
- CLOCKF register is used to set the clock frequency, multiplier and other related information.
- DECODE_TIME register is a register that stores the decoding time,
- HDAT0 and HDTA1 are two data stream header registers, different audio files, read out the value of different meaning, we can use these two registers to obtain the audio file rate, which can calculate the total length of the audio file.
- VOL register is used to control the output volume of the VS1053. This register can control the volume of the left and right channels respectively. The control range of each channel is 0 ~ 254, and each increment represents the attenuation of 0.5db. Therefore, the smaller the value, The greater the volume.