USB-soros átalakító mint "hangkártya"

Csak erős idegzetűeknek!
Az FTDI chipes USB-soros átalakítóm képes 921600 bit/s-os sebességgel adni. Ez már elég gyors ahhoz, hogy PWM-el és egy alul-áteresztő szűrővel "rendes" audió jelet lehessen belőle kicsalogatni.

Figyelem: lehet, hogy a soros port nem bírja ezt a nem rendeltetésszerű használatot. Csak saját felelősségre!

Elsőként kell valamilyen egyszerűen kezelhető audió formátum, ez nálam az unsigned 8 bit PCM lett. Ilyet az Audacity-vel könnyen elő lehet állítani: megnyitjuk a hangfájlt, majd Sávok->Stereó sávból mono menüponttal egy sávot csinálunk belőle.
Ezután Fájl->Exportálás; formátumnál: egyéb tömörítetlen fájlok; katt a beállítások-ra; fejléc: RAW; kódolás: unsigned 8 bit pcm.

Most kell egy program ami megcsinálja a PWM-et:
http://pastebin.com/X4eBGwfT
Ezt gcc-vel lefordítjuk majd a kedvenc soros terminál emulátorunkkal (pl.: cutecom) beállítjuk a soros port sebességét 921600 baud -ra.
Utána:

./pwm > /dev/ttyUSB0 < exportalt_file.raw

és szól a "zene"!

Hozzászólások

Tetszik az ötlet, bookmark. :)

Bár én mikrokontrollerrel szeretnék majd ilyet "játszani" (eddig is tervben volt, csak nem néztem még utána a formátumnak) - ez az Audacity-s PCM előállítás jó lesz majd még.

Ugye nem akarod azt mondani, hogy ezt a GCC leforditja? (Nem az include-ok listajanak hianyara gondoltam, hanem arra, hogy ott szerintem hianyzik egy zarojel.) Amugy mi az isten haragja az a 'b'-akarmi?