• 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 ?)
#13
Z jednym przerwaniem możesz zrobić to tak, że nieważne który przycisk wciśniesz to do pary podajesz sygnał na pin z przerwaniem, w tym przerwaniu sprawdzasz, który to faktycznie przycisk jest wciśnięty. Trzeba więc dorobić jakiś osprzęt przy pinach.
Możesz też zrobić cykliczny wybór efektu, przyciskiem zmieniasz zmienną w przerwaniu 1-20 i masz do wyboru 20 efektów. Dwoma przyciskami możesz zmieniać jej wartość w górę i w dół. Na dwa przerwania możesz też podłączyć enkoder obrotowy.

Kod:
volatile int8_t numerAnimacji=0;
volatile uint8_t przerwij=1;

void animation_0() {
przerwij=1;
numerAnimacji++;
if (numerAnimacji>20) numerAnimacji=0;
}
void animation_1() {
przerwij=1;
numerAnimacji--;
if (numerAnimacji<0) numerAnimacji=20;
}
Nie musisz mieć różnych zmiennych do przerwania różnych animacji, zawsze gdy ktoś użyje przycisku + czy -przerywasz aktualną.
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, 20:25

Skocz do:


Przeglądający: 1 gości