Matlab (?) RS-232

Jul 20, 2006 14 Replies

Witam!



Zaczynam od tej grupy bo narazie nie mam pomys³u gdzie indziej pytaæ... Chodzi o to i¿ chcia³bym stworzyæ softwarowy zestaw algorytmów przetwarzaj±cych sygna³ audio w okre¶lony sposób (miêdzy innymi modulacja FM, kodowanie PWM). ¦rednio siê orientuje w gamie programów umozliwiaj±cych takie "zabawy", matlab jako pierwszy przyszed³ mi do g³owy. Problem tkwi w tym ¿e sygna³ wyj¶ciowy chcia³bym wyprowadziæ na zewn±trz komputera, zapewne przez RS232 tak aby móg³ w czasie rzeczywistym sterowaæ wzmacniaczem i pod³±czonym do niego przetwornikiem piezo. Zakres czêstoitliwo¶ci analogowego sygna³u koñcowego (0-70k)Hz Przyk³adowo, wprowadzam plik audio, który ulega w czasie rzeczywistym przetwarzaniu i w zmienionej postaci jest wyprowadzony do uk³adów zewnêtrznych. Pytam sie wiêc, czy têdy wogóle droga, czy jest to mo¿liwie, jakie s± inne mo¿liwo¶ci, programy itepe itede... Pytanie do¶æ ogólne i otwarte bo i problem jest narazie do¶æ otwarty, za wszelkie porady, wskazówki, podpowiedzi bêdê wdziêczny.



Pozdrawiam, Marcin


Mo¿e obrób i zapisz do pliku a odtwarzaj w klasyczny sposób. Do obróbki matlab bêdzie odpowiednim programem. Je¿eli te 70kHz jest krytyczne to mamiast karty d¼wiêkowej trzeba bêdzie zrobiæ specjalizowane urz±dzenie np. covox.

Jest to jaka¶ opcja. Do pliku zapisaæ mogê, natomiast klasycznie odtwarzac nie mogê gdy¿ w³a¶nie musze wyj¶æ poza zakres czêstotliwo¶ci karty d¼wiekowej.

Pozdrawiam, Marcin

Dnia Thu, 20 Jul 2006 14:06:18 +0200, katzenjammer napisał(a):

^^^^^

^^^^^^^^^ Coś mi tu nie pasuje. Załóżmy, że na próbkę będziesz miał 16 bitów, mono, pomijamy narzut na protokoły. Daje nam to ponad 1,1Mbps. RS chyba nie pociągnie?

Pozdrawiam Marcin Stanisz

No w³a¶nie, widzisz bo ja siê na tym nie znam za bardzo, dlatego te¿ pytam czy to ma sens:) A je¶li nie ma sensu to o alternatywy. Czyli RS odpada.

Pozdrawiam, Marcin

U¿ytkownik "katzenjammer" snipped-for-privacy@tlen.pl napisa³ w wiadomo¶ci news:e9nvcr$u8e$ snipped-for-privacy@mx1.internetia.pl

Hmmm... Jak± chcesz mieæ dynamikê sygna³u wyj¶ciowego? 8 bitów? 10? 12? wiêcej?

Pomy¶la³bym raczej o ¶cie¿ce: USB -> FTDI -> Jaka¶ ATMega obs³uguj±ca komunikacjê przez FTDI-a, buforuj±ca strumieñ danych i synchronizuj±ca wystawianie ich na przetwornik ->

przetwornik DAC.

Je¿eli chcesz mieæ pasmo sygna³u wyj¶ciowego siêgaj±ce 70kHz to w praktyce bêdziesz musia³ próbkowac min. jakie¶ 200kHz. Czyli przy 8bit/próbkê przepchn±æ przez ³±cze min. 200KB/s + ew. narzuty. Przez RS-a nie ma szans, zatem pozostaje USB. A tak¿e dobranie przetwornika D/A o odpowiednim prze³o¿eniu rozdzielczo¶æ/szybko¶æ/cena. (AD1851? Nie kosztuje maj±tku a na pierwszy rzut oka mia³by szanse siê wyrabiaæ)

Matlab sie chyba srednio do tego nadaje - bedzie dobrze dzialal na plikach wav, ale czy sobie poradzi "online" ? Chyba ze to niepotrzebne.

Zapomnij. Port szeregowy w komputerze przepuszcza jakies 10KB/s. Niektore komputery pozwalaja 4x szybciej.

Byc moze udaloby sie to na porcie rownoleglym [staly strumien danych bedzie pewnym problemem], ale bezpieczniej od razu pomyslec o USB. Lub ethernet.

Albo od razu sobie zrobic przystawke z FPGA ...

J.

Do rozwa¿enia jest jeszcze kwestia czy ma byæ to obróbka "online".

Tak, to ju¿ wiem, RS odpada.

USB brzmi jako¶ tak najbardziej przyja¼nie;)

Pozdrawiam, Marcin

Teoretycznie im wiêksza tym lepsza, natomiast na parametr ten w du¿ej mie¿e wp³ywa koszt wykonania i komplikacja, jako ¿e jest to w ramach pracy mgr...

Dziêkujê, konkretne rozwi±zanie.

Dziêki za kolejn± podpowied¼:)

Mam teraz przynajmniej nad czym mysleæ.

Pozdrawiam, Marcin

U¿ytkownik "katzenjammer" napisa³ w wiadomo¶ci

ROTFL ;) Nie wiem czy tak do konca, moze na FTDI jest latwe, ale tam chyba tez jest ograniczenie predkosci? A "normalne" USB to wcale nie jest taka fajna sprawa...

mIrO napisał(a):

To zależy :)

Jeżeli:

1) Posiada się 2 komputery (inaczej debugować sterowników w C się nie da, przynajmniej jeżeli się korzysta z WinDBG) 2) Umie się w miarę dobrze programować w C, 3) Ma się dużoooooo cierpliwości w szczególności do bluescreen-ów, 4) Ma się dostęp do DKK i wie z czym to się je,

To napisanie sterownika po stronie PC-a na Win2k, WinXP nie jest zbyt trudne, na win98 już się sprawa komplikuje: trzeba jeszcze znać assemblera i najlepiej mieć SoftICE (innych sensownych narzędzi nie znam do debugowania sterowników pod Win98)

Pozostaje jeszcze kwestia napisania programu do uC to też nie jest sprawą prostą.

Napisanie sterowników na PC można ominąć jeżeli podszyjesz się pod jakieś urządzenie, ale niestety nie przychodzi mi do głowy jakie by to miało być (dla Twojego zastosowania).

Pozdrawiam MD

Użytkownik katzenjammer napisał:

Nowe sound blastery to chyba miały możliwość odtwarzania do 96KHz i są chyba wersje na USB

Adam

...mozliwo¶æ odtwarzania nagrañ o rozdzielczo¶ci (44,1-96)kHz

Nie ³o to cho.

Pozdrawiam, Marcin

umozliwiaj±cych

Matlab i przetwarzanie "szybkiego" strumienia danych na ¿ywo = kiepski pomys³.

Ale rozumiem, ¿e chcesz "wyprowadzaæ" w postaci cyfrowej - zale¿y Ci na zachowaniu jakiego¶ standardu audio (I2S, S/PDIF) ? Jakie urz±dzenie ma tak w³a¶ciwie ten sygna³ dalej przechwytywaæ?

Gdyby nie takie srogie wymagania na pasmo (skoro to audio, to po co tak szeroko - nietoperze chcesz tym straszyæ? ;-) ), to mo¿naby zastosowaæ np. PCM2706 Texasa i przesy³aæ próbki przez USB na przetworniku uzyskuj±c sygna³ analogowy, strumieñ I2S albo S/PDIF (ale niestety "tylko" do 48 kHz/16 bit). Je¿eli koniecznie chcesz próbkowaæ szybciej, dajmy na to 192 kHz, to po pierwsze odpada tu ju¿ S/PDIF (bo obs³uguje do 48 kHz), czyli trzeba by skonwertowaæ siê pewnie do I2S, który ³yknie wiêkszo¶æ wspó³czesnych przetworników i innych tego typu urz±dzeñ. Problem w tym, ¿e raczej nie znajdziesz gotowego sprzêtu którym przejdziesz ze strumienia USB do I2S - trzeba by samemu zrobiæ - a to ju¿ z deczka problem.

Wobec powy¿szego - nie pro¶ciej po prostu wyposa¿yæ siê w kartê muzyczn± obs³uguj±c± próbkowanie 192 kHz?

Pozdrav Portal

Dnia 20-07-2006 o 14:06:18 katzenjammer snipped-for-privacy@tlen.pl napisał:

Ewentualnie zapisać do bufora i odtworzyć po kilku sekundach

a co dziś nie jest możliwe? ;)

polecam zajrzeć na

formatting link
- powinien znaleźć się ktoś kto rozwieje wątpliwości co do MATLABa

pzdr

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required