maksz42 Napisano Lipiec 18, 2021 Udostępnij Napisano Lipiec 18, 2021 (edytowany) Cześć, w moim projekcie miałem losowe przerwania. Rozkładając problem na czynniki pierwsze doszedłem do (chyba) źródła. Na Arduino Nano (chińskie na ch340) wrzuciłem ten kod (proszę nie prawić morałów o digitalPinToInterrupt(), nie w tym problem 😉) void blink(){ digitalWrite(LED_BUILTIN, HIGH); } void setup() { pinMode(2, INPUT_PULLUP); pinMode(LED_BUILTIN, OUTPUT); attachInterrupt(0, blink, FALLING); } void loop(){} Gdy czymś metalowym (zaizolowanym lub nie) dotykam pinu 2, +5V lub masy wyzwala się przerwanie, a oscyloskop widzi szpilkę na linii +5V. Próbowałem zewnętrznego pull-up 2k, kondensatorów na pinie 2 i na zasilaniu, ale to nic nie dało. Na zasilaniu z baterii (4xAA; 4,9v) bezpośrednio do +5V jest to samo. Sprawdziłem na kilku Nano (wszystkie chińskie na ch340). Jak to możliwe że dotykając nożem masy wyzwala się przerwanie? Co to w ogóle za zjawisko fizyczne, jakaś pojemność? I jak zapobiec? Edytowano Lipiec 18, 2021 przez maksz42 Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »