自制MP3播放器

时间:2007-04-29
此款名为yampp-7型MP3播放器,用了一片Nokia3310手机的LCD显示屏来显示操作,使用一片FT8U245 USB芯片!能使用多种小型Flash卡和多媒体卡作为歌曲文件存储器! 以下为原文!

点击看大图


[align=center]yampp-7 PCB装配图[/align]点击看大图

yampp-7 is a new portable MP3 player that uses Compact Flash or MultiMedia cards for storage of songs. You'll get about 1 minute of playing time per MB on the memory card, if your songs are 128 kbps.
The player is pretty small and the PCB has been designed to fit into a Teko "Soap" box.
It features a 84*48 pixel graphical LCD display, similar to the displays used on Nokia 3310 cell phones.
It's designed to operate from rechargable battery cells, either from a single 3.6V Li-Ion cell (recommended), or from 3*1.2V Ni-Mh cells. With a 600 mA Li-Ion cell, the playing time is about 12 hours, but you can find Li-Ion cells up to 1200 mAh that will fit in the player, extending the playing time to about 24 hours.
It's intended to be used with replacement Li-Ion cells for Mobile Phones, making it easy (and relatively cheap) to find a suitable cell. (I use mine with a cell for a Motorola V3688 Phone).
It also features a USB interface for fast downloading of songs to the memory card, and for firmware updates.
The player uses a special filesystem called YADL (Yampp Advanced Disk Layout), which maximizes the capacoty of the memory card.
It is playlist based and give the player a powerful but easy to use user interface.
1. Circuit Description

yampp-7 Block Schematic (click image for large version)

Processor
The central part of the yampp-7 player is the Atmel mega161 CPU. It's like a big-brother to the classic 8515 CPU that was used on the original yampp-3.
It has 16 kB Flash and 1024 bytes internal SRAM, both double as much as on the 8515.
It also features a bootloader option. This is been used in yampp-7, where it is now possible to download new firmware over the USB link.
USB
The USB link is controlled by a FT8U245BM chip from FTDI. This is a VERY easy to use USB chip, which basically looks like a simple 8-bit buffer (hence the name). There's no need for implementing any specific USB code in the player, to communicate over the USB link, you just read and write data directly to the chip.
Two status pins indicate if there's any data in the receive buffer, and if the transmitter queue is empty.
The USB chip is memorymapped and occupies a single address in the CPU address space.
Some discrete circuitry is added to the USB chip to enable it to startup in the correct mode, and to handle the power on reset and Soft-Connect feature.
Li-Ion charger
A Maxim MAX1811 chip is added for handling the charging of the Li-Ion cell.(Ni-Mh cells can also be used in the player, in this case, the MAX1811 is replaced by a diode and a resistor).
The MAX chip is a special USB to Li-Ion charger, and it controls the relatively complicated charge sequence to the Li-Ion cell.
The Li-Ion cell (or Ni-Mh cells), supply 3.6V to the other components.
Memory card Interface
The player can be used with either a Compact Flash card or a MultiMedia Card.
The Compact Flash (CF) interface is pretty similar to a standard ATA interface. The nice thing about it, is that it can run in 8-bit mode, making it very simple to interface to a microprocessor.
In the yampp-7, the CF interface is mapped directly into the memorymap of the processor. To control the CF card and to read/write data, the standard ATA register bank of is used, and address bits A8-A11 is used to select the register.
The MultiMedia Interface is a serial interface with an SPI bus. As the mega161 already has such a bus, the MultiMedia card is simply hooked onto this bus, with a single address line used as chip select.
Address decoding
To simplify the addressing of the CF card and USB interface, a 74HC00 is used to gate the RD and WR signals to the USB chip depending on the state of address line A15. With this, the USB chip will be located at address 0x8000, and the CF card's registers are located at 0x1000 to 0x1F00.
MP3 Decoder
The MP3 decoder is, as on other yampp's the VS1001K chip from VLSI. It's an easy to use decoder with a built in DAC. It's clocked from a 12.288 MHz crystal, enabling bitrates up to 256k bps.
It also has a built in headphone amplifier.
Player control
The player is controlled with 4 pushbuttons. One of these is connected to the ICP input of the CPU, which can generate an interrupt to the CPU. When the player is stopped, it enters power-down mode after 1 minute. The interrupt from the button can then be used to wakeup the CPU from the low-power sleep mode.
All buttons have two functions, one is reached by a short press on the button, and the other by holding down the button. Depending on player state, the buttons control various functions.
2. Pictures

The yampp-7 in it's cage.点击看大图


[align=center] You here see why the Teko box is call "Soap"
(click to see large image)
[/align]
Partslist
Part value Package
-------- ------------- -----------------
R1,R6 10k R0805
R2,R3 100R R0805 *
R4 1M R0805
R5,R8,R11 4k7 R0805
R7 1k5 R0805
R10 2k2 R0805
R12 470 R0805
R13 33k R0805
R14,R15 27 R0805
R16 51k R0805
C1,C6,C7 100nF C0805
C9-C11 100nF C0805
C2-C5 33pF C0805
C8 10uF/16 ELNA_RV2_4
C14 10uF/16 Tantal ! C6032
C15 1uF/16 Tantal C3528
C12,C13 100uF/10 ELNA_RV2_63
D1 BAS32 SOD80 *
T2 BC817 SOT23
IC1 ATmega161L TQFP44
IC2 VS1001K SOIC-28
IC4 74HC00D SO14
IC5 MAX1811 SO8 **
IC6 FT8U245BM QFP32
Q1 4.000MHz HC49U-V Crystal
Q2 12.288MHz HC49U-V Crystal
Q3 6.00MHz Ceramic Resonator
J1 Compact Flash Connector
J2 LCD/Programming Angled Connector 2*5 2mm
SH1 MultiMedia Card Connector
X1 Headphones 3.5mm Jack
X2 USB Connector Type787780
SW1-SW4 ALPS Type SKHHLQ pushbutton
* = only used with Ni-Mh cells
** = only used with Li-Ion cells

Schematic

yampp-7 Rev. D Schematic (Click to see high res. version)

Suitable Batteries
You can use either Li-Ion (recommended) or Ni-Mh cells for the player. A single Li-Ion cell is 3.6V, often available in a flat square form and is perfect for powering the player. If you use Ni-Mh cells, you need three cells in series to get 3.6V. Replacement Li-Ion cells for Mobile Phones is the cheapest way to power the player. You can use a number of different cells, I'll try to maintain a list here of suitable cells.
On the left is a small collection of the cells I've tried so far. From the CF card, going clockwise it is: A Motorola V3688 600mAh Li-Ion cell, a similar Motorola cell with wires added, 3 * 4/5 AAA size Ni-Mh cells and last a Nokia 3310 950mAh Li-Ion cell.
Connection info
Downloads
Download sourcecode for yampp-7 Bootloader
Next page - yampp-7 assembly -->

  
上一篇:MC34063的设计(DC-DC)
下一篇:基于电流型PWM集成控制器UC3842/3843的隔离单端反激式开关

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料