Elektor
2/99
Ein Schaltungsprojekt, das den
(Hobby-)Elektroniker ohne langes
Zögern zu Lötkolben, Platine und PC
greifen läßt, ist unser autonomer WAV-
Player mit Sicherheit. Gerade an kalten
Winterabenden, wenn es draußen so
richtig schneit und daheim im Wohn-
zimmer am gemütlichsten ist, macht
der Bau dieser Schaltung besonderen
Spaß. Der Erfolg ist in jedem Fall hör-
bar, unabhängig davon, ob der WAV-
Player als High-Tech-Türklingel, als
Einbrecherscheuche oder als
Geräuschgenerator im Modellbau ein-
gesetzt wird. Die moderne Elektronik
macht es möglich, daß eine ganze
Reihe komplexer Funktionen auf einer
Platine mit recht bescheidenen Abmes-
sungen untergebracht werden können
und die Verbindungen zur Außenwelt
den bekannten Standards entsprechen.
Der WAV-Player ist zu den meisten auf
dem PC gebräuchlichen WAV-Forma-
ten kompatibel. Die Erkennung und
Einstellung nimmt die Software auto-
matisch vor, so daß die Klänge stets mit
der besten möglichen Qualität wieder-
gegeben werden.
E
N T W I C K L U N G S K O N Z E P T
Die Schaltungs- und Programment-
wicklung hatte verschiedene Eigen-
schaften zum Ziel, die den WAV-Player
zum leicht programmierbaren und uni-
versell einsetzbaren Klangerzeuger
machen. Außer einem einfachen und
kompakten Schaltungsaufbau war die
Auswechselbarkeit des Klanges gefor-
dert, so daß sich der WAV-Player von
den bekannten “klingenden Glück-
wunschkarten” wohltuend unterschei-
det. Ferner stand eine akzeptable
Klangdauer bei möglichst hoher Klang-
qualität im Vordergrund der Entwick-
lung. Die Auswechselbarkeit der
Klänge wurde durch ein Flash-EPROM
als Klangspeicher und eine serielle
Schnittstelle erreicht, über die beliebige
Unser WAV-Player ist
eine autonome Schal-
tung, in die Klangdateien
im WAV-Format vom PC
oder einem anderen
Computer über eine inte-
grierte serielle Schnitt-
stelle hineingeladen wer-
den können. Die Länge
des Klanges hängt von
der gewählten Abtastfre-
quenz ab, sie liegt zwi-
schen 8 und 43 Sekun-
den. Herz der Schaltung
ist der Mikrocontroller
AT 90 S 2313 von Atmel.
26
WAV-Player
Wave-Klänge ohne
PC und Soundkarte
Spezifikationen
Speicher:
2 Mbit flash
D/A-Wandler:
12 bit
Filter:
5
e
Ordnung (switched capacitor filter)
Serielles Interface:
RS232
Serielles Format:
57k6, 8N1*
Sample-Frequenzen: 6, 8, 11,025 en 22,05 kHz
Wiedergabe:
Mono
Wortbreite:
8 oder 16 bit
Spieldauer:
8…43 Sekunden
Verstärker:
1-Watt-Brückenendstufe
* siehe Text
COMPUTER & PERIPHERIE
WAV-Dateien vom Computer in den
WAV-Player geladen werden können.
Gleichzeitig bedeutet dies, daß die
Klänge vorher mit Hilfe des Compu-
ters und einem dafür geeigneten Pro-
gramm geschnitten, verfremdet oder
auf andere Weise bearbeitet werden
können. Auch die Übernahme von
Klängen, die von CDs oder anderen
Quellen stammen (Urheberrechte
beachten!) und mit der Soundkarte
digitalisiert wurden, ist mit solchen
Programmen meistens möglich. Ein
bekanntes Windows-Shareware-Pro-
gramm, das sich für diesen Zweck
besonders eignet, heißt “Cool Edit”
und stammt von Syntrillium Software.
Zwingend notwendig ist die Win-
dows-Umgebung allerdings nicht;
dank des universellen WAV-Player-
Konzeptes kann auch ein DOS- oder
Mac-Programm zur Bearbeitung der
Klangdateien dienen. Die Dateien kön-
nen mit jedem Terminalprogramm in
den WAV-Player geladen werden, das
das RAW-ASCII-Format beherrscht.
Für Windows-Freunde wurde ein spe-
zieller WAV-Lader geschrieben, durch
den der Dateitransport besonders ein-
fach wird.
H
A R D W A R E
Bild 1 zeigt das Funktionsschema der
Hardware. Im Mittelpunkt steht der
Mikrocontroller AT 90 S 2313 von
Atmel. Der Controller ist auf der einen
Seite über eine serielle RS 232-Schnitt-
stelle mit dem Computer verbunden,
auf der anderen steuert er einen D/A-
Wandler, einen variablen Tiefpaß und
den Endverstärker. Die Klangdateien
werden in einem vom Controller ver-
walteten Flash-EPROM
dauerhaft gespeichert.
Zum Starten der Wie-
dergabe ist ein Taster
(Play) vorhanden, und zwei LEDs
(Play und Record) zeigen den Betriebs-
zustand an. Übrig bleibt noch die
Stromversorgung; aus der Spannung
9 V erzeugt sie die beiden benötigten
Betriebsspannungen 8,4 V und 5 V.
Die hohe Leistungsfähigkeit des AT 90
S 2313 trägt maßgeblich dazu bei, daß
die gesamte Hardware aus nur fünf ICs
besteht. Wie die Schaltung in Bild 2
zeigt, wurde die serielle Schnittstelle
mit einem einzigen diskreten Transistor
(T1) und drei Widerständen realisiert.
Auch die übrigen Komponenten rund
um den Controller sind schnell erklärt:
Der interne Oszillator
arbeitet mit dem exter-
nen Quarz X1 und den
Kondensatoren C1 und
C2. Play-Taster S1 wird
durch die Controller-
Software entprellt, R4
schützt den Controller-Eingang vor
Schäden infolge statischer Aufladun-
gen, und C3 unterdrückt eventuell ein-
gestreute hochfrequente Störsignale.
Die LEDs D1 und D2, die den Betriebs-
zustand signalisieren, sind über Strom-
begrenzungswiderstände mit den Con-
troller-Ausgängen verbunden. Das
Flash-EPROM (IC2) hat eine Speicher-
kapazität von 2 MBit, die in 1024 Seiten
zu 264 Byte organisiert sind. Da zum
Lesen einer Seite 64 Taktimpulse nötig
sind, können die Daten nicht unmittel-
bar vom Flash-EPROM zum D/A-
Wandler transportiert werden, sondern
müssen vorher einen
Ringpuffer (64 Bytes im
RAM) durchlaufen. Die
27
Elektor
2/99
AT90S2313
RECORD
PLAY
PLAY
RS
232
FLASH ROM
RxD
D
A
DATA
FREQ
MUTE
GAIN
9V
0V
8V4
5V
0V
POWER
990015-11
1
Bild 1: Funktions-
schema des autono-
men WAV-Players.
Bild 2: Die Schaltung
besteht im wesentli-
chen aus nur fünf ICs.
(MISO)PB6
(MOSI)PB5
(AIN1)PB1
(AIN0)PB0
PD2(INT0)
PD3(INT1)
(SCK)PB7
(OCI)PB3
PD0(RxD)
PD1(TxD)
PD6(ICP)
PD4(T0)
PD5(T1)
XTAL1
XTAL2
RESET
S2313
AT90
IC1
PB4
PB2
20
10
19
18
17
16
15
14
13
12
11
5
4
1
2
3
6
7
8
9
K1
ISP
C4
100n
R1
100k
R2
100k
R3
10k
T1
BC547B
TxD
R5
1k
R4
3k3
D1
S1
C3
100n
C1
22p
C2
22p
X1
10MHz
R6
1k
D2
IC3
DOUT
VREF
LOAD
VOUT
1257
CLK
DIN
LTC
1
4
8
5
6
2
3
7
C6
100n
CLKOUT
CLKIN
IC4
VOUT
1063
VOS
VIN
LTC
1
4
6
2
8
5
3
7
C8
100n
C7
100n
R8
4k7
R9
4k7
C9
100n
C10
100
µ
10V
R11
15k
C15
2
µ
2
10V
4k7
P1
IC5
GND2
GND1
!OUT-
OUT+
VIN
TDA7052A
VC
VP
1
4
5
6
2
3
7
LS
8
Ω
2W
C14
100n
C5
100n
C13
220
µ
25V
C11
1n
C12
470n
R10
15k
R7
100k
IC6
LP2950CZ5.0
U+
U+
C16
10
µ
10V
D3
1N4001
7...15V
5V
5V
AT45D021
RESET
IC2
SCK
CS
SI
SO
WP
29
32
28
4
1
6
5
7
5V
990015-12
2
gepufferten Daten werden während
des Schreibens der Seitenadresse aus-
gelesen. Ferner sind die Daten so struk-
turiert, daß beim Lesen möglichst
wenig Zeit verlorengeht.
Die Eingänge CLK, DIN und LOAD
des D/A-Wandlers sind mit den Aus-
gängen des Controllers verbunden,
während Ausgang Vout kapazitiv mit
dem nachfolgenden Tiefpaß (IC4)
gekoppelt ist. Der hier verwendete
LTC 1063 gehört zur Gruppe der Swit-
ched Capacitor Filter, er wird ebenfalls
vom Controller gesteuert. Ein kleiner
Schaltungskunstgriff sorgt dafür, daß
die mittlere Filter-Eingangsspannung
2,5 V beträgt. Die benötigte Hilfsspan-
nung wird von R8 und R9 aus der 5-V-
Spannung herabgeteilt und gelangt
über R7 zum Filtereingang. Der Con-
troller steuert die Eigenschaften des Fil-
ters über dessen Taktfrequenz.
Der Lautsprecher wird von dem als
Brückenverstärker betriebenen End-
verstärker-IC TDA 7052 A (IC5) gesteu-
ert; die Ausgangsleistung beträgt ca.
1 W. Die Lautstärke läßt sich von Hand
mit Trimmpoti P1 einstellen. Der Con-
troller sorgt über seinen Ausgang PD3
für die automatische Stummschaltung
(Mute) des Endverstärkers in den Wie-
dergabepausen.
Erklärt werden muß noch die Funktion
von Steckverbinder K1: Mit seiner
Hilfe ist es möglich, die Controller-Soft-
ware unmittelbar in der Schaltung (in-
circuit) zu modifizieren und an die
eigenen Vorstellungen anzupassen.
Der Quellcode des vom Elektor-Labor
entwickelten Originals ist unter der
Bestellnummer EPS 996006-1 zu den
bekannten Bedingungen beim Elektor-
Verlag erhältlich.
Für den Schaltungsaufbau auf der Pla-
tine, deren Layout und Bestückungs-
plan Bild 3 zeigt, sind keine besonde-
ren Hinweise nötig. Wenn die ICs in
Fassungen montiert werden und
sowohl Fassungen als auch ICs seiten-
richtig auf der Platine sitzen, kann
eigentlich nichts schiefgehen.
C
O O L
E
D I T
Bevor eine WAV-Datei in den WAV-
Player geladen werden kann, muß sie
in der Regel bearbeitet und gegebe-
nenfalls in ihrer Länge angepaßt wer-
den. Dazu wird auf dem Computer ein
Klangeditor-Programm gestartet, das
gewissermaßen als Bearbeitungs- und
Schneidetisch dient. Ein vielseitiger
und leistungsfähiger Klangeditor für
den Windows-PC ist das schon
erwähnte Programm “Cool Edit”. Die-
ser Klangeditor ist deshalb empfeh-
lenswert, weil er das Resampling von
Klangdateien (Ändern der Sampling-
Frequenz und -Schrittweite) im Ver-
gleich zu anderen Editoren besonders
gut beherrscht. Die Klangqualität des
resampelten Klanges wird davon in
hohem Maß beeinflußt.
Von der Internet-Website
http://www.syntrillium.com kann man
die neueste Shareware-Version von
Cool Edit kostenlos herunterladen.
Neben vielen anderen nützlichen
Funktionen sind im Zusammenhang
mit dem WAV-Player insbesondere das
Ändern der Sampling-Frequenz, das
Schneiden und Kopieren von Teilen
aus WAV-Dateien und das Anpassen
des Lautstärkepegels von besonderem
Interesse. Ferner kann man ohne große
Umstände eine Stereo-WAV-Datei in
das Mono-Format umwandeln, so daß
die Dateilänge auf ungefähr die Hälfte
schrumpft. Bei der Anzahl der mögli-
chen Abtastwerte pro Sample hat man
die Wahl zwischen 8 Bit (256 Stufen)
und 16 Bit (65536 Stufen).
28
Elektor
2/99
(C) ELEKTOR
990015-1
C1
C2
C3
C4
C5
C6
C7
C8
C9
C10
C11
C12
C13
C14
C15
C16
D1
D2
D3
H1
H2
H3
H4
IC1
IC2
IC3
IC4
IC5
IC6
K1
P1
R1
R2
R3
R4
R5
R6
R7
R8
R9
R10
R11
S1
T1
X1
LS
+
0
T
TXD
T
990015-1
(C) ELEKTOR
990015-1
3
Bild 3: Auf dieser Platine finden alle
Bauelemente ihren Platz.
Stückliste
Widerstände:
R1,R2,R7 = 100 k
R3 = 10 k
R4 = 3k3
R5,R6 = 1 k
R8,R9 = 4k7
R10,R11 = 15 k
P1 = 4k7, Trimmpoti, stehend
Kondensatoren:
C1,C2 = 22 p, keramisch
C3…C6,C8,C9,C14 = 100 n, kera-
misch
C7 = 100 n, MKT
C10 = 100
µ/16 V, stehend
C11 = 1 n, MKT
C12 = 470 n, MKT
C13 = 220
µ/25 V, stehend
C15 = 2
µ2/10 V, stehend
C16 = 10
µ/10 V, stehend
Halbleiter:
D1 = LED, High-eff., rot
D2 = LED, High-eff., grün
D3 = 1N4001
T1 = BC547B
IC1 = AT90S2313 10PC (EPS
996505-1)
IC2 = AT45D021JC
IC3 = LTC1257 CN8
IC4 = LTC1063 CN8
IC5 = TDA7052A
IC6 = LP2950CZ5.0
Außerdem:
32-polige PLCC-Fassung für IC2
S1 = Taster, Schließer
LS = 8
Ω/2 W
K1 = 6-polige SIL
X1 = Quarz, 10 MHz
Gehäuse: Bopla E410
Platine: EPS 990015-1*
Programmierter Controller: EPS
996505-1*
Diskette mit Quellkode des Control-
lerprogramms und PC-Windows-
Software: EPS 996006-1*
* siehe Service-Anzeige in der Heft-
mitte
Aus der Tabelle geht hervor, daß die
Wiedergabedauer der gespeicherten
WAV-Datei stark von deren Sample-
Frequenz abhängt. Für “musikalische”
Klänge ist eine möglichst hohe Sample-
Frequenz (hier maximal 22 kHz) zu
empfehlen, während für Sprache und
einfache Geräusche eine niedrigere
Sample-Frequenz ausreicht. Mit der
Sample-Frequenz 8 kHz erzielt man
eine Klangqualität, die ungefähr einer
guten Telefonverbindung entspricht.
Die Anzahl der Sample-Stufen (8 oder
16 Bit) wirkt sich unmittelbar auf das
Signal-Rausch-Verhältnis des wieder-
gegebenen Klanges aus, und ferner
sind die Verzerrungen bei 8-Bit-Sam-
ples höher als bei 16-Bit-Samples. Der
WAV-Player reduziert übrigens 16-Bit-
Dateien auf 12 Bit, denn der D/A-
Wandler (IC3) arbeitet mit einer maxi-
malen Auflösung von nur 12 Bit. Das
ist nicht unbedingt ein Nachteil, denn
dadurch wird ein recht guter Kompro-
miß zwischen Klangqualität und Spei-
cherplatz-Bedarf erzielt. Wenn man
mit dem Klangeditor den Lautstärke-
pegel so wählt, daß der gesamte ver-
fügbare Amplitudenbereich genutzt
wird, ist die Klangqualität optimal. Da
der WAV-Player die Wiedergabe mit
voller Lautstärke startet und am Ende
der Wiedergabedauer abrupt abbricht,
empfiehlt es sich, den Klang mit Hilfe
des Klangeditors “sanft” ein- und aus-
zublenden. Nach einigem Experimen-
tieren dürfte dies ohne große Mühe
gelingen. In jedem Fall muß die Klang-
datei mit dem Klangeditor in ein For-
mat gebracht werden, das vom WAV-
Player verarbeitet werden kann.
Nach Abschluß der Klangbearbeitung
wird die Datei vom Computer in den
WAV-Player geladen. Dafür kann im
Prinzip jedes Programm verwendet
werden, das in der Lage ist, eine Datei
unmodifiziert über eine serielle
Schnittstelle auszugeben. Das Lade-
programm kann ein Terminalpro-
gramm sein, von dem das Format
“RAW-ASCII” unterstützt wird, oder
man greift zu dem speziell für den
WAV-Player geschriebenen Hilfspro-
gramm, das auf der Windows-Ober-
fläche läuft. Beim Hineinladen in den
WAV-Player prüft die WAV-Player-Soft-
ware,
ob die Datei eine WAV-Klangdatei
ist,
die Sample-Frequenz einem der vor-
programmierten Werte entspricht,
es sich um einen monophonen
Klang handelt,
für die Codierung das PCM-Verfah-
ren angewendet wurde,
die Wortbreite 8 oder 16 Bit beträgt.
Wenn alle Bedingungen erfüllt sind,
kann die Datei vollständig in den
WAV-Player geladen werden; ande-
renfalls wird ein erkannter Fehler
durch Aufleuchten der roten LED sig-
nalisiert.
Ein Übertragungsproblem tritt auf,
wenn der PC mit dem Betriebssystem
Windows 3.1 läuft. Bei dieser älteren
Windows-Version liegt die maximale
Übertragungsgeschwindigkeit der seri-
ellen Schnittstellen deutlich niedriger
als die vom WAV-Player verwendete
Geschwindigkeit von 57600 Baud. Das
Problem wird gelöst, indem man beim
Einschalten des WAV-Players den
Taster S1 gedrückt hält. Die WAV-
Player-Software arbeitet dann mit einer
Übertragungsgeschwindigkeit von
9600 Baud, alle übrigen Einstellungen
bleiben unverändert.
Während der Datei-Übertragung
blinkt die rote LED (D1); sie beginnt
kontinuierlich zu leuchten, sobald das
Flash-EPROM seine Kapazitätsgrenze
erreicht hat. Wenn nach einer Karenz-
zeit von 500 ms keine Daten mehr ein-
treffen, verlischt die rote LED. Die
grüne LED (D2) signalisiert die allge-
meine Betriebsbereitschaft des WAV-
Players, sie blinkt während der Wie-
dergabe.
Wenn der WAV-Player als musikalische
Türklingel Verwendung finden soll,
kann die Schaltung an einem handels-
üblichen Steckernetzteil betrieben wer-
den. In diesem Fall übernimmt Taster
S1 die Funktion des Klingelknopfes.
Ein besonderer Überraschungseffekt
entsteht, wenn man für bestimmte
Gelegenheiten (Geburtstage, Weih-
nachten, Ostern usw.) Klänge, Geräu-
sche oder Ansagen in den WAV-Player
lädt, die an das jeweilige Ereignis
anknüpfen. Während der Urlaubszeit
könnte lautes Hundegebell solche Zeit-
genossen abschrecken, die in unlauterer
Absicht an der Haustür klingeln. Der
Phantasie sind auch hier keine Gren-
zen gesetzt.
(990015gd)
29
Elektor
2/99
Bild 4: Mit der Share-
ware-Version des
Klangeditors “Cool
Edit” können Klangda-
teien bequem bearbei-
tet werden.
Dateien, Formate und Spielzeit
Sample-Frequenz
Wortbreite
Dateigröße
Spielzeit
22,05 k
8
256 k
11,92 s
16/12
341 k
7,94 s
11,025 k
8
256 k
23,83 s
16/12
341 k
15,89 s
8 k
8
256 k
32,77 s
16/12
341 k
21,85 s
6 k
8
256 k
43,69 s
16/12
341 k
29,13 s