czwartek, 21 września 2017

Program z pamięcią czyli automat skończony i Arduino

Grzybosuszarka miała być banalnym programem demonstracyjnym wykorzystania zdalnego sterowanego przełącznikiem SONOFF. Program jest rzeczywiście banalny ale problemy jakie zaczynają się ujawniać przy jego analizie już nie. Potknąłem się o zwis BLYNKa (jakkolwiek by to nie brzmiało) i o bibliotekę BUTTON - patrz poprzedni wpis. Teraz głowę zaprząta mi finite state machine a po naszemu automat skończony. Teoria automatów to przecież klucz do zrozumienia nowoczesnej elektroniki cyfrowej a mikroprocesorów w szczególności. Automat More'a, Mealy'ego jest w każdym Arduino UNO czy NANO. Trochę jestem zaskoczony przeniesieniem teorii automatów na poziom programowania - choć nie powinienem. W końcu programiści wirtualizują kolejne elementy rzeczywistości.... Ale poważnie - automat skończony znajdzie zastosowanie w praktycznie każdym bardziej złożonym niż miganie LEDem programie a i w tym także. I znakomicie ułatwia panowanie nad integralnością  kodu i realizowanych przezeń funkcji. A więc dziś trochę teorii dla praktyki - automaty skończone na start

poniedziałek, 18 września 2017

Biblioteki BUTTON raz jeszcze

Znalezione obrazy dla zapytania przycisk"Tyle wiesz ile sprawdzisz w praktyce" Trawestując nieco słowa W. Szymborskiej (nie przypuszczałem, że takie postacie będą wspominane na tym blogu) muszę mocno zmienić swoje wcześniej wyrażone opinie. Dotyczą one bibliotek typu BUTTON omawianych dawno temu. Niestety zwyczajnie się pomyliłem i muszę swoich faworytów wrzucić do kosza. Obsługa przycisków w pętli głównej jest nieporozumieniem. Tylko przerwanie lub  pooling. Ja wybieram pooling ze względu na kompatybilność z innym głównymi bibliotekami w moich projektach - BLYNKiem i TIMERSem. Dziś więc o możliwościach i zastosowaniu biblioteki OneBUTTON