10-03-2021, 07:00
No z takim kodem to ja się nie dziwię że ty masz problem bo nie znasz PODSTAW...
void toggleLedISR (){
static unsigned long lastTime;
unsigned long timeNow = millis();
unsigned long por = timeNow - lastTime;
if (por > 350) {// drganie styków - nie reaguje na załączenie poniżej 50 ms
ledState =! ledState ;
digitalWrite(LED_BUILTIN, ledState);
}
lastTime = timeNow ;
}
Przerwanie wykonuje się raz nie można używać millis....
void toggleLedISR (){
static unsigned long lastTime;
unsigned long timeNow = millis();
unsigned long por = timeNow - lastTime;
if (por > 350) {// drganie styków - nie reaguje na załączenie poniżej 50 ms
ledState =! ledState ;
digitalWrite(LED_BUILTIN, ledState);
}
lastTime = timeNow ;
}
Przerwanie wykonuje się raz nie można używać millis....
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą.