Skocz do zawartości

Dziwne zachowanie Arduino Nano Every


Jeremi

Pomocna odpowiedź

Witam,

W trakcie robienia projektu (pojazd sterowany pilotem przez Bluetooth) napotkałem problem z nowo kupionym Arduino Nano Every (piny lutowałem sam). Chciałem, aby na pinach cyfrowych (podpiętych do przycisków) odczytywane było napięcie (HIGH lub LOW). Arduino z ustawionymi pinami na INPUT odczytuje stan wysoki - zawsze, choć powinien być stan niski. Wszystko działa dobrze po ustawieniu pinów na OUTPUT. Czy tak powinno być? Z tego co wiem to ustawienie na INPUT służy do odczytu, a odczyt z pinu ustawionego na OUTPUT powinien skończyć się błędem. Dla testu napisałem program:

const int pinOut = 6;
const int pinIn = 7;

void setup() {
  Serial.begin(9600);
  pinMode(pinOut, OUTPUT);
  pinMode(pinIn, INPUT);
}

void loop() {
  
  //Odczyt z pinu 6
  if(digitalRead(pinOut) == LOW)
  {
    Serial.println("Pin 6: LOW");
  }
  
  //Odczyt z pinu 7
  if(digitalRead(pinIn) == LOW)
  {
    Serial.println("Pin 7: LOW");
  }else
  {
    Serial.println("Pin 7: HIGH");
  }

  delay(1000);
}

Arduino jest podłączone tylko do komputera, żadne piny nie są połączone. A tutaj wynik:

Pin 6: LOW
Pin 7: HIGH
Pin 6: LOW
Pin 7: HIGH
Pin 6: LOW
Pin 7: HIGH
Pin 6: LOW
Pin 7: HIGH
Pin 6: LOW
Pin 7: HIGH
Pin 6: LOW
Pin 7: HIGH

Czy to ja się mylę, czy np. płytka jest uszkodzona? Z góry dziękuję za pomoc.

Link do komentarza
Share on other sites

24 minuty temu, Jeremi napisał:

Arduino z ustawionymi pinami na INPUT odczytuje stan wysoki - zawsze, choć powinien być stan niski.

Dlaczego powinien być stan niski? Na jakiej podstawie tak twierdzisz?

 

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Link do komentarza
Share on other sites

Dziękuję za pomoc, wiem gdzie zrobiłem błąd. Potraktowałem pin INPUT jako masę i zapomniałem o rezystorze.

Moglibyście jeszcze powiedzieć, czy do przełącznika dźwigniowego np. ON-OFF-ON powinno podłączać się kondensator, tak jak do switcha, aby uniknąć wahań napięcia, czy jest to niepotrzebne?

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.