>> Triplay MP3 CD-Player

Das hier ist die optisch aufgewertete Version der ursrpünglichen Internetseite www.triplay.de Inhaltlich wurden keine Änderungen vorgenommen. Die Informationen können daher z.T. veraltet sein.

Wichtig!

Die Entwicklung von Triplay wurde aufgrund Zeit- und Geldmangels eingestellt. Außerdem gibt es mittlerweile auf dem Markt genügend andere Lösungen, die zudem noch günstiger zu haben sind. Auf dieser Seite findet man vom Schaltplan bis zur Aufbauanleitung alles was man braucht, um Triplay nachzubauen. Trotzdem rate ich davon ab, da es keine Firmwareupdates geben wird. Die CDRom-Version läuft zwar sicher und stabil mit allen gängigen CDRoms, die FAT32-Version tuts aber anscheinend nur mit meiner Festplatte ;-) Die Firmwareupdates sind jedoch nicht das einzige Problem : Auch die Herstellung einer doppelseitigen Platine und die Programmierung der Flash-Eproms, des PIC-Controllers und des ispLSI2032 sind nicht ganz so einfach und ganz davon abgesehen auch nicht gerade billig.

Was ist (oder war ;-) TRIPL@Y ?

TRIPL@Y ist ein 'stand-alone' MP3-Player Selbstbauprojekt. 'Stand-alone' soll heissen : ohne PC. Alles was man also braucht ist eine TRIPL@Y-Platine, ein ATAPI-CD-ROM-Laufwerk, ein Alphanumerisches LC-Display (zum Anzeigen der Titelnamen), eine 12Volt/5Volt Spannungsversorgung und natürlich eine Endstufe/Vollverstärker.
MP3s hören wo immer man will - und das alles ohne nervigen PC !

Wie es dazu kam:

Im Juni 99 bin ich zum ersten Mal durch einen Artikel in der ct auf den MAS3507 aufmerksam gemacht worden. Dabei handelt es sich um einen Baustein, der in Echtzeit MPEG-1/2 Layer2/3 Streams dekomprimieren kann. In dem ct-Projekt benötigt man allerdings einen alten PC um die Daten vom CD-ROM zum Decoder zu senden. Das fand ich unbefriedigend. Es musste doch auch ohne einen alten, klobigen PC-Klotz gehen, ein paar Bytes vom CD-ROM zum Decoder zu bewegen. Also machte ich mich auf die Suche nach einem passenden Prozessor/Microcontroller. Vorraussetzung: schnell, reichlich I/O-Leitungen, gute Dokumentation, billig und die Verfügbarkeit eines freien C - Compilers. Ich hab mir reichlich Infos von HITACHI und TOSHIBA zukommen lassen, doch langsam wurde mir klar, dass das alles ohne Entwicklungsboard nichts wird. Ein Entwicklungsboard zu kaufen, wäre zu teuer gewesen. Doch dann kam mir eine Idee : Ich hatte bereits so eine Art Entwicklungsboard. Es verstaubte unbemerkt in einem Umzugskarton : Mein AMIGA A500. Automatisch fiel damit die Wahl des Prozessors auf den MC68k. Ich bastelte also zuerst eine ATAPI-Schnittstelle für den AMIGA-Expansionport, der bis auf ein paar zusätzliche Signale identisch mit dem 68k Prozessorbus ist. Als das funktionierte, baute ich die erste standalone 68k-Platine mit ATAPI-Schnittstele und einem LC-Display auf - zuerst noch ohne MP3-Decoder. Der wurde auf einer seperaten Platine aufgebaut und getestet. Jetzt gab es noch ein Problem: Der MP3-Decoder verlangt die Daten als seriellen bitstream. Also mußte noch eine programmierbare Logik her, die die Parallel-Seriell Wandlung übernahm. Später wurde dieser Logik auch die Adressdecodierung und das Interrupthandling einverleibt. Und nach langem testen und tüffteln gab der Decoder zum ersten Mal etwas von sich, dass sich so in etwa wie Musik anhörte...

>> Technische Daten

BOARD
CPU: Motorola MC68EC000FN8
RAM/ROM: 256k/256k (flash)
Display: DOT-MATRIX 4x20 oder 4x40 Zeichen
Decoder: MAS3507D (von Intermetall)
(spielt alle MPEG Layer 2/3 Bitraten bis 320kbps)

AUDIO
D/A: CS4331 (von Crystal)
Vssout : ca. 1.00 Volt

CD-ROM
ATAPI Interface (ab PIO-Mode 3), liest ISO9660-CDs
(level 1, level 2, JOLIET-Erweiterung; Single- und Multisession).


FESTPLATTE / Wechselplatte / Zip
FAT16 / FAT32 - Unterstützung leider erst mal nur mit 8.3 langen Dateinamen

>> Software

Wer glaubt man könnte so ein Projekt in Assembler realisieren, der kanns ja mal versuchen ;-) Mir ist das zu stressig. C ist übersichtlich und steht bei richtiger Programmierweise Assembler in Punkto Geschwindigkeit nichts nach.

Die Softwareentwicklung findet auf dem Amiga statt. Hierbei kommt der DICE-C Compiler von Matt-Dillon zum Einsatz. Der ermöglicht es nämlich Binärcode zu erzeugen, der direkt auf ein E-Prom geb(r)annt werden kann. Die Sourcen von DICE-C sind ebenfalls zu haben und der alte Matt meint in seinem Readme, daß es prinzipiell möglich wäre DICE auf anderen Systemen zu compilieren. (wer's will ;-)

Wer also eigene Software schreiben will, einen Amiga und einen Eprom-Flasher hat, kann dieses tun. Ohne Beispiel ist das jedoch nicht so einfach. Immer wieder werde ich gefragt, ob ich dazu nicht die Sourcen rausrücken könnte. Und das hab ich jetzt getan. Der Sourcecode steht nun im Downloadbereich zur Verfügung. Ihr habt aber jetzt auch die Möglichkeit den Sourcecode direkt einzusehen.Das geht mit nachfolgendem Link.

Sourcecode einsehen

>> Download

triplay_schem_r3.pdf Schaltpläne, im pdf-Format (182k)
triplay_source.zip Hier gibts den 68k C-Sourcecode für die CD-Version sowie für die HD-Version
Nützlich könnten vielleicht die Sources zur ATA/ATPAPI Ansteuerung sein sowie das selbstgeschriebene FAT32 bzw.ISO Filesystem.

>> Bilder

Der Prototyp

Der allererste Prototyp
Der Prototyp in Aktion
Die 'Wolle' auf der Rückseite ...
Die Decoderplatine
Mein Schreibtisch

Rev.1

Rev.1 von oben
Rev.1 von unten

Rev.2/3

Rev.2 von oben
Rev.2 von unten
Die auf der Rückseite eingelöteten RAMs
MAS3507D mit Audioteil
optionales LED-Display
Rev.2 mit CD-ROM und 4x40 Display
Rev.2 komplett (mit Tastatur und Drehencoder)

>> Links

Hardware

Protokolle, Spezifikationen und Referenzen

mp3

Amiga

verschiedenes ...


(c) 2007 by Ulrich Esser