eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaSTM32F107 + lwIP + FreeRTOSRe: STM32F107 + lwIP + FreeRTOS
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!3.eu.feeder.erj
    e.net!feeder.erje.net!weretis.net!feeder8.news.weretis.net!newsreader4.netcolog
    ne.de!news.netcologne.de!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.
    ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.p
    l!unt-exc-01.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl
    .POSTED!not-for-mail
    Date: Wed, 26 Oct 2022 21:31:52 +0200
    MIME-Version: 1.0
    User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
    Thunderbird/102.3.0
    Subject: Re: STM32F107 + lwIP + FreeRTOS
    Content-Language: en-US, pl
    Newsgroups: pl.misc.elektronika
    References: <6357a2b4$0$458$65785112@news.neostrada.pl>
    <6358d9d5$0$563$65785112@news.neostrada.pl>
    <a...@n...neostrada.pl>
    From: Atlantis <m...@w...pl>
    In-Reply-To: <a...@n...neostrada.pl>
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    Lines: 27
    Message-ID: <63598b28$0$553$65785112@news.neostrada.pl>
    Organization: Telekomunikacja Polska
    NNTP-Posting-Host: 83.27.26.211
    X-Trace: 1666812712 unt-rea-b-01.news.neostrada.pl 553 83.27.26.211:36966
    X-Complaints-To: a...@n...neostrada.pl
    X-Received-Bytes: 2452
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:775073
    [ ukryj nagłówki ]

    On 26.10.2022 13:18, Marek wrote:

    > Jak pamiętam łączyłem kiedyś MLA z FreeRTOS i faktycznie na prawdę
    > zacnie to pamięci potrzebowało na stos, nie żałuj.

    I faktycznie - tutaj leżała przyczyna. Jeśli dobrze rozumiem FreeRTOS
    (przynajmniej w wersji udostępnianej przez STM32CubeMX) nie alokuje
    pamięci na stosy tasków ze sterty, ale używana jest do tego statycznie
    wydzielona przestrzeń w RAM-ie o z góry określonej wielkości.
    STM32Cube posiada wskaźnik stopnia zajętości tej przestrzeni,
    najwyraźniej jednak bierze on pod uwagę tylko taski utworzone przez
    użytkownika. Te wygenerowane automatycznie przez sterowniki nie są brane
    pod uwagę, co jest mylące.

    Wpadłem na to po tym gdy zorientowałem się, że zmniejszenie rozmiaru
    stosu głównego tasku sprawiło, że sterownik USB nagle zaczął działać.
    Zwiększyłem więc ilość pamięci na stosy o kilka kolejnych kB i wtedy
    także Ethernet ruszył. :)

    Teraz pozostało jeszcze przepisanie kodu aplikacji w taki sposób, aby w
    pełni wykorzystać możliwości RTOS-a. Pierwsza rzecz to to oczywiście
    zaimplementowanie socket API, ale poza tym trzeba będzie usunąć
    mechanizmy oparte na programowaniu współbieżnym i zastąpić je kilkoma
    taskami. Powinno się dość dobrze sprawdzić np. podczas przesyłania
    danych do/z bufora.


Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: