Jump to content

tomek_j

Użytkownicy
  • Content Count

    573
  • Joined

  • Last visited

Community Reputation

30 Neutralny

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Wróćmy do zasilania części analogowej przetwornika. Jak już wspominałem zasilanie każdego z kanałów i zasilanie części wspólnej ma swój układ stabilizatora oparty na układzie "programowanej diody Zenera" czyli TL431. Napięcie wyjściowe jest programowane dwoma rezystorami 1kohm, i wynosi dwukrotność napięcia referencyjnego czyli ok +4,9V. Ważne żeby różnica napięć pomiędzy VCC1, VCC2R i VCC2L nie była większa niż 0,1V. Napięcie wejściowe VADAC jest dostarczane z zewnętrznego zasilacza i ma wartość ok +8V.
  2. Raspberry Pi nawet wersji 1 ma zasoby pozwalające na bezproblemowe przesyłanie strumienia danych audio przez port I2S. To nie jest jakieś bardzo wymagające zadanie. Ja używam Raspberry Pi 4 i dla tego komputerka "granie" nie jest żadnym obciążeniem. Temu zadaniu podoła nawet prosty 16, czy nawet 8 bitowy mikrokontroler pod warunkiem posiadania sprzętowego modułu I2S i sprzętowego modułu czytającego dane audio np USB , czy Ethernet. Wydaje mi się, że JarekC popełnił tu konwerter USB/I2S z TAS1020 (lub podobnym). Tam mikrokontroler sterujący to 8 bitowy 8051 i wszystko działa jak powinno bo
  3. Mam z tym wpisem pewien problem. Autor przedstawia dość poważne zarzuty nie poprawnego generowania sygnałów zegarowych. Problemem podstawowym nie jest brak możliwości wygenerowania dokładnej częstotliwości Fs, ale bardzo duże fluktuacje fazy zegarów . Nawet w tak starym komputerku to nie powinno mieć miejsca. Moduł I2S a właściwie PCM/I2S jest modułem sprzętowym z buforami FIFO, obsługą przerwań i może pracować pod kontrolą DMA. Wywłaszczanie jako źródło taktowania? W modułach sprzętowych źródłem taktowania są oscylatory, albo główny taktujący rdzeń, albo dodatkowe taktujące układy pery
  4. Trochę odbiegamy od tematu, bo interfejs I2S w Raspberry Pi nie pracuje w trybie Slave. Precyzyjnie rzecz ujmując może pracować w tym trybie przynajmniej tak podaje dokumentacja, ale na porty GPIO nie ma wyprowadzonego wejścia ( i jak wiemy wyjścia) sygnału MCLK. Jesteśmy zdani na mniej lub bardziej precyzyjny wewnętrzny zegar taktujący komputerka i układ generowania sygnałów zegarowych dla układów peryferyjnych. Nie chcę przekonywać wszystkich, że połączenie przez I2S jest lepsze niż inne rozwiązania. Jest jakie jest i można go użyć, albo nie . Konstrukcja jest wynikiem przyjęcia i zrealizo
  5. Mój przetwornik poza zastosowaniem ICS570B i PCM1794A nie ma wiele wspólnego ze schematem zamieszczonym wyżej. Ja ICS570B kupiłem na A...gro, ktoś sprzedawał za niewielkie pieniądze. Link do mousera podawałem w pierwszym poście. Parę słów o zasilaniu Przetwornik PCM1794A ma rozdzielone wyprowadzenie zasilania części cyfrowej i analogowej. Dotyczy to zarówno masy jak i wejść plusów zasilania. Układy cyfrowe są zasilane napięciem +3,3V ze scalonego stabilizatora LT1763 3,3. To niskoszumny stabilizator LDO o wydajności prądowej 500mA . Napięcie +3,3V zasilające układy cyfrowe DAC
  6. Jeżeli "złe tempo" rozumiemy przesyłanie materiału audio z częstotliwością inną niż został spróbkowanyw procesie zapisu, to będzie on nie poprawnie odtwarzany niezależnie od tego czy MCLK będzie wielokrotnością "prawidłowego" czy "błędnego" Fs. Sygnały zegarowe magistrali I2S musza być wielokrotnością częstotliwości próbkowania, ale tej częstotliwości, którą określa zegar LRCK. Nie wiem co by było , gdyby na przykład LRCK = 45kHz, a MCLK był wielokrotnością 44.1KHz. Wolałbym żeby MCLK był wtedy wielokrotnością 45kHz, bo BCK będzie równe 64x 45kHz i w połączeniu z LRCK to te dwa zegary "mówią"
  7. no i...? To co sobie zaprojektowałem nie jest czymś bardzo odkrywczym. Dotyczy to całego układu od interfejsu I2S poprzez przetwornik, układ zasilania po układ konwertera I/U i filtrów analogowych. Ktoś zrobił tak samo jak ja, albo ja zrobiłem tak jak ktoś dowodzi tylko tego że to rozwiązanie jest ok. Tak na marginesie rozważałem na początku inny układ powielacza: [Hidden Content] Nawet kupiłem jeden z tej rodziny i napisałem fragment softu gadającego z tym układem, ale znalazłem ICS570B dużo prostszy w implementacji, bo nie wymaga stosowania mikrokontrolera tylko po to
  8. Ok - w takim razie ten DAC i watek nie jest dla Ciebie 🙂 Kontynuujemy: co z tym MCLK? Przy poszukiwaniach przetwornika połączonego z Raspberry Pi przez I2S najczęściej wyskakiwał mi układ TI rodziny PCM510x. Moduły z tymi przetwornikami nie potrzebowały sygnału MCLK, mimo że sam układ PCM miał wejście MCLK. Jak się okazało, ten DAC ma wbudowany wewnętrzny układ PLL powielający zegar BCK. Zegar z wyjścia układu PLL może być wewnętrznym sygnałem MCLK w przypadku kiedy interfejs I2S nie jest uzupełniany o taki sygnał zewnętrzny. W przypadku PCM510x problem braku MCLK z wyjść I/O Raspbee
  9. Moduł I2S jest modułem sprzętowym procesora BCM2711Raspberry Pi 4 . Dane wysyłane są buforowane w 64 bitowych buforach FIFO, a wszystkie sygnały interfejsu I2S są generowane w bloku taktowanym jednym zegarem PCM_MCLK. Nie wiem jak tak generowane sygnały interfejsu I2S miałoby być "słabsze" niż te odtwarzane z sygnału SPDIF przez układy odbiorników takich jak na przykład DIR9001 czy podobnych. A co w takim przypadku z różnymi częstotliwościami próbkowania?
  10. Samodzielne konstruowanie przetwornika DAC wydaje się dzisiaj trochę pomysłem staroświeckim. Bracia Azjaci oferują za stosunkowo małe pieniądze wszystko co potrzeba, gotowe moduły a jak ktoś chce to mają kompletne urządzenia łącznie z obudową i zasilaniem. Ja jednak chciałem to zrobić sam i wymyśliłem sobie, że zrobię DAC połączony magistralą I2C z Raspberry Pi. Żeby było nowocześnie i wygodnie. Nie jest to zbyt oryginalne zadanie, bo przecież wszystko (prawie) tu już wymyślono, zaprojektowano i można kupić. No ale każdy kto samodzielnie zaprojektuje, wykona i uruchomi swoje urządzenie ma
  11. nie bardzo rozumiem co to ma wspólnego z dywagacjami n/t zakłóceń powodowanych przez WiFi używanego do łączenia RPi z LAN/WLAN.
  12. W jakim sensie? Mógłbyś rozwinąć gdzie skrętka zabija audio?
  13. U mnie w konfiguracji RPi z włączonym WiFi nie słychać żadnych zakłóceń , ale i tak używam połączenia przez Ethernet i raczej tak powinno być docelowo. W metalowej obudowie po jej zamknięciu i tak zasięg jest symboliczny. BTW w twoim rozwiązaniu o ile dobrze widzę do połączenia DAC z RPi przez I2S używasz dość długich przewodów. To niezbyt dobrze.
  14. Zanim zaczniemy analizować smak bułki z masłem przed i po rozmagnesowaniu możemy założyć teoretycznie , że rzeczone urządzenie działa, to znaczy że jego użycie coś zmienia. Nie dopuszczamy z zasady argumentów subiektywnych typu "działa bo ja słyszę poprawę". Jednym z parametrów, które można obiektywnie zmierzyć jest występowanie nie skorygowanych błędów typu C2 przy odczycie strumienia danych z płyty CD Audio. Standard dopuszcza odczytanie ramki z tym nie skorygowanym błędem i jakiś sposób jej interpolacji (CD DATA tego nie dopuszcza). To może w jakiś sposób wpływać na jakość odtwarzanego plik
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.