Bezsensowne są te warunki w zewnętrznych przerwaniach. Tam tylko flagę ustawiaj. Poza tym odliczenie do 40 w pętli głównej bez żadnego opóźnienia to tak jak by od razu było tam 40
Proponuję zaopatrzyć się w BB na początek i liznąć postaw.
Aha, czy naprawdę przyciski muszą być z przerwań obsługiwane. Ja nie twierdzę, że czasem jest taka potrzeba (np. wybudzenie procka), ale stosowanie ich ot tak, bo są to proszenie się o problemy, zwłaszcza początkujący. Trzeba wiedzieć, że to strasznie czułe wejścia i nawet ich konfiguracja w złej kolejności może mieć wpływ na spodziewane działanie (o czym się chyba właśnie przekonałeś).