Состояние переключателя не меняется в зависимости от физических изменений поплавковых переключателей nodeMCU

Я использую поплавковые переключатели (3 шт.), Как показано ниже, и NodeMCU esp8266,

все три переключателя были определены одинаково (input_pullup)

2 из этих переключателей изменяют состояние как команды движения переключателя, но один из этих переключателей не меняет состояние и навсегда застревает в НИЗКОМ состоянии.

пожалуйста, найдите прикрепленные ниже пин-код и код с изображением переключателя в разомкнутом и замкнутом состоянии.

uint8_t level1=D0; //switch with issue // have also tried with D8 as only these two pins are free
uint8_t level2=D1; //switch working fine
uint8_t level3=D3; //switch working fine

    pinMode(level1,INPUT_PULLUP);
      pinMode(level2,INPUT_PULLUP);
      pinMode(level3,INPUT_PULLUP);
    }
    int currlevel=0;
    void loop() {
    
      int level1Sensor=digitalRead(level1);
      int level2Sensor=digitalRead(level2);
      int level3Sensor=digitalRead(level3);
      Serial.println(level1Sensor);
      Serial.println(level2Sensor);
      Serial.println(level3Sensor);

КАРТИНА ЗАКРЫТОГО СОСТОЯНИЯ КАРТИНА ОТКРЫТОГО СОСТОЯНИЯ

ПРИМЕЧАНИЕ: я также использую nrf24L01 для связи в том же nodeMCU, но контакты, используемые для этих переключателей, не перекрываются.

1 ответ

Как упоминалось в опубликованной ссылке @Juraj, D0 (GPIO16) НЕ имеет внутреннего подтягивания. Имеет внутреннее раскрытие. Используйте другой штифт.

Другие вопросы по тегам