(03-07-2019, 19:27)PierwszyWolnyLogin napisał(a): Nie bardzo mam pomysł jak biegając w pętli mógłbym zrobić np. taki proces:Proste, wręcz banalne dla takiego fachowca jak Ty. Aż dziwię się, ze pytasz, czyżby prowokacja?
- sprawdź czy do piekarnika coś włożono ważąc zawartość,
- jeśli wsad zgadza się z oczekiwanym grzejemy piekarnik (PID),
- po osiągnięciu określonej temp. puszczamy parę wodną żeby chleb nie wysechł,
- mierzymy jak chleb rośnie sprawdzając jego ...wysokość ,
- po założonym czasie i gdy chleb jest odpowiednio wysoki wyłączamy grzanie,
- gdy piec ostygnia wzywamy obsługę. koniec.
Zmiany stanów procesów nie trwają długo, można użyć banalnych millis i synchronizacji zadań. Jak nie chcesz "walczyć" z millis, to użyj RTOS, ale spodziewaj się problemów większych niż w wielowątkowości.
Sens RTOS dla Arduino może i jakiś jest, przykładowo wysyłanie danych do serwera z użyciem TCP może trwać 5 a nawet 30 sekund. Wtedy RTOS umożliwi działanie innych wątków ale nie oszukujmy się, biblioteki arduino sa skopane i "blokują" CPU. Dobrze napisane nie robiły by tego i RTOS nie byłby potrzebny. Ponadto RTOS lubi RAM, jak nie masz z 20 k to raczej RTOS nie ma sensu. Ponadto to będzie jak pudrowanie trupa, źle napisanych bibliotek Arduino, RTOS cudownie nie naprawi!