• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Вопрос Не могу моргнуть светодиодом

igrushkin

Member
Странная проблема: сложные скрипты (чтение Т с DHT22 и постинг на MQTT сервер) работают идеально, а банальный LED Blink не работает
Использую стандартный пример из IDE, но на пине не появляется HIGH, хоть тресни, пробовал 3 разных пина
Плата ESP-12e
 

igrushkin

Member
Разобрался.
void setup() {
pinMode(4, OUTPUT);
digitalWrite(4, HIGH);
}

void loop() {
digitalWrite(4, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(4, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}

void setup() {
pinMode(4, OUTPUT);
}

void loop() {
digitalWrite(4, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(4, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}

хотя в Arduino Classic второй код работает, он есть в примерах
 

AVL

Member
Молодец, что разобрался, но обїясни мне, пожалуйста, почему ТАК происходит.
Я вижу разницу только в одну строку (делаем ПИН в ХАЙ).
В чём философия, такой разниці?
Ибо ж оба примера должні б работать.
Спасибо!
 

igrushkin

Member
ответ: потому, что Китай :))
я где-то читал, что по умолчанию пины в ESP находятся в imput режиме, видимо, команды pinMode (pin, OUTPUT) недостаточно, нужно прописать состояние пина, а то он не знает, умный он или красивый
Возможно, это баг в реализации Arduino IDE для ESP
 
  • Like
Реакции: AVL
Сверху Снизу