logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

"Najmniejszy na świecie odtwarzacz audio"

marek_34 07 Sty 2011 17:12 17230 41
  • "Najmniejszy na świecie odtwarzacz audio"


    Autor przedstawia wyjątkowo prosty odtwarzacz audio zbudowany wyłącznie na 8-pinowym mikrokontrolerze ATtinyX5 (25/45/85) oraz karcie SD. Karta taka może być obsługiwana przez 6 pinowe złącze , dwa złącza zasilające oraz cztery sterujące. Cały układ zawiera złącze kart sd, mikroprocesor połączone kilkoma przewodami i może zostać zbudowane dosłownie w parę chwil.
    Autor odtwarzacza nazywa go „najmniejszym na świecie odtwarzaczem audio”. Dostępne są trzy schematy urządzenia w różnych konfiguracjach w tym mono, stereo. Użyta została karta mini-SD. Głośniki są zasilane bezpośrednio z wyjść PWM mikrokontrolera. Obciążenie może być zbyt duże jak na te porty, jednak przy zasilaniu 3V natężenie nie przekraczało maksymalnych wartości. Z tych powodów głośność jest ograniczona. Wyjście możemy podłączyć pod wzmacniacz audio jedynie gdy zastosujemy filtr dolnoprzepustowy i odetniemy składową o wysokich częstotliwościach.
    Odtwarzacz wspiera tylko pliki WAVE o częstotliwości próbkowania do 48 kHz, pliki mp3 muszą zostać przekonwertowane przed nagraniem na kartę pamięci. Odtwarzanie zaczyna się po włączeniu urządzenia, lub włożeniu karty. Jedyny przycisk służy do skoku do następnego utworu.
    Na stronie dostępne są pliki .hex do zaprogramowania Attiny.

    "Najmniejszy na świecie odtwarzacz audio"

    Źródło: http://elm-chan.org/works/sd8p/report.html

    Fajne? Ranking DIY
    O autorze
    marek_34
    Poziom 18  
    Offline 
    marek_34 napisał 332 postów o ocenie 271, pomógł 6 razy. Mieszka w mieście Katowice. Jest z nami od 2006 roku.
  • #2 8972912
    radekdjredi
    Poziom 13  
    Kilka już razy na tym forum podawano ten link, bardzo stara konstrukcja!!!
    A po drugie jest na stronie błąd, bo na attinie15 nie działa odtwarzacz.
  • #4 8973049
    mdziewie
    Poziom 19  
    Na atmedze to kiedyś gość zrobił wyświetlanie na monitorze VGA (było na elce) - i to była istna hakeriada. W przypadku pliku wave, jedyne, co trzeba robić, to wciągać bajty z karty (pewnie tylko starsze bajty z 16-bitowych próbek, 8-bitowy PWM) i wrzucać je na PWM-a.
    Nie za dużo roboty.
    Gdyby ktoś zrobił to samo na ucach, no, to bym pogratulował:)
  • #5 8973182
    marian.dxd
    Poziom 11  
    Dałoby się do tego zakupić jakąś kość do odtwarzania mp3 i mieć odtwarzacz mp3?
  • #6 8973194
    Urgon
    Poziom 38  
    AVE...

    Było kilka projektów z dekoderem sprzętowym. Sprytniejszym rozwiązaniem jest użyć układu 32-bitowego i mieć programowe dekodowanie wszystkiego...
  • #8 8973547
    rafał
    Poziom 22  
    Na ATTiny 2313 chodzi coś takiego bez bólu. Prócz grania może mieć sterowanie na IR i sygnalizację diodą etc. I bez problemu działa.
  • #9 8974247
    marian.dxd
    Poziom 11  
    elektryk101 napisał:
    marian.dxd napisał:
    Dałoby się do tego zakupić jakąś kość do odtwarzania mp3 i mieć odtwarzacz mp3?

    Do tego chyba nie wystarczy AVR... :|
    http://www.vlsi.fi/datasheets/vs1011.pdf


    No ja wiem, że nie AVR, a ARM nie będę ładował do odtwarzacza MP3.

    rafał napisał:
    Na ATTiny 2313 chodzi coś takiego bez bólu. Prócz grania może mieć sterowanie na IR i sygnalizację diodą etc. I bez problemu działa.


    Ale czy trzeba kupować jeszcze jakiś układ aby dekodował sygnał?
    Czy sam kod programu załatwi wszystko?
  • #10 8974322
    elektryk101
    Warunkowo odblokowany
    Podałem link do układu który dekoduje format MP3. Sam AVR do dekompresji MP3??? I chyba bez ARM się nie obejdzie.
  • #11 8975427
    Urgon
    Poziom 38  
    AVE...

    Mikrokontrolery ARM kosztują grosze: 20-70 złotych. VS1011 kosztuje 60 złotych. Układy ST Microelectronics z rodziny ARM Cortex kosztują 20-50 złotych zależnie od pojemności pamięci programu. Gdybym miał coś takiego robić, to użyłbym właśnie ARMa. Zwłaszcza, że biblioteki dekodujące są dostępne w necie. Do tego można dodać inne funkcje...
  • #12 8976256
    Lazer
    Poziom 24  
    Aż mi się przypominają bazarowe radyjka z dwoma przyciskami SCAN i STOP jak na to patrzę. Teraz ktoś wymodził MP3 w wersji tiny :D
  • #13 8976502
    rafał
    Poziom 22  
    Nikt nie mówi że od razu mp3. Po prostu Wave zapisany na karcie, czy innej pamięci jako Hex. I grany przez PWM. Tak działać powinien ten moduł z artykułu.
    Z moich obserwacji wynika że najmniejszym jeśli chodzi o ilość nóżek będzie układ serii ATtiny 25/45/85 w wersji z ośmioma nóżkami.
  • #14 8976772
    elektryk101
    Warunkowo odblokowany
    rafał napisał:
    I grany przez PWM. Tak działać powinien ten moduł z artykułu.

    No, z tym PWM to bywa różnie. Ja zbudowałem odtwarzacz wav na ATmega8, karcie mikroSD, i z PWM jest pisk, a w słuchawce są także inne jego produkty oprócz dźwięku i cały czas próbuje je usunąc(jak na razie bezskutecznie). Czy ktoś wie jak to poprawic? A może już ktoś z forum podpiął drabinkę R2R ? Oprogramowanie napisałem w Bascom.
  • #15 8976841
    Urgon
    Poziom 38  
    AVE...

    A dodałeś filtr na wyjście?
    Mi przy opisie użycia programowego generatora dźwięku dla PIC radziło stosowanie filtru RC by dźwięk dźwięczał, a nie brzęczał...
  • #16 8976858
    elektryk101
    Warunkowo odblokowany
    Urgon napisał:
    AVE...

    A dodałeś filtr na wyjście?
    Mi przy opisie użycia programowego generatora dźwięku dla PIC radziło stosowanie filtru RC by dźwięk dźwięczał, a nie brzęczał...

    Na pinie pwm1a jest filtr RC ale to sprawia tylko że jest większy bas a pisk i jakieś dziwne dźwięki nadal zostają. Dzięki za odpowiedź. :D
  • #17 8980450
    rafał
    Poziom 22  
    Wklej kod programu wtedy coś może się wyjaśni.
  • #18 8981082
    mkpl
    Poziom 37  
    Hmm po co pchać się w ARM do dekodowania mp3. Wystarczy dorwać za grosze procesor z serii ATJ i oprogramować. Tam siedzi stary poczciwy rdzeń zgodny z Z80 więc oprogramowanie też wielkim problemem nie jest
  • #19 8989053
    ezbig
    Poziom 20  
    elektryk101 napisał:
    rafał napisał:
    I grany przez PWM. Tak działać powinien ten moduł z artykułu.

    No, z tym PWM to bywa różnie. Ja zbudowałem odtwarzacz wav na ATmega8, karcie mikroSD, i z PWM jest pisk, a w słuchawce są także inne jego produkty oprócz dźwięku i cały czas próbuje je usunąc(jak na razie bezskutecznie). Czy ktoś wie jak to poprawic? A może już ktoś z forum podpiął drabinkę R2R ? Oprogramowanie napisałem w Bascom.


    Przy ośmiu bitach możesz szłyszeć tzw. szum kwantyzacji wynikający z małej rozdzielczości próbkowania. Dodatkowo wszystko musi pracować synchronicznie co do cykla, bo jak nie to może to być słyszalne. A jak jest częstotliwość pwm? Bo to ma kolosalne znaczenie dla jakości lub w ogóle dla odtwarzania.
  • #20 8990546
    polprzewodnikowy
    Poziom 26  
    mkpl napisał:
    Hmm po co pchać się w ARM do dekodowania mp3. Wystarczy dorwać za grosze procesor z serii ATJ i oprogramować. Tam siedzi stary poczciwy rdzeń zgodny z Z80 więc oprogramowanie też wielkim problemem nie jest


    A jak z jakością dźwięku? PWM 32 bit to jednak nie to samo co PWM 16 lub 8 bitowy.
  • #21 8990566
    DJ MHz
    Poziom 24  
    Zrobiłem ten układzik. Nie bawiłem się fusebitami, ponieważ jeden attiny już mi się zablokował, poprostu wgrałem wsad i uruchomiłem. Dzwięk jest zwolniony, trzeba w kompie o 100% go przyspieszyć, np programem audacity. Ciekawie było by go wmontować w długopis, karta mini sd, głośniczek z telefonu, baterie pastylki + układ smd.
  • #22 9213120
    arktik1
    Poziom 27  
    Przeglądałem pliki Makefile tego projektu i zauważyłem, że w każdym jest napisane:
    "DF_CPU=16000000UL"
    Nie znam się na C, ale to chyba coś nie tak.
    Może to dla tego te zwolnienia dźwięku.
  • #23 9213429
    mkpl
    Poziom 37  
    DJ MHz ściągnij sobie Burn-o-mat (bardzo proste ustawienia fusebitów i nie da się nic uwalić) i ustaw 2x większą częstotliwość taktowania procesora i będzie w normalnym tempie grać
  • #24 9213464
    arktik1
    Poziom 27  
    Tylko że można tam ustawić 1MHz lub 8Mhz.
    Ciekawe który będzie pasował do "DF_CPU=16000000UL"?
  • #25 9214234
    DJ MHz
    Poziom 24  
    mkpl napisał:
    DJ MHz ściągnij sobie Burn-o-mat (bardzo proste ustawienia fusebitów i nie da się nic uwalić) i ustaw 2x większą częstotliwość taktowania procesora i będzie w normalnym tempie grać


    A widzisz, fusebitów nieruszałem, ponieważ już jeden attiny zablokowałem. Wiem, że takowanie ma wpływ na szybkość. Poprostu prościej było przyspieszyć dźwięk :P
  • #26 9272531
    henry57
    Poziom 12  
    Czy może ktoś wypowiedzieć się komu udało się uruchomić oryginalny układ na ATtiny25 lub ATtiny45. U mnie ten odtwarzacz nie działa. Na kartę microSD wgrałem plik wav w postaci hex, a jak powinny być ustawione fusebity w mikroprocesorze.
  • #27 9273015
    arktik1
    Poziom 27  
    Na ATtiny 45 nie działa , na 25 tym bardziej.
  • #28 9273198
    henry57
    Poziom 12  
    DJ MHz napisał:
    Zrobiłem ten układzik.

    Na jakim procesorze go zrobiłeś?
  • #30 9288828
    elektryk101
    Warunkowo odblokowany
    DJ MHz napisał:
    Attiny 85.

    A da sie na ATtiny2313 albo Mega8?
REKLAMA