Use at your own risk! This edition, dec 20, 2001 to Feb. 20, 2003. By Raphael Abrams, not for commercial use under any circumstances! ------------------------------------------------------------- A Friendly Note on PIC Burning Please remember to clear the BROWNOUT fuse when burning the pic. Otherwise, nothing will work. This is the most common mistake, by far! ------------------------------------------------------------- HOW IT WORKS: The first thing to do is to format the CF card FAT32 and load the root directory with songs. Use a standard reader/writer like the Zio. It plugs into a USB port. Drag and drop the files onto the card in windows. The order that you put them onto the card is the order that they play. All files must be on the root directory, I haven’t added directory support. First, the pic resets the CF card and the decoder chip. Then it sends the required spi commands to the decoder to set it up (volume, soft reset, data bit order and clock edge polarity). The pic sends a “read sector” command to the compact flash card to get some information from the boot block. It then figures where the FAT and the root directory are, and reads each file in the root directory one by one. Once it has located a file, it clocks the card 512 times per sector sending all the information one byte at a time to the decoder chip. The decoder chip simply needs a valid data stream to be clocked in, and sound comes out of the built in DAC/headphone amp. The decoder has a data request line, so it asks for bytes when it needs them. All communication is sychronous, using the PIC’s built in USART for data and SPI for commands/setup. This is I think the simplest standalone mp3 player yet. If you know the PIC reasonably well, and can read a datasheet, you’re set. It’s also tiny, and not too expensive; at around $100 in parts for a 128MB setup. There’s no display or any fancy stuff, but all the other designs have that. There’s plenty of free pins on the PIC, so you could easily integrate a serial lcd or something like that. There’s enough processor time, ram and code space left to go nuts with extra features. And the interrupt is still free. Link to expresspcb, a cheap and easy printed circuit board maker (download their free software). If you use this, you will need to use their (excellent) service. The software will not print out for a do-it-yourself etching project. Sorry. If you end up with extra boards, let me know and maybe I can hook you up with someone who needs them. I do not make boards for sale. link to microchip, makers of the PIC line of microcontrollers. DOWNLOAD THE DATASHEET!!! and MPLAB! link to VLSI SOLUTIONS, makers of the vs1001 decoder DOWNLOAD THE DATASHEET!!! YAMPP, another player based on the vs1001, and A PLACE TO BUY THE VS1001 (the only on that sells in small quantity. I have made a few purchases and they have a decent turnaround time. link to a very helpful web page by Mark Samuels on interfacing a compact flash card to a pic. download the circuit cellar article!!! Thanks to: Mark Samuels for his help with the compact flash interface, which pretty much made this possible! Amador Bouza of Portugal for his generous donation of eagle format schematics and pcb layouts, now in the downloads section! (note: i have not used them or tested them. you’re on your own with these!) And to all the other people whose research and development was distilled by me into this dinky beginners project! And especially thanks to kristi for putting up with me while i decayed to a zombielike state hacking this thing together! |