-
Data: 2022-09-29 17:05:58
Temat: Re: lwIP - odbieranie danych przez TCP
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Ok, przysiadłem jeszcze do tego projektu i udało mi się ustalić kilka
kolejnych faktów:
1. Byłem w błedzie co do pamięci SPI RAM. Z cała pewnością NIE JEST za
wolna, żeby pełnić funkcję bufora. Przepisałem kod odpowiedzialny za
odtwarzanie plików tak, żeby kierował dane z karty SD przez bufor
cykliczny w tym zewnętrznym RAM-ie. Odtwarzanie jest całkowicie płynne.
Oczywiście w teorii taki duży bufor w tym przypadku nie jest mi do
niczego potrzebny, bo zarówno karta SD jak i pendrive są zupełnie
stabilnymi źródłami danych, ale zostawię to jak jest - dla uproszczenia
projektu.
2. Przeniesienie bufora w całości do pamięci SPI pozwoliło mi odzyskać
trochę wbudowanego RAM-u, którego część przeznaczyłem na powiększenie
buforów lwIP. Robiłem to na wyczucie, wiec nadal nie wiem czy
konfiguracja jest optymalna. Wygląda jednak na to, że sytuacja się
poprawiła. Teraz jestem w stanie w czasie prawie rzeczywistym odtwarzać
stream Radia Kraków w 32 kbps. "Prawie" bo raz na jakiś czas słychać zgrzyt.
3. Natomiast stacje nadające w normalnej jakości (stereo i bitrate
powyżej 100 kbps) są już potwornie poszatkowane.
Ponieważ odtwarzanie z karty SD przez bufor SPI RAM działa normalnie to
wszystko wskazuje na to, że wina leży po stronie wolnej transmisji
danych z Internetu. Nie chce mi się wierzyć, że wbudowany w STM32
FastEthernet MAC z PHY podłączonym przez RMII nie jest w stanie
wyciągnąć tych trochę ponad 100 kbps (i z trudem wyciąga 32kbps).
Zwłaszcza, że właściwie identyczny układ bez żadnych problemów działa na
wcześniejszej konstrukcji z PIC32.
Stawiałbym raczej na konfigurację stosu lwIP. Gdzie się będzie dało
spróbuję jeszcze odzyskać w tym projekcie trochę RAM-u. Tymczasem ktoś
mógłby mi może podpowiedzieć które opcje konfiguracyjne są najbardziej
kluczowe z punktu widzenia odbierania streama audio? Co mogę wyłączyć,
które wartości powinienem poddnieść, a które mogę zmniejszyć?
Jeśli projekt doczeka się kiedyś kolejnej iteracji to chyba już na
jakimś STM32F4xx, o ile kiedyś znów będą dostępne w normalnych cenach. :)
Następne wpisy z tego wątku
- 30.09.22 09:49 J.F
- 30.09.22 11:04 Cezar
- 30.09.22 12:12 JDX
- 30.09.22 12:13 J.F
- 30.09.22 12:21 J.F
- 30.09.22 12:23 J.F
- 02.10.22 07:48 Marek
- 02.10.22 09:39 Atlantis
- 02.10.22 15:05 Marek
- 02.10.22 15:11 Marek
- 02.10.22 21:06 Atlantis
- 02.10.22 21:41 Mateusz Viste
- 04.10.22 09:04 Atlantis
- 05.10.22 17:23 Atlantis
- 05.10.22 18:37 a...@m...uni.wroc.pl
Najnowsze wątki z tej grupy
- Procesor NMOS i karta CF
- Jak sprawdzic uC
- radyjko znalazłem
- Telewizor przestał widzieć sygnał z anteny
- LED
- System operacyjny dla 6800?
- Przyłączenie działki do sieci elektrycznej
- Działalność nierejestrowana/definicja sprzętu elektronicznego/misie i kolejki
- Smukły, długi ściągacz izolacji do kynaru
- rezystor 3 omy 400W
- [newbie] Jaki multimetr za 2-4 stówy?
- szafka sieciowa
- Raspberry Pi 5 + dyski SATA
- lutownica na węgiel
- Znów czary (albo niewiedza) - tym razem fotowoltaika
Najnowsze wątki
- 2024-05-24 Chiński bestseller w Europie. Ford "martwi się nową konkurencją"
- 2024-05-24 Wiewiórki, szczury i myszy...
- 2024-05-24 Warszawa => QA Manager <=
- 2024-05-24 Warszawa => AI Specialist <=
- 2024-05-24 Zabrze => Analityk biznesowo-systemowy <=
- 2024-05-24 Ulm => Technischer Rollouter (d/m/w) <=
- 2024-05-24 Warszawa => Senior Rust Software Engineer <=
- 2024-05-24 Warszawa => Spedytor międzynarodowy <=
- 2024-05-24 Kraków => Head of International Freight Forwarding Department <=
- 2024-05-24 Warszawa => Senior Software Engineer PHP (BillPro) Contractor <=
- 2024-05-24 Warszawa => Senior Software Engineer PHP (BillPro) Kontraktor <=
- 2024-05-24 Warszawa => Cybersecurity Consultant <=
- 2024-05-24 Warszawa => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2024-05-24 Warszawa => React Native Developer <=
- 2024-05-24 Re: Ambasador USA zdradza: TVN Style nie jest firmą Unii Europejskiej :-)