Как предотвратить считывание бесконтактного ИК-датчика, когда он отключен?
Я работаю над проектом с инфракрасным датчиком приближения, и вывод цифрового выхода моего датчика НИЗКИЙ, когда препятствие находится рядом с датчиком, и ВЫСОКИЙ, когда препятствие находится далеко. Основная проблема заключается в том, что произошло, когда датчик отключен, на данный момент он показывает, что препятствие находится рядом, но для моего проекта это неприемлемо.
Я припаиваю еще один провод к плате датчика, и он всегда ВЫСОКИЙ, когда датчик подключен, но это использует 2 gpio для одного датчика, и я не могу получить такую роскошь, каждый gpio важен.
Мой код перед добавлением нового провода:
class ProximitySensor
{
private:
uint8_t _sensorPin;
public:
ProximitySensor(uint8_t sensorPin = 31)
{
_sensorPin = sensorPin;
pinMode(_sensorPin, INPUT);
}
bool OK()
{
if (digitalRead(_sensorPin) == LOW)
return true;
else
{
return false;
}
}
};
Так есть ли идеи, как это исправить?