Состояние переключателя не меняется в зависимости от физических изменений поплавковых переключателей 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) НЕ имеет внутреннего подтягивания. Имеет внутреннее раскрытие. Используйте другой штифт.