Скетч мигания ESP8266 не мигает светодиодом

После прошивки блинк-скетча на ESP8266 я удалил все ненужные провода из прошивки — и моя установка для запуска скетча выглядит так:

Что касается перепрошивки, необходимо отметить от 10 до 50 попыток, прежде чем она будет успешно прошита, в других случаях просто не удавалось загрузить и выдавать сообщение об ошибке espcomm для подключения или он прошел половину загрузки и прекратил работу. Это единственная подсказка для меня, что, возможно, моя плата просто плоха, и она не сможет запустить ни один скетч - я заказал еще один ESP8266, но мне все еще интересно, могу ли я сделать что-то не так, кажется, он довольно прямой вперед, и до этого момента я провел много исследований по этому поводу. Это мой первый проект на Arduino, не считая стартовых проектов.

На схеме также не представлены соединительные кабели «мама-папа», которые я использую для подключения к ESP8266. Они подключаются к макетной плате, а затем я подключаю к макетной плате еще один провод в том же ряду, чтобы прикрепить его к тому, к чему его нужно прикрепить. Я считаю, что все это не имеет значения — пока на него подается питание (красный светодиод), оно должно работать.

Есть идеи, почему встроенный светодиод не мигает? Или скетч вообще не запускается? Имеет ли значение проблема с загрузкой... может ли она давать ложноположительный результат? Единственная другая идея, которая у меня есть, где что-то может быть другим, - это выходной конденсатор для стабилизатора напряжения. Мне сказали, что я бы использовал конденсатор емкостью 10 мФ (но мне также сказали, что это не имеет значения... и ни то, ни другое не имеет значения). конденсатор фильтра, я его все равно вставил).

КОД (прямо из примеров Arduino IDE/ESP8266):

/*
 ESP8266 Blink by Simon Peter
 Blink the blue LED on the ESP-01 module
 This example code is in the public domain

 The blue LED on the ESP-01 module is connected to GPIO1 
 (which is also the TXD pin; so we cannot use Serial.print() at the same time)

 Note that this sketch uses LED_BUILTIN to find the pin with the internal LED
*/

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);     // Инициализируем вывод LED_BUILTIN как выход
}

// функция цикла выполняется снова и снова, вечно
void loop() {
  digitalWrite(LED_BUILTIN, LOW);   // Включаем светодиод (Обратите внимание, что LOW — это уровень напряжения
                                    // но на самом деле светодиод горит; это потому что
                                    // на ESP-01 активен низкий уровень)
  delay(1000);                      // Подождем секунду
  digitalWrite(LED_BUILTIN, HIGH);  // Выключаем светодиод, повышая напряжение
  delay(2000);                      // Подождите две секунды (чтобы продемонстрировать активный индикатор низкого уровня)
}

Майк отметил, что мой регулятор имеет значение (из-за падения напряжения) – я использую этот:

http://www.nteinc.com/specs/1900to1999/pdf/nte1904.pdf

, 👍1

Обсуждение

не все esp-01 правильно использовали картуled_builtin, или у вас есть режим вывода, который конфликтует с ним. плата также может быть шелушащейся или иметь проблемы с температурой., @dandavis


3 ответа


1

ESP8266 потребляет много энергии, Arduino может не иметь достаточного выходного тока для его питания. Кроме того, имеет значение, какой регулятор напряжения вы используете, так как у некоторых из них падение выше, чем у других.

,

Спасибо за ответ, красный светодиод горит... так он получает питание? Я использую NTE1904 http://www.nteinc.com/specs/1900to1999/pdf/nte1904.pdf - что такое dropout?, @ewizard

Может ли быть, что проблема с загрузкой вызвана недостатком питания? (редкий успех), @ewizard

Падение напряжения очень низкое (0,45 В), так что не должно быть проблемой? Как я могу проверить, дает ли Arduino достаточный ток?, @ewizard

@ewizard Ладно, да, падение напряжения на этом v-reg низкое. Вы можете запустить ESP от настоящего источника питания? Нормальный ток потребления составляет около 100 мА, что может быть слишком много для Arduino. А пиковый ток потребления может быть в три раза больше. Как вы питаете Arduino?...Это важно., @Mike

Энергоемкий, я измерил 270 мА в пиках, и Arduino не может обеспечить это. У меня была та же проблема!, @MatsK

так вы, ребята, говорите, что мне нужно питание от чего-то другого? подойдет ли батарейка 9 В (я знаю, что это неэкономично, просто хочу решить проблему)? У меня нет нормального блока питания, я запускаю ардуино от USB (моего компьютера). Если 9 В не работает... будет ли достаточно AA или AAA?, @ewizard

по какой-то причине 9 В на моей плате Arduino не работает, я подключаю его, а плата не включается, так что это не вариант, у меня есть батарейка Snap на 9 В, или я могу купить дешевый блок питания?, @ewizard

@ewizard Стандартная батарея 9 В вообще не может обеспечить большой ток. Используйте несколько батареек AA (или C или D) последовательно, если у вас нет ничего другого., @Mike

Я только что попробовал с 3 батарейками АА, и светодиод не мигает... хотя питание подается... я думаю, что, возможно, мой чип неисправен, @ewizard

@ewizard 3 батарейки АА и регулятор напряжения? Если вы использовали батарейки напрямую без регулятора, вы, вероятно, уничтожили чип. В противном случае, попробуйте перепрограммировать его., @Mike

да, с регулятором... попробую перепрограммировать его при питании от батареи - я читал, что Arduino Uno выдает 500 мА при 5 В, разве этого не достаточно?, @ewizard

Я только что попробовал перепрограммировать, но загрузка все еще так же сложна., @ewizard


1

Вот как проверить настройку регулятора напряжения:

  1. Отключите ESP8266.
  2. Подключите резистор 10 Ом 1 Вт (или выше) к выходу v-reg. Один конец идет к выходу, другой идет к земле.
  3. Измерьте напряжение на резисторе. Если оно остается стабильным около ожидаемых 3,3 В, то все в порядке. Если нет, то эта установка не может обеспечить достаточный ток для ESP8266.
,

так вы считаете, что после того, как электричество проходит через регулятор, мощности недостаточно?, @ewizard

Я проверил напряжение, выходящее из регулятора (сторона + на выходе регулятора напряжения, сторона - на земле, выходящей из esp8266), и оно составляет 3,3 В или, может быть, 3,27 В... Это достаточно близко?, @ewizard

@ewizard Да, это достаточно близко. Но это с нагрузкой? Вот почему я предложил тест выше., @Mike

Итак, резистор имитирует нагрузку? Насколько близко это должно быть к 3,3 В? Я собираюсь купить резистор на 10 Ом и мощностью 1 Вт., @ewizard

@ewizard Должно быть как минимум минимальное напряжение, необходимое для работы ESP8266. Вам придется найти эту спецификацию., @Mike

Исключает ли использование двух батареек АА необходимость проведения этого теста?, @ewizard

@wizard Две батарейки типа АА не имеют достаточного напряжения для правильного питания ESP8266 и, вероятно, даже регулятора напряжения., @Mike

извините, я имел в виду 3 батареи... в любом случае, я провел тест, и все в порядке... напряжение на резисторе остается на уровне 3,3 В, @ewizard

@ewizard Тогда проблема не в блоке питания. Я бы поставил конденсатор на выход v-reg. У меня на моем стоит 330 мкФ, чтобы справляться со скачками тока. Я бы еще трижды проверил все соединения., @Mike

хорошо... кто-то предложил мне использовать 10 мкФ для регулятора, который у меня есть... имеет ли это смысл?, @ewizard

Я попробовал выходной конденсатор на 10 мкФ, и ничего не изменилось... также трижды проверил провода, завтра смогу посмотреть, в модуле ли дело... похоже, что-то не так с флэш-памятью (ОЗУ) на этом устройстве, @ewizard


0

Некоторые платы ESP8266-V01 не мигают встроенным светодиодом (работает только с GPIO2), поэтому подключите его к резистору (~ 150 Ом) последовательно с внешним светодиодом на землю. Я не знаю почему... так оно и есть...

,