• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
ws2812 - przyciski przełączające animacje(jak ?)
#10
Na początek otwórz nowy szkic i naucz się używać przerwań zewnętrznych. Chcesz zrobić nieco bardziej skomplikowany program to więcej musisz w niego włożyć od siebie. Przy takim programie wystarczy jedno przerwanie, wewnątrz jego obsługi możesz sprawdzić stan przycisków, ustawić zmienną "przerwij"=1 i np. "efekt" =15, wyłączasz przerwanie.
Wszystkie efekty (ich funkcje) możesz wrzucić do switch case, gdy wewnątrz efektu zauważysz przerwij=1 to ustawiasz przerwij=0, opuszczasz efekt i potem switch case, przy ponownym wejściu w switch case kasujesz ewentualne flagi przerwania, włączasz przerwanie i wchodzisz w efekt 15.
Dzięki temu nawet jeśli przycisk wcisnąłeś w czasie jakiegoś delay czy trwania innych zadań informacja o tym będzie na Ciebie czekać w zmiennej przerwij. Zmienna przerwij powinna mieć dodatkowo specyfikator volatile, bo jest zmieniana w przerwaniu i poza nim.
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
  


Wiadomości w tym wątku
RE: ws2812 - przyciski przełączające animacje(jak ?) - przez kaczakat - 18-06-2019, 17:24

Skocz do:


Przeglądający: 1 gości