Přehrávání zvuku z pamětí EPROM
Pokud se vám náhodou doma válí spousta pamětí EPROM ze starých základních desek a podobně, tak tohle je jedna z mnoha věcí, co s mimi můžete udělat.
Princip zapojení
Princip záznamu spočívá v naprogramování jednotlivých vzorků zvuku postupně do jednotlivých buněk paměti.
Při přehrávání se pak postupně čtou jednotlivé bajty paměti a digitální výstup se pomocí digitálně-analogového převodníku převádí zpět na nízkofrekvenční signál.
Čtený bajt se volí pomocí tzv. adresních vývodů A0-An, data uložené v příslušné buňce jsou pak k dispozici na datových vývodech D0-D7.
Na tyto vývody je připojen D/A převodník, ze kterého se získává zvuk. Postupné čtení se v mé konstrukci provádí pomocí čítačů, jejichž výstupy jsou připojeny na adresovací vodiče.
V ukázkovém schématu je zakreslena paměť 27C512 s kapacitou 512 kbitů, což je 64 kB. Tato kapacita odpovídá 65536 bajtům dat, tedy 65536 vzorkům zvuku.
Při standardní vzorkovací rychlosti 11025 vzorků/sec, což je ještě použitelná kvalita, to odpovídá skoro 6-ti sekundám záznamu.
Jako generátor taktovacího kmitotu je použit obvod 4046,
jehož frekvence se nastaví na vzorkovací frekvenci záznamu pomocí P1.
Po přehrání celého obsahu paměti se nastaví výstup Q5 čítače IC3 na log.1,
čímž zablokuje generátor taktovacího kmitočtu a přehrávání se zastaví.
Nové spuštění se provede pomocí tlačítka START, které vyresetuje oba čítače.
Pokud bude použita větší či menší paměť,
tak bude blokování oscilátoru 4046 připojeno ne na Q5, ale na první nevyužitý
výstup čítače. Má-li se záznam přehrávat neustále dokola, tak se blokovací výstup uzemní.
Jelikož po zapnutí napájení se na výstupech čítačů objeví náhodná
kombinace 1 a 0, musí se stisknout tlačítko START.
Má-li zapojení přehrávat hned po připojení napájení, zapojí se místo tlačítka START kondenzátor s kapacitou asi 1μF, který
čítače automaticky vyresetuje.
|
|
Nejjednoduššími D/A převodníky jsou zapojení podle obrázků.
Zapojení vlevo je sice jednodušší, ale odpory musí být vždy dvojnásobné a tak by
se musely hodnoty nějak poskládat. Odpory pro zapojení vpravo se dají sehnat
poměrně snadno, ale zase jich je víc. Zem převodníku se musí spojit se zemí
přehrávače. Pomocí P1 se reguluje hlasitost. Na výstup se připojí libovolný
zesilovač. Pro vyšší kvalitu by šly použít i integrované převodníky, ale
zapojení by se značně komplikovalo.
Některé pameti vyžadují, aby vývody CS a OE byly po zapnutí v
úrovni log.1, jinak se po zapnutí napájení nechovají tak, jak mají. Nevím jak to
popsat - zkrátka paměť nečte z adres zvolených adresovacími vývody.
Zapojení se pak upraví připojením těchto 2 vývodů přes odpor 1k na GND
a kondenzátor 100nF na +5V.
Zdroj dat pro paměť
Nejprve vytvoříme v libovolném editačním programu požadovaný
zvuk a uložíme ho ve formátu PCM WAV v kvalitě 8-bitů, mono. Rovněž je třeba zvolit
vzorkovací rychlost. Mám-li třeba záznam délky 3,5 vteřiny a paměť 64kB tak
vzorkovací rychlost musí být menší nebo rovna 65536 / 3,5 = 18724 vzorků / sec.
V souboru wav je pak krátká hlavička udávající počítači vzorkovací rychlost,
8/16 bit a mono / stereo, .... Ta je však na obtíž a měla by být smazána.
Hlavička je dlihá přesně 60B, takže je třeba smazat prvních 60B souboru.
Pak už následují vlastní zvuková data, která se naprogramují do EPROM. Pokud
nebude hlavička smazána, bude na začátku záznamu slyšet lupnutí.
Druhy a kapacity pamětí
Paměť EPROM se pozná na první pohled podle průhledného okénka na
mazání UV světlem. Někdy je okénko zalepeno nálepkou, aby se paměť samovolně
nesmazala. Někde v označení typu paměti je napsáno 27C a pak číslo symbolizující
velikost paměti v kbitech (např. 512). Paměti se vyrábí ve velkém rozsahu
kapacit a liší se pak počtem vývodů.
Dalším typem je paměť EEPROM, která se nemaže UV světlem, ale
elektricky. Označení je různé, často je to 28Fxxx či 28Exxx nebo 29Fxxx atd..
Tyto paměti jsou rovněž použitelné a prodávané.
Tu a tam taky narazím na paměť, která má podezřele mnoho
vývodů. Nejdřív jsem si říkal, že jde o dobrý úlovek, ale ukázalo se, že jde o
paměť se 16-ti bitovým výstupem s kapacitou pouze 64kB (pouzdro mělo 40 vývodů).
Značení pamětí EPROM |
Označení |
Velikost |
Počet vzorků |
27C16 |
2 kB |
2048 |
27C32 |
4 kB |
4096 |
27C64 |
8 kB |
8192 |
27C128 |
16 kB |
16384 |
27C256 |
32 kB |
32768 |
27C512 |
64 kB |
65536 |
27C010 |
128 kB |
131072 |
27C020 |
256 kB |
262144 |
27C040 |
512 kB |
524288 |
27C080 |
1024 kB |
1048576 |
Poslední aktualizace: 21.3.2004
|