Wpis z mikrobloga

#elektronika
Pracował ktoś kiedyś z I2S? Mam zarejestrowane sygnały które wyglądają jakby coś było z nimi nie tak (screen poniżej).
W skrócie: 8 mikrofonów INMP441, połączone do 4 kanałów (0~3) analizatora stanów logicznych (skonfigurowane naprzemiennie lewy/prawy kanał).
Generator 24MHz z analizatora stanów, przepuszczam go przez FPGA który dzieli częstotliwość na 4 (6 MHz, sygnał SCK, kanał 6), i na 256 (~93KHz, sygnał WS, kanał 7)
Po zdekodowaniu I2S cześć wartości zaczyna się od 0x00xxxxxx, część od 0xffxxxxxx co jest moim zdaniem bzdurą bo mikrofony operują na słowach 24-bitowych i oczekiwałem stałych, takich samych wartości na początku / końcu 32-bitowego słowa.
Chociaż część przebiegów z screena wygląda poprawnie?
kamilspl - #elektronika
Pracował ktoś kiedyś z I2S? Mam zarejestrowane sygnały które ...

źródło: Zrzut ekranu z 2024-01-05 09-15-51

Pobierz
  • 5
@loginniezajety: możesz mieć rację, chociaż 24 bitowe -1 powinno nadal być 0x00FFFFFF.
Spróbuję to dzisiaj przenieść do matlaba i puścić jako audio.
I ewentualnie zmniejszę częstotliwość próbkowania do 48KHz, chociaż liczyłem że będę w stanie mieć 192KHz.
@kamilspl:
Dla I2S słowo rozszerza się lub skraca z prawej strony. Z założenia liczba bitów nie powinna mieć znaczenia przy współpracy różnych urządzeń. Swoją drogą nie wiem czy PulseView to prawidłowo pokazuje jeżeli są to 24 bity. Używałem raczej albo 32 bitów albo 16 bitów, ten mikrofon akurat z 16-bitowym słowem i jest to oczywiście już grubo ponad jego rzeczywiste parametry.
@loginniezajety dzięki - nawet jeżeli liczba jest rozszerzana to oczekiwałem tam samych 0 lub 1, a na przebiegu zarówno prawa jak i lewa strona się zmieniają. Jutro powinienem mieć trochę czasu to wrócę do testów.
@loginniezajety: Dzięki - Twoje rady pomogły.
Mikrofon ma 24 bity i faktycznie wartość jest w kodzie U2 a najmniej znaczące pozycje w wartości 32bitowej uzupełniane są zerami (w moim przypadku odbicia wynikające z niedopasowania impedancyjnego).

Jeszcze raz nagrałem całość z Fs=~48kHz, na 8 mikrofonów umieszczonych w szereg puściłem sinus 1kHz.
Ogólnie chciałem zrobić układ wykrywający kierunek odbioru fali dźwiękowej przy pomocy detekcji różnicy fazy. Stąd potrzebowałem wysokiej częstotliwości próbkowania.
Dostałem ostatecznie
kamilspl - @loginniezajety: Dzięki - Twoje rady pomogły.
Mikrofon ma 24 bity i faktyc...

źródło: signal

Pobierz