Tania MP3 + mikrokontroler ( problem on/off=play i inne )
- mariusz_edw
- Użytkownik
- Posty: 307
- Rejestracja: 22 lip 2005, 13:02
- Lokalizacja: Polanica Zdrój
- Kontakt:
Tania MP3 + mikrokontroler ( problem on/off=play i inne )
Witam.
Już wielokrotnie zabierałem się do wykorzystania taniego odtwarzacza MP3 z allegro w projekcie z mikrokontrolerem (potrzeba uzyskania dobrej jakości komunikatów dźwiękowych / głosowych). Świadomie i definitywnie nie chcę korzystać z kostek ISD.
Jak na złość, wciąż nie są dostępne tanie lub proste do zrealizowania we własnym zakresie odtwarzacza MP3 oparte na mikrokontrolerach (stąd próby zaaplikowania gotowych mp3-jek).
Jak na złość praktycznie wszyscy producenci tanich mp3 (przynajmniej tych dostępnych na allegro) aplikują funkcje on/off oraz play w jednym przycisku.
Da się to kontrolować z poziomu uP, stosując dłuższy impuls do załączania mp3, krótszy do wywołania funkcji play. Ale to nie koniec problemów.
Najgorsze jest to, że MP3-ki zapamiętują ostatnio odtwarzany plik, a co gorsza, nawet moment, w którym mp3 zostało wyłączone. To sprawia, że to co chcemy odtwarzać pozostaje poza jakąkolwiek kontrolą. Pół biedy, jeśli chcemy wykorzystać mp3 do odtwarzania pojedynczego komunikatu. Gdy chcemy mieć możliwość odtwarzania od kilku do kilkudziesięciu różnych komunikatów problem zaczyna być nie do przejścia.
Gdyby takie mp3 po włączeniu zasilania rozpoczynało odtwarzać pierwszy plik, wystarczyłoby wygenerować odpowiednią liczbę impulsów przesuwających nas do żądnego pliku. Niestety mp3-ki startują od ostatnio odtwarzanego pliku, co wszystko psuje.
Stąd też od dawna poluję wręcz na allegro na wszelkie tanie mp3-ki z większą liczbą przycisków. Niestety łowy idą słabo.
Jeśli ktoś ma jakieś:
a). pomysły
b). namiary na odtwarzacze mp3 oparte na uP osiągalne do realizacji dla "zwykłych ludzi"
c). tanie mp3, mogą być ze zniszczoną obudową, ale sprawne technicznie
to proszę o wypowiedzi lub kontakt.
Już wielokrotnie zabierałem się do wykorzystania taniego odtwarzacza MP3 z allegro w projekcie z mikrokontrolerem (potrzeba uzyskania dobrej jakości komunikatów dźwiękowych / głosowych). Świadomie i definitywnie nie chcę korzystać z kostek ISD.
Jak na złość, wciąż nie są dostępne tanie lub proste do zrealizowania we własnym zakresie odtwarzacza MP3 oparte na mikrokontrolerach (stąd próby zaaplikowania gotowych mp3-jek).
Jak na złość praktycznie wszyscy producenci tanich mp3 (przynajmniej tych dostępnych na allegro) aplikują funkcje on/off oraz play w jednym przycisku.
Da się to kontrolować z poziomu uP, stosując dłuższy impuls do załączania mp3, krótszy do wywołania funkcji play. Ale to nie koniec problemów.
Najgorsze jest to, że MP3-ki zapamiętują ostatnio odtwarzany plik, a co gorsza, nawet moment, w którym mp3 zostało wyłączone. To sprawia, że to co chcemy odtwarzać pozostaje poza jakąkolwiek kontrolą. Pół biedy, jeśli chcemy wykorzystać mp3 do odtwarzania pojedynczego komunikatu. Gdy chcemy mieć możliwość odtwarzania od kilku do kilkudziesięciu różnych komunikatów problem zaczyna być nie do przejścia.
Gdyby takie mp3 po włączeniu zasilania rozpoczynało odtwarzać pierwszy plik, wystarczyłoby wygenerować odpowiednią liczbę impulsów przesuwających nas do żądnego pliku. Niestety mp3-ki startują od ostatnio odtwarzanego pliku, co wszystko psuje.
Stąd też od dawna poluję wręcz na allegro na wszelkie tanie mp3-ki z większą liczbą przycisków. Niestety łowy idą słabo.
Jeśli ktoś ma jakieś:
a). pomysły
b). namiary na odtwarzacze mp3 oparte na uP osiągalne do realizacji dla "zwykłych ludzi"
c). tanie mp3, mogą być ze zniszczoną obudową, ale sprawne technicznie
to proszę o wypowiedzi lub kontakt.
U mnie jest tak, że jak wyłączę mp3 na "miękko" przyciskiem, to zapamiętuje ostatni utwór. Ale! Jak wyłączę na "twardo" - odłączam akumulator, to widocznie ta pamięć się kasuje i odtwarza od początku po włączeniu. Sprawdź pod tym kontem mp3, które masz pod ręką. Odłączanie baterii można przecież zrealizować za pomocą MOSFETa. A może jest gdzieś przycisk reset, wtedy mógłbyś bezpośrednio z uP sterować.
Odnośnie a)
Można też pójść tą drogą (link), czyli zbudować odtwarzać dźwięk w formie nieskompresowanej, poprzez sprzętowy PWM lub dodatkowy przetwornik C/A.
Pojemność karty SD powinna wystarczyć i jest to dość tanie rozwiązanie.
Problemem może być jakość dźwięku i obciążenie procesora.
Odnośnie b)
Istnieje projekt yampp.
Nie wiem jak to wyjdzie z kosztami, ale można w ten sposób zrealizować odtwarzacz muzyki w formacie mp3.
Można też pójść tą drogą (link), czyli zbudować odtwarzać dźwięk w formie nieskompresowanej, poprzez sprzętowy PWM lub dodatkowy przetwornik C/A.
Pojemność karty SD powinna wystarczyć i jest to dość tanie rozwiązanie.
Problemem może być jakość dźwięku i obciążenie procesora.
Odnośnie b)
Istnieje projekt yampp.
Nie wiem jak to wyjdzie z kosztami, ale można w ten sposób zrealizować odtwarzacz muzyki w formacie mp3.
- Aro
- Użytkownik
- Posty: 677
- Rejestracja: 30 paź 2006, 18:49
- Lokalizacja: Świerczyniec | Wrocław
- Kontakt:
Co do c) i pomysłu wykorzystania "jakiegoś" mp3 to stanowczo odradzam. Jeśli jest więcej niż kilka komunikatów, to policz sobie ile zajmie czas potrzebny na dotarcie do wybranego utworu. Może się okazać, że nawet kilkanaście - kilkadziesiąt sekund! Weź to pod uwagę. A jeśli się upierasz, to bodajże na allegro są tanie 10-30zł transmitery/odtwarzacze mp3, nie pamiętam modelu, ale kolega budował na jednym właśnie układ do odtwarzania komunikatów. Dało się przerzucać kilka utworów na sekundę, ale przy 16 komunikatach to i tak była porażka:/
- mariusz_edw
- Użytkownik
- Posty: 307
- Rejestracja: 22 lip 2005, 13:02
- Lokalizacja: Polanica Zdrój
- Kontakt:
Faktycznie, muszę sprawdzić jak ma się sytuacja w moich egzemplarzach. MP3 przystosowane do pracy z baterii pobierają z definicji niewielki prąd stąd do ich załączania wystarczy pewnie jakikolwiek tranzystor, niekonicznie MOSFET.Zenerek pisze:U mnie jest tak, że jak wyłączę mp3 na "miękko" przyciskiem, to zapamiętuje ostatni utwór. Ale! Jak wyłączę na "twardo" - odłączam akumulator, to widocznie ta pamięć się kasuje i odtwarza od początku po włączeniu. Sprawdź pod tym kontem mp3, które masz pod ręką. Odłączanie baterii można przecież zrealizować za pomocą MOSFETa. A może jest gdzieś przycisk reset, wtedy mógłbyś bezpośrednio z uP sterować.
Mam to na uwadze, i zdaję sobie sprawę z faktu, że tego nie ominę. Tak sobie myślę, że jeśli komunikat ma być sterowany zegarem, i wystąpić o określonej godzinie, wówczas już minutę wcześniej uP mógłby wykonać procedurę "wybierania utworu", a z dokładnością co do sekundy wygenerować sygnał play.Aro pisze:Co do c) i pomysłu wykorzystania "jakiegoś" mp3 to stanowczo odradzam. Jeśli jest więcej niż kilka komunikatów, to policz sobie ile zajmie czas potrzebny na dotarcie do wybranego utworu. Może się okazać, że nawet kilkanaście - kilkadziesiąt sekund! Weź to pod uwagę. A jeśli się upierasz, to bodajże na allegro są tanie 10-30zł transmitery/odtwarzacze mp3, nie pamiętam modelu, ale kolega budował na jednym właśnie układ do odtwarzania komunikatów. Dało się przerzucać kilka utworów na sekundę, ale przy 16 komunikatach to i tak była porażka:/
Czyli z tego co rozumiem chcesz wykorzystać MP3 tak jak by to był układ ISD 
Muszę przyznać przewrotna idea. Łatwiej by było chyba cyfrowy dyktafon zmusić do takiego działania. Nie jestem pewien ale MP3 chyba zapamiętuje co ostatnio odtwarzała w pliku, bo z punktu budowy i działania taki odtważacz to właściwie nic innego jak Pendriv. Czyli jeżeli twój układ był by przystawką USB do MP3 to powinno sie dać zrobić bez problemu. Chyba są MP3 którym można wydawać polecenie przez USB
Muszę przyznać przewrotna idea. Łatwiej by było chyba cyfrowy dyktafon zmusić do takiego działania. Nie jestem pewien ale MP3 chyba zapamiętuje co ostatnio odtwarzała w pliku, bo z punktu budowy i działania taki odtważacz to właściwie nic innego jak Pendriv. Czyli jeżeli twój układ był by przystawką USB do MP3 to powinno sie dać zrobić bez problemu. Chyba są MP3 którym można wydawać polecenie przez USB
- mariusz_edw
- Użytkownik
- Posty: 307
- Rejestracja: 22 lip 2005, 13:02
- Lokalizacja: Polanica Zdrój
- Kontakt:
Nie o to chodzi. MP3 (taką za "5 zł") przeznaczam na straty, zdejmuję obudowę i podpinam się sygnałami pod switche sterujące. USB nie jest mi potrzebne poza (potencjalnie jednorazowym) wgraniem komunikatów.kayron pisze:Czyli jeżeli twój układ był by przystawką USB do MP3 to powinno sie dać zrobić bez problemu. Chyba są MP3 którym można wydawać polecenie przez USB
ISD jest drogie, stare, niewygodne w obsłudze, gwarantuje kiepską jakość, i generalnie jest "badziewne". Taki sobie archaizm - przeżytek, jak FDD w komputerach klasy PC. Do stereofonicznych MP3, umożliwiających przechowywanie wielu godzin nagrań posiadających jakość dźwięku zbliżoną do CD (mp3), łatwe wgranie gotowych mp3 do pamięci i jeszsze wiele innych zalet, klasyczne ISD nawet się nie umywa.
Hm..
Jakie ISD masz na myśli
bo te nowe by cię mogły zaskoczyć swoimi możliwościami. Te 14xx i 25xx to faktycznie są ciankie, ale te nowe to już inna bajka.
Natomiast tą metodą z podpinaniem się pod klawisze MP3 niewiele zdziałasz, a skoro USB jest ci potrzebne tylko do wgrania materiału do MP3, tym bardziej przystawka sterująca USB ma sens. Pomijając że uzyskasz w ten sposób nieporównywalnie większe możliwości sterowania, i szybkość działania. Problem z użytkiem klawiatury sprowadza sie do:
- uniwersalności klawiatury, co niekorzystnie wpływa na czas reakcji, jeden przycisk ma wiele funkcji.
- działaniu na omacku i zgadywaniu co tak naprawdę odtwarzasz i robisz w danej chwili. Nawet jeżeli CPU pamięta na jakimś stosie kroki które wykonał, to istnieje spora szansa pomyłki.
- kod sterujący i algorytm wcale nie jest prostszy, niż jak byś to robił komunikując się bezpośrednio przez port komunikacyjny.
Snow. Koledze chyba nie chodzi o procesor co ma na pokładzie dekoder strumienia MP3. Atmel robił taką 51 z MP3 i sterownikiem SD/MMC, ale jest ona trudna do zdobycia i kosztowała też nie mało. Z drugiej strony 51 jest już dzisiaj mało wspierana co może spowodować ze taki procesor jest kłopotliwy do oprogramowania, zważywszy że to nie jest zwykła 51, ale bardzo rozbudowany układ.
Natomiast tą metodą z podpinaniem się pod klawisze MP3 niewiele zdziałasz, a skoro USB jest ci potrzebne tylko do wgrania materiału do MP3, tym bardziej przystawka sterująca USB ma sens. Pomijając że uzyskasz w ten sposób nieporównywalnie większe możliwości sterowania, i szybkość działania. Problem z użytkiem klawiatury sprowadza sie do:
- uniwersalności klawiatury, co niekorzystnie wpływa na czas reakcji, jeden przycisk ma wiele funkcji.
- działaniu na omacku i zgadywaniu co tak naprawdę odtwarzasz i robisz w danej chwili. Nawet jeżeli CPU pamięta na jakimś stosie kroki które wykonał, to istnieje spora szansa pomyłki.
- kod sterujący i algorytm wcale nie jest prostszy, niż jak byś to robił komunikując się bezpośrednio przez port komunikacyjny.
Snow. Koledze chyba nie chodzi o procesor co ma na pokładzie dekoder strumienia MP3. Atmel robił taką 51 z MP3 i sterownikiem SD/MMC, ale jest ona trudna do zdobycia i kosztowała też nie mało. Z drugiej strony 51 jest już dzisiaj mało wspierana co może spowodować ze taki procesor jest kłopotliwy do oprogramowania, zważywszy że to nie jest zwykła 51, ale bardzo rozbudowany układ.
Daleko szukać jest wszystko produkt firmy olimex
cena 125 zł rozwiązanie prawie idealne.
http://www.shop.kristech.eu/index.php?c ... anguage=pl
cena 125 zł rozwiązanie prawie idealne.
http://www.shop.kristech.eu/index.php?c ... anguage=pl
Tak i obok pisze brak towaru.
No i na ARMie jest to chyba więc pytanie czy autorowi by odpowiadało 
DOWN => a to źle to zrozumiałem.
DOWN => a to źle to zrozumiałem.
Ostatnio zmieniony 03 sty 2010, 15:06 przez kayron, łącznie zmieniany 1 raz.
kayron Nie na armie ale na układzie VS1002 z wtyczka do plyt z ARM-em
Tu link do producenta: http://www.olimex.com/dev/index.html
chyba nawet przez uart tym można sterować.
Tu link do producenta: http://www.olimex.com/dev/index.html
chyba nawet przez uart tym można sterować.
- mariusz_edw
- Użytkownik
- Posty: 307
- Rejestracja: 22 lip 2005, 13:02
- Lokalizacja: Polanica Zdrój
- Kontakt:
Chyba, czy na pewno? Jeśli tak to jestem zainteresowanyPikczu pisze:chyba nawet przez uart tym można sterować.
W międzyczasie sprawdziłem jak sytuacja ma się, m. in. z pożyteczną amnezją numeru odtwarzanego utworu po wyjęciu baterii.
1. Creative MuVo 64MB:
- zakupiona kiedyś na allegro za 5 zł,
- po wyjęciu baterii traci pamięć odtwarzania (OK)
- szybkie przełączanie utworów (OK)
2. MP CHART 256 MB
- zakupiona na allegro za jakieś 12 zł,
- po wyjęciu baterii pamięta ostatnio odtwarzany utwór (źle)
- zmianie utworu towarzyszy efekt wyciszania, co bardzo wydłuża szybkość przełączania mp3 (źle)
3. Odtwarzacz mp3 / transmiter ABP23
- zakupiony na allegro za 13 zł,
- po odłączeniu od zasilania dalej pamięta ostatnio odtwarzany utwór (źle)
- szybkie przełączanie utworów (OK)
Najwygodniejszą do zastosowania wydaje się być ta pierwsza. Po odłączeniu zasilania i ponownym podłączeniu zaczyna odtwarzać pierwszą mp3 dzięki czemu istnieje pełna kontrola nad numerem odtwarzanego utworu. Zasilanie bezpośrednio z 5V.
Jako drugą zastosowałbym ABP23. Głównie ze względu na dużą szybkość przełączania utworów (i aktualną dostępność na allegro). Niestety nie da się wykonać resetu do utworu pierwszego. Pozostaje zastosowanie procedury przełączenia się do żądanego utworu a później wysterowania klawisza BACK taką samą liczbę razy lub tego samego NEXT wygenerować liczbę impulsów odpowiadających liczbie wszystkich pozostałych utworów. Rozwiązanie będzie działać... ale wystarczy jeden niepożądany przeskok ścieżki, i cała kolejność się krzaczy.
MP CHART raczej nie nadaje się do tego zadania.