Dzwiek + uP

Mar 19, 2006 9 Replies

Witam



Chcialem sie troszke pobawic odtwarzaniem dzwieku na uP. Powiedzmy iz mam odpowiednio przygotowane probki, ktore wrzucam do jakiegos ukladu pamieci, po czym je odtwarzam. Czy szanowni koledzy mogliby sie podzielic radami od czego zaczac i gdzie szukac informacji na ten temat??



Wymagania nie sa duze - 8kHz, 8bit, tak aby uklad calkiem ladnie "gadal".


Kiedys popelnilem cos takiego. To byla 51 z wbudowanym DAC, próbki pamieci w Data Flashu. Dane z DF przerzucam do malego bufora w RAM a z tamtad w przerwaniu timera wrzucam do DAC. Bufor jest po to aby zapewnic ciaglosc danych w czasie przelaczania stron flasha. Mechanizm jest na tyle wydajny ze dalo by sie wypuscic ok. 4-6 krotnie wiekszy strumien danych. Troche danych, dokumentacja, tester programowy i sample sa tutaj:

formatting link
w dziale download.

Przejrzyj application notes atmela dotyczace AVR, jest tam aplikacja gdzie provc odgrywa muzyke za pomoca PWM.

Moze spróbuj wykorzystac elementy tego:

formatting link
dziadek Ben

Uzytkownik "dziadek Ben" snipped-for-privacy@op.pl napisal w wiadomosci news:dvmfof$ibl$ snipped-for-privacy@news.onet.pl

formatting link

Ciekawy sposób kodowania dźwięku:

formatting link
sword

Dziękuję wszystkim za odpowiedzi :) Mam trochę materiału do przemyśleń i zabawy :)

zrobiłem to. Beznadziejny dźwięk, można sięcieszyć ale z największego próbkowania i mało. Ja akurat wygrzebałem koder konweretujący na stronie Circuit Cellar. W symulatorsze lepiej wychodzi . Nalpepiej zrobić mimo wszystko drabinkę 16 oporników albo konwerter DAC dla normalnej jakości czyli 8khz, 8bit.

modulator delta sigma 2 - 4 bity na R2R + np ADPCM i/lub uLaw/ALaw. - Powinno sie troche danych zmiescic a i w sofcie da sie to zrobic przy uwaznym cyklowaniu.

przy dwóch końcówkach dźwięk był niezadawalający w tym co robiłem, tzn jeden pin + drugi z przesunięciem o jeden bit przy próbkowaniu 44100 nawet. No z większą ilością pinów będzie lepiej ale to już chyba prościej nie kombinować tylko dać jakąś dużą pamięć atmela typu 16mbit z interferjsem serial i drabinke albo DACa i pozamiatane, a ma się gwarancję porządnej jakości a nie jakiejś udawanej. W sumie to z Circuit Cellar robi kompresję 1:8 ponieważ każdy 1 bit odpowiada jednemu Hz. Jakość nie ma prawa być dobra, ponieważ jest różna stromość zbocza w dźwięku i trzeba jakoś to wypośrodkować na filtrze RC. Dalsze filtrowanie też niewiele dawało, filtrem 6dB na dwóch wzmacniaczach operacyjnych. A delta sigma sprowadza się też do ograniczenia stromości maksymalnej i pasma z dodaniem różnych harmonicznych

Join the Discussion

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

Didn't find your answer?

Ask the community — no account required