-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.man.poznan.pl!newsfeed.pionier.net
.pl!3.eu.feeder.erje.net!feeder.erje.net!feeds.phibee-telecom.net!newsreader4.n
etcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!
peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!newsfeed.neos
trada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neost
rada.pl.POSTED!not-for-mail
Date: Thu, 3 Nov 2022 15:02:37 +0100
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.4.1
Subject: Re: STM32F107 + lwIP + FreeRTOS
Content-Language: pl
Newsgroups: pl.misc.elektronika
References: <6357a2b4$0$458$65785112@news.neostrada.pl>
<6362d03b$0$558$65785112@news.neostrada.pl>
<63635e39$0$451$65785112@news.neostrada.pl>
<63636ede$0$563$65785112@news.neostrada.pl>
From: JDX <j...@o...pl>
Organization: N/A
In-Reply-To: <63636ede$0$563$65785112@news.neostrada.pl>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 34
Message-ID: <6363c9fd$0$549$65785112@news.neostrada.pl>
NNTP-Posting-Host: 94.42.46.224
X-Trace: 1667484158 unt-rea-b-01.news.neostrada.pl 549 94.42.46.224:56316
X-Complaints-To: a...@n...neostrada.pl
X-Received-Bytes: 2674
Xref: news-archive.icm.edu.pl pl.misc.elektronika:775191
[ ukryj nagłówki ]On 03.11.2022 08:33, Atlantis wrote:
[...]
> podobnego mechanizmu z binary semaphoirami, ale najwyraźniej robię coś
> źle, bo po jego dodaniu mam dość mocny spadek wydajności - w tym
> przypadku słyszalny.
>
Zwróć uwagę na to, że ,,sekcje krytyczne" obudowane muteksem/semaforem
powinny być możliwie krótkie, aby wątki nie blokowały się na zbyt długo
na tych muteksach/semaforach.
> Na chwilę obecną przeszedł mi do głowy jeszcze pomysł, żeby zastosować
> kolejkę wiadomości. Na zasadzie:
>
> Task I/O:
> - Sprawdza stan kolejnych przycisków
> - Jeśli wykryte zostanie naciśnięcie przycisku na kolejkę wysyłana jest
> wiadomość z kodem operacji do wykonania
>
> Główny task:
> - Cyklicznie wywołuje funkcję obsługującą maszynę stanów urządzenia
> - Następnie pobiera wiadomość z kolejki i wykonuje odpowiadającą jej
> operację, modyfikującą stan maszyny stanów.
> - W kolejnym przebiegu maszyna będzie już obsługiwana w swoim nowym stanie.
>
> Dzięki temu task I/O nigdy nie będzie wywoływał funkcji modyfikujących
> stan maszyny działającej w drugim tasku.
Właśnie wynalazłeś przekazywanie wiadomości i kolejkę komunikatów. :-)
https://en.wikipedia.org/wiki/Message_passing
https://en.wikipedia.org/wiki/Message_queue
To niezły pomysł, ale wydaje mi się, że czytanie kilku klawiszy i
enkodera da się załatwić kilkoma współdzielonymi (globalnymi) zmiennymi
obudowanymi muteksem bądź semaforem. Tak czy inaczej, synchronizacja
musi być jakoś zapewniona.
Następne wpisy z tego wątku
- 03.11.22 20:57 Marek
Najnowsze wątki z tej grupy
- bateria na żądanie
- pradnica krokowa
- Nieustający podziw...
- Coś dusi.
- akumulator napięcie 12.0v
- Podłączenie DMA 8257 do 8085
- pozew za naprawę sprzętu na youtube
- gasik
- Zbieranie danych przez www
- reverse engineering i dodawanie elementów do istniejących zamkniętych produktów- legalne?
- Problem z odczytem karty CF
- 74F vs 74HCT
- Newag ciąg dalszy
- Digikey, SN74CBT3253CD, FST3253, ktoś ma?
- Szukam: czujnik ruchu z możliwością zaączenia na stałe
Najnowsze wątki
- 2025-01-22 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-01-22 Warszawa => International Freight Forwarder <=
- 2025-01-22 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-21 Zgromadzenie użytkowników pojazdów :-)
- 2025-01-21 bateria na żądanie
- 2025-01-21 Warszawa => IT Business Analyst <=
- 2025-01-21 Warszawa => IT Assets Manager <=
- 2025-01-21 Warszawa => Presales / Inżynier Wsparcia Technicznego IT <=
- 2025-01-20 Białystok => Delphi Programmer <=
- 2025-01-20 Białystok => User Experience Designer <=
- 2025-01-20 Katowice => UX Designer <=
- 2025-01-20 Wrocław => Specjalista ds. Sprzedaży <=
- 2025-01-20 Białystok => Solution Architect (Java background) <=
- 2025-01-20 Szczecin => Senior Field Sales (system ERP) <=
- 2025-01-21 e-doręczenia