By Zhi-Hern Loh |
Overall system descriptionReading flowcharts would be helpful in understanding the operation of the MP3 Player. The flowcharts describing the MP3 Player's operation can be found here. RationaleThere were several design considerations for the project, data sources, decoding chips, ATMEL MCUs and the user interface. The design decisions that I made are explained in the following sections. Data sourcesTransfer rates are the determining factor for the possible data sources. For a PC serial port, the maximum possible RS-232 transfer rate is 115.2kbps (14.4KBps). At this speed we can at most send a 48kbps stereo MP3 file (average size 2500KB). The minimum speed required can be calculated by dividing the file size by the length of the song. For a MP3 of 2500KB and duration 3mins, minimum transfer speed would be 13.8KBps. For a serial MP3 player, transfer rates are limited by the speed of the serial port and not the MCU - decoder interface because for the MCU - decoder interface, a MP3 data byte can be sent in roughly 40 cycles at 16 Mhz (taking 2.5E-6 s/byte). Translating to a theoretical maximum transfer rate of 400KB/s. When we take into consideration the 70 cycles of overhead when calling a C procedure, the transfer rate drops to about 150KB/s. Therefore the limiting factor for the MP3 player is the serial interface. Initially the data source was not the serial port but a CD-ROM drive. The drive that I used was 24X (24*150kBps) which was more than sufficient for MP3 playback. Unfortunately the drive could not be used in the final version because the bugs could not be sorted out in time. This cost me about 2 weeks worth of wasted work soldering and programming the notebook CD-ROM drive. Decoding chipsThere were a few decoder chips that I considered and they are described below:
ATMEL MCUsThere were 2 MCUs considered for this project:
User Interface
|
|