19-07-2019, 20:35
Pierwszy program działał na przerwaniu (i dobrze) i wystarczyło w pętlach for(int i=0;i <NUMPIXELS ;i++),
wstawić gdzieś if(efekt==2) break; dla funkcji efekt_1() ;
oraz if(efekt==1) break; dla funkcji efekt_2() ;
Drugi program jest bardziej rozbudowany i podejrzewam, że blokuje się tak samo jak pierwszy, ale nie chciało mi się go czytać, bojest napisany bardzo nie optymalnie. To znaczy, że jeśli program miałby robić jeszcze inne rzeczy, to się wysypie (przez delaye). Te inne rzeczy to nawet sprawdzanie stanu przycisku, które mu nie wychodzą tak, jak wyjść powinny.
wstawić gdzieś if(efekt==2) break; dla funkcji efekt_1() ;
oraz if(efekt==1) break; dla funkcji efekt_2() ;
Drugi program jest bardziej rozbudowany i podejrzewam, że blokuje się tak samo jak pierwszy, ale nie chciało mi się go czytać, bojest napisany bardzo nie optymalnie. To znaczy, że jeśli program miałby robić jeszcze inne rzeczy, to się wysypie (przez delaye). Te inne rzeczy to nawet sprawdzanie stanu przycisku, które mu nie wychodzą tak, jak wyjść powinny.
Jeśli masz problem z kodem lub sprzętem, zadaj pytanie na forum. Nie odpowiadam na PW, jeśli nie dotyczą one spraw forum lub innych tematów prywatnych.