-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!newsreader4.netcologne.de!
news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.ams4!p
eer.am4.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-
exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTE
D!not-for-mail
Date: Wed, 28 Sep 2022 13:06:14 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
Thunderbird/91.13.0
Subject: Re: lwIP - odbieranie danych przez TCP
Content-Language: pl
Newsgroups: pl.misc.elektronika
References: <632f2939$0$455$65785112@news.neostrada.pl>
<1sjefj0s46cyi.l9ylckob73a0$.dlg@40tude.net>
<tgv3su$1hf5$1@gioia.aioe.org>
<6333f956$0$447$65785112@news.neostrada.pl> <th11vo$abm$1@gioia.aioe.org>
From: Atlantis <m...@w...pl>
In-Reply-To: <th11vo$abm$1@gioia.aioe.org>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 66
Message-ID: <63342aa7$0$551$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.27.21.25
X-Trace: 1664363175 unt-rea-b-01.news.neostrada.pl 551 83.27.21.25:37486
X-Complaints-To: a...@n...neostrada.pl
X-Received-Bytes: 4501
Xref: news-archive.icm.edu.pl pl.misc.elektronika:774592
[ ukryj nagłówki ]On 28.09.2022 10:52, Mateusz Viste wrote:
> Chwalebnie... i ambitnie - bo trzeba samemu obsłużyć TCP
Od tego jest stos. Generalnie projekt zaczynałem jeszcze na PIC24, potem
przeniosłem go na PIC32. W obydwu przypadkach korzystałem już z nieco
leciwych, ale całkiem fajnych bibliotek MLA (w ostatnich latach
Microchip przestał je wspierać, zastępując środowiskiem Harmony). Ich
obsługa jest bardzo prosta, trzeba tylko potrafić napisać odpowiednią
maszynę stanów, ale taki sposób programowania mikrokontrolerów jest dla
mnie najbardziej naturalny.
> HTTP
Tak naprawdę nie potrzeba pełnej obsługi HTTP. Inicjując połączenie za
każdym razem wysyłamy takiego samego GET-a, z kilkoma podmienionymi
polami (adres serwera i lokalizacja streama na serwerze). Dostajemy
odpowiedź, którą trzeba przeparsować. Tutaj też nie ma konieczności,
żeby implementować jakąś pełną bibliotekę do obsługi klienta HTTP.
Wystarczy uwzględnić kilka odpowiedzi. Najważniejsze to 200 OK oraz
przekierowanie pod inny adres. Wszystkie inne można uznać za błąd
oznaczający konieczność zamknięcia połączenia (i ewentualnie podjęcia
kolejnej próby).
> kilka popularnych kodeków
To w całości załatwia sprzętowy dekoder VS10xx. W przypadku
software'owego podejścia de facto można by się ograniczyć do MP3
(zdecydowana większość stacji nadaje właśnie w tym formacie) i tutaj
sprawę załatwia popularna biblioteka libmad. Większość współczesnych
32bitowych mikrokontrolerów powinna ją udźwignąć (u mnie nie miało z tym
najmniejszych problemów Raspberry Pi Pico) jednak w przypadku tego
projektu nie chciało mi się z tym bawić. Bibliotekę najwygodniej
obsługuje się za pomocą wysokopoziomowego API, które wymaga RTOS-a (to
znaczy nie wymaga, ale bez niego będzie nam blokowało pętlę główną) a
niskopoziomowego jeszcze nie rozgryzłem.
> TLS...
To jest właśnie plan na dalszą rozbudowę projektu. W wersji na PIC32
było to trochę kłopotliwe, bo biblioteka TLS z MLA jest dość leciwa. Da
się ponoć wykorzystać wolfSSL-a, jednak jeszcze się w to nie wgryzłem. W
przypadku STM32 dodanie tej funkcjonalności ogranicza się do wyklikania
MBEDTLS-a w STM32CubeMX. To był jeden z powodów dla których w ogóle
zacząłem eksperymenty z przeniesieniem projektu na STM32. Niestety nie
wziąłem pod uwagę tego, że obsługa stosu będzie bardziej problematyczna.
Niezbyt przemyślany był także wybór układu STM32F107, który ma
stosunkowo mało RAM-u i nie ma nawet parametrów pozwalających na
uruchomienie na nim MBEDTLS-a. Mam nadzieję, że w serii STM32F4 znajdę
coś pinowo kompatybilnego, mającego wszystkie peryferia w tych samych
miejscach, co pozwoliłoby mi wykonać łatwą podmianę. ;)
Tak czy inaczej, na szczęście ciągle jeszcze całkiem sporo stacji
internetowych nadaje po czystym HTTP. W tym właściwie wszystkie te, na
których mi najbardziej zależało.
> Niemniej doceniam i rozumiem myśl. Też mnie denerwuje, że po włączeniu
> "radia" muszę czekać niemal minutę na dźwięk.
Ten projekt tak naprawdę i tak jest trochę przesadnie skomplikowany, w
celach edukacyjnych. Widziałem już w internecie znacznie prościej
robione radia internetowe na ESP32. :)
Następne wpisy z tego wątku
- 28.09.22 18:39 J.F
- 29.09.22 01:26 Atlantis
- 29.09.22 10:58 Cezar
- 29.09.22 16:48 Atlantis
- 29.09.22 17:05 Atlantis
- 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
Najnowsze wątki z tej grupy
- Pasta ochronna? Lutownicza?
- zagadka pneumatyczna
- Klip testowy, jak sie to używa
- Jak sie smazy elektronike z odleglosci kilkuset metrów?
- William Shockley, co-inventor of the transistor
- Gazowy kocioł CO regulacja cyklingu i regulacja pogodowa
- Zamek elektroniczny
- szablon do pasty DIY
- Głośnik potrzebny
- Silikonowy przewód ekranowany
- Wtyk bananowy ekranowany
- Co może być gorsze od pożaru elektryka?
- daltonizm
- Mały Linux
- Superkondensator. Czy to się uda?
Najnowsze wątki
- 2025-11-15 Pasta ochronna? Lutownicza?
- 2025-11-14 "Partia rządzi, partia radzi. Partia nigdy cię nie zdradzi..."
- 2025-11-14 Czyja PRAWNA wina: Ukraina zestrzeliła ruski pocisk Iskander na ambasadę Azerbejdżanu
- 2025-11-14 Warszawa => Junior Rekruter <=
- 2025-11-14 Myślenice => Specjalista ds. kontrolingu <=
- 2025-11-14 Warszawa => Fullstack PHP Developer <=
- 2025-11-14 Warszawa => Mid/Senior IT Recruiter <=
- 2025-11-14 Zakrzewo => SAP HCM Consultant <=
- 2025-11-14 zagadka pneumatyczna
- 2025-11-14 Serwis Kii w Warszawie
- 2025-11-14 Warszawa => IT Recruiter <=
- 2025-11-14 Warszawa => Senior Microsoft Dynamics 365 Business Central Consultant
- 2025-11-14 Warszawa => Senior Microsoft Dynamics 365 Business Central Konsultant
- 2025-11-14 Wrocław => Programista React ze znajomością C++ <=
- 2025-11-14 Lublin => Programista Delphi <=




Elektromobilność dojrzewa. Auta elektryczne kupujemy z rozsądku, nie dla idei