• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Zły odczyt stanu na porcie digital.
#11
Odczyt stanu na porcie jest poprawny Smile Zmieniłbym jednak Twój kod.

Kod:
void setup() {
pinMode(7, OUTPUT);
pinMode(11, INPUT_PULLUP);
Serial.begin(9600);
}

void loop() {
if(digitalRead(11) == LOW){
Serial.println("Jest");
digitalWrite(7, HIGH);
}
else{
Serial.println("nie ma");
digitalWrite(7, LOW);
}
}

Omówienie pokrótce: jeśli podpiąłeś przycisk do masy, to tę masę musisz wykrywać, stąd warunek sprawdzania 'LOW', nie 'HIGH'. Druga rzecz, że INPUT_PULLUP, nie INPUT, ponieważ port nie ustawi sobie automatycznie stanu wysokiego. Tak naprawdę pojawi się tam nie wiadomo co, co gorsza to coś będzie oscylować, a więc w pewnym momencie może spaćdo poziomu 'LOW', więc, dla bezpieczeństwa i pewności działania, podciągnięcie PULLUP.
 
Odpowiedź
  


Wiadomości w tym wątku
RE: Zły odczyt stanu na porcie digital. - przez ANT - 21-01-2017, 22:27
RE: Zły odczyt stanu na porcie digital. - przez krn78 - 24-01-2017, 08:58

Skocz do:


Przeglądający: 2 gości