Arduino Polska Forum
Przerwanie w due, od razu się wywołuje. - Wersja do druku

+- Arduino Polska Forum (https://forum.arduinopolska.pl)
+-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino)
+--- Dział: Programowanie w Arduino (https://forum.arduinopolska.pl/dzial-programowanie-w-arduino)
+--- Wątek: Przerwanie w due, od razu się wywołuje. (/watek-przerwanie-w-due-od-razu-si%C4%99-wywo%C5%82uje)



Przerwanie w due, od razu się wywołuje. - me_how_84 - 19-06-2024

Cześć, 

Mam zagadkę której nie potrafię rozwiązać. A mianowicie przesiadłem się na due, ponieważ potrzebuję większej ilości przerwań. Mam problem z tym, że od razu po uruchomieniu programu załączonego poniżej, przerwanie wywołuje podprogram. Próbowałem rozmaitych zmian w programie ale nic nie daje porządanego rezultatu. Bedę wdzięczny za pomoc od bardziej doświadczonych - utknąłęm. 

Poniżej program testowy, od razu po resecie state zmienia się na LOW.


const byte ledPin = 51;
const byte interruptPin = 42;
volatile byte state = HIGH;

void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(interruptPin, INPUT_PULLUP);
  attachInterrupt(digitalPinToInterrupt(interruptPin), blink, FALLING);
}

void loop() {
  digitalWrite(ledPin, state);
}

void blink() {
state = !state;
}


Będę mega wdzięczny za pomoc.

Pozdrawiam,
Michał. 


RE: Przerwanie w due, od razu się wywołuje. - kaczakat - 20-06-2024

W setup można dodać jakiś delay parę ms by się stany ustabilizowały, nikt o to nie będzie krzyczał.