Нестабильный HIGH при digitalRead (ss41)

acces969
Offline
Зарегистрирован: 22.01.2017

Здравствуйте. Подключаю датчики холла вентильного двигателя гироскутера к ардуино. Питание от ардуино - 5В, скетч для проверки проще некуда:
 

void setup() {
  pinMode(A13, INPUT);
  pinMode(A14, INPUT);
  pinMode(A15, INPUT);
 
  Serial.begin(9600);
}

void loop() {

  Serial.println(" - " + (String)digitalRead(A13) + " - " + (String)digitalRead(A14) + " - " + (String)digitalRead(A15)); 

  delay(100);
}

Результат - хрень какая то. Там, где должен твердо стоять 1, периодически считывается LOW (0):
 

1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 0 - 0 - 0
 - 0 - 0 - 0
 - 0 - 0 - 0
 - 0 - 0 - 0
 - 0 - 0 - 0
 - 0 - 0 - 0
 - 0 - 0 - 0
 - 0 - 0 - 0
 - 0 - 0 - 0
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1
 - 1 - 0 - 1

 Cхема подключения так же простая: подтягивающие регистры не установлены, сигнальный провод холлов подключены сразу в пин ардуины.

dimax
dimax аватар
Offline
Зарегистрирован: 25.12.2013

acces969 пишет:

Cхема подключения так же простая: подтягивающие регистры не установлены

В хорошо поставленном вопросе содержится 100% ответа :)

acces969
Offline
Зарегистрирован: 22.01.2017

Спасибо, попробую подвести резистор. 
Хотя логика все равно не ясна - шум возникает, если нету замыкания с землей на свободном контакте. У меня же наоборот, напряжение на входе есть, следовательно шума не должно быть.

Ntrud
Offline
Зарегистрирован: 14.06.2015

  Датчик ХОЛЛА с логическим выходом, на выходе npn транзистор с открытым коллектором.

Подключи резистор 5 - 10ком между +5в и выходом и датчик начнет выдавать 0 или 5в.

Если датчик с аналоговым выходом, то необходимо измерять напряжение на выходе и 

обрабатывать результат согласно даташита.