ESP8266-01 и OLED 0,96 дюйма переехали на макетку одним вечером: экран зажёгся, а Wi-Fi-модуль вечно перезагружался при подключении к роутеру — бесконечный поиск сети. Скетч был ни при чём: модуль в момент передачи просит 300-500 миллиампер, а пин 3.3V платы держит около 50. Перезагрузка была честной реакцией на голодание, и никакая перепрошивка её не лечила.
Пин 3.3V на Uno — не розетка: за ним сидит маленький стабилизатор с крошечным потолком, и это лишь половина истории. Вторая половина: даже отдельный AMS1117 не волшебник. У него свои лимиты по входу, теплу и конденсаторам, и «повесил модуль на 3,3» без арифметики заканчивается той же перезагрузкой, только в другом месте схемы.
Как ставить стабилизатор, размечать зоны и резать уровни сигналов — я разобрал в первом уроке про AMS1117, там же история с задушенным nRF24. Здесь продолжение: сколько он реально выдаёт с радиатором и без, какие конденсаторы обязаны стоять рядом и кого можно кормить от 3,3-вольтовой шины, не наступая на грабли.
Конденсаторы в обвязке — продолжение темы фильтрующих ёмкостей, а счёт миллиампер — то же бюджетирование тока, только на другой шине. Если коротко про выбор плат: почему ESP вообще живёт на 3,3 вольта — сравнение ESP32 и ESP8266.
Обвязка: дропаут 1,1 В и два конденсатора
Дропаут — минимальная разница между входом и выходом, при которой стабилизатор ещё держит паспортные 3,3 вольта. У AMS1117 это 1,1 вольта: входу нужно хотя бы 4,4. USB и любой блок на 5 В — штатно; четыре NiMH-банки на 4,8 — впритык, на середине разряда выход уже проседает; литий на 3,7 не выходит вообще. Для батарей берите DC-DC: LM2596 превращает напряжение, а не сжигает разницу в тепло.
Конденсаторов вокруг AMS1117 ровно два, и даташит называет номиналы: 10 мкФ на входе и 22 мкФ на выходе. Готовые модули несут их на плате, и это не украшение: без выходной ёмкости линейный стабилизатор склонен к самовозбуждению — на шине появляется переменка в сотни милливольт, и датчики врут все разом. Ставлю тантал или керамику как можно ближе к ножкам корпуса.
Третья ёмкость живёт уже у потребителя: керамика 100 нФ прямо у ножек модуля, который дёргает ток рывками. Передача ESP на метре проводов просаживает шину локально — стабилизатор честно держит 3,3 у себя, а у модуля в этот момент 3,0. Сотые доли микрофарады у разъёма съедают такой рывок: правила те же, что и для остальной периферии в уроке по ссылке выше.
Про полярность ёмкостей: тантал ставится плюсом к выходу, и переполюсовка кончается хлопком — танталы этого не прощают. Керамика полярности не имеет и сейчас стоит копейки, так что 22 мкФ керамики на выходе — мой дефолт. Электролиты тоже работают, но на макетке они крупные, а по возрасту хуже держат ёмкость: для стенда годится, для долгого проекта берите тантал или керамику.
У цифр этого раздела есть условия, без которых они врут. Дропаут 1,1 В — паспорт при токе под ампера: на сотне миллиампер стабилизатор удерживает выход и при меньшей разнице, но проектировать под это нельзя, потому что дропаут растёт вместе с током — ровно когда нагрузка просит больше всего. Пара конденсаторов тоже не симметрична: выходные 22 мкФ стоят всегда, а входные 10 мкФ критичны в первую очередь при длинных проводах до источника — чем дальше его фильтр, тем настойчивее даташит требует ёмкость у входа.
Честные токи: 800 мА — это с радиатором
Паспорт AMS1117 — один ампер, но тепло пересчитывает обещание сразу: P = (5 − 3,3) × I. Восемьсот миллиампер — 1,36 ватта в корпусе SOT-223: без радиатора он перегревается и уходит в тепловую защиту, выход пульсирует, модули глючат без видимой причины. С радиатором или медным пятаком под корпусом 800 мА живут годами; без — реальный потолок 400-500 миллиампер в свободном воздухе, и в закрытом корпусе меньше.
Тепловую защиту я ловил на собственном логгере: на столе всё работало, в закрытой коробке на солнце — массовые глюки карты и отваливающийся экран. Палец на корпус даёт ответ за минуту: тёплый — норма, рука отдёргивается — считайте ватты заново или снижайте ток. Просадка входа тоже прибавляет тепла: при 4,5 вольта на входе рассеивается уже 1,2 вольта разницы, а не 1,7 — мелочь, которая спасает корпус.
Отдельная правда про радиатор на макетке: SOT-223 греет в основном плату через свои широкие ножки, а лепестки макетки тепло в пластик почти не отводят. Радиатор-пластина сверху помогает слабо, и «800 мА с радиатором» — это про плату с медным полигоном под ножками, а не про беспаечную доску. Макетке я оставляю честные 500 миллиампер и не жадничаю: перегретый стабилизатор дороже лишнего провода до DC-DC.
Дальше бюджет шины: складываем пики потребителей. OLED 20-30 мА — экран, о котором я писал в уроке про первый OLED; датчики по единицам; nRF24 130-150 в передаче; ESP8266 300-500 в пике Wi-Fi. Сумма под 400 — впритык к голому потолку, и это ещё без запаса. Мой предел для AMS1117 без радиатора — полампера суммарно; выше — радиатор или DC-DC.
| Модуль | Ток (пик) | Источник |
|---|---|---|
| OLED 0,96 SSD1306 | 20-30 мА | пин 3.3V платы или AMS1117 — с запасом |
| nRF24L01+ | 130-150 мА | AMS1117 и конденсатор у разъёма |
| ESP8266-01 / NodeMcu | 300-500 мА в передаче | только отдельный стабилизатор, не пин платы |
| BME280, DHT, датчики | 1-3 мА | любой источник 3,3 В |
Кого кормить: разбор по потребителям
OLED 0,96 дюйма на SSD1306 — самый благодарный клиент: по I2C он берёт 20-30 миллиампер при полностью залитом экране и меньше при обычной текстовой строчке. Пин 3.3V платы ведёт его без вопросов, от AMS1117 — тем более. Яркость, кстати, регулируется командой: приглушённый вдвое экран ест вдвое меньше, и в батарейных проектах это первая экономия, а не размер шрифта.
nRF24L01+ — клиент капризный: в передаче он просит 130-150 миллиампер, что выше потолка пина платы втрое, и просадка на нём оборачивается потерей пакетов — историю я рассказывал в первом уроке по ссылке выше. От AMS1117 модуль живёт при одном условии: тантал или керамика на 10 мкФ прямо у разъёма, потому что провод в полметра уже не даёт модулю взять рывок из стабилизатора мгновенно.
ESP8266 — клиент на грани даже для отдельного стабилизатора: пик передачи 300-500 миллиампер, и на голом AMS1117 он идёт впритык к потолку. NodeMcu, кстати, несёт свой AMS1117 на плате и питается от пяти вольт на VIN или USB — попытка накормить его от 3,3-вольтовой шины заканчивается там же, где начиналась: модуль не поднимается. Голый ESP8266-01, наоборот, ждёт прямые 3,3 вольта без посредников.
Отсюда порядок, по которому я собираю шину. Пара датчиков и OLED — пин 3.3V платы справляется: их суммарные 25-35 миллиампер даже не дотягивают до половины его скромного потолка. Добавился nRF24L01+ — нужен отдельный AMS1117, и ёмкость у разъёма уже не обсуждается, иначе модуль теряет пакеты на ровном месте. Добавился ESP8266 — про пин забыли: один его пик 300-500 мА выбирает весь запас, который я оставляю стабилизатору без радиатора. Каждый новый потребитель — пересчёт бюджета с нуля: на глазок такие суммы не прикидывают.
Стенд: счётчик бюджета и модель дропаута
// Счётчик бюджета: цифра 1-3 в мониторе переключает потребителя,// скетч печатает сумму пиков и вердикт по стабилизатору.const int OLED_MA = 30;const int NRF_MA = 150;const int ESP_MA = 450;const int DATCHIKI_MA = 10; bool oledEst = true;bool nrfEst = false;bool espEst = true; void setup() { Serial.begin(9600); Serial.println("1 - OLED, 2 - nRF24, 3 - ESP8266: vklyuchit/vyklyuchit"); pereschet();} void pereschet() { int itog = DATCHIKI_MA; if (oledEst) itog += OLED_MA; if (nrfEst) itog += NRF_MA; if (espEst) itog += ESP_MA; Serial.print("summarnyj pik: "); Serial.print(itog); Serial.println(" mA"); if (itog <= 500) { Serial.println("AMS1117 bez radiatora - vyterpit"); } else if (itog <= 800) { Serial.println("nuzhen radiator na SOT-223"); } else { Serial.println("vyshe potolka - berite DC-DC"); }} void loop() { if (Serial.available() > 0) { int komanda = Serial.parseInt(); if (komanda == 1) oledEst = !oledEst; if (komanda == 2) nrfEst = !nrfEst; if (komanda == 3) espEst = !espEst; pereschet(); }}Счётчик считает пиками, а не средними: OLED живёт на своих 20-30 постоянно, ESP — единицы миллиампер в покое и 450 в передаче, и сумма обязана сходиться по худшему случаю. Включайте флаги цифрами в мониторе и смотрите, как вердикт меняется от «вытерпит» до «берите DC-DC»: одна строка объясняет, почему модуль, работавший на столе, умирал в коробке.
На живой макетке ту же работу делает вольтметр: A0 в шину 3,3, ESP в передаче — и показания падают раньше, чем модуль отваливается. Держите обе проверки в привычке: счётчик до сборки, вольтметр после — тогда стабилизатор не превращается в подозреваемого номер один при каждом глюке.
Мой рабочий набор на макетке выглядит так: AMS1117-модуль у левого края, его выход — во вторую плюсовую рейку правой половины, 100 нФ у каждого радио-модуля и Wi-Fi-платы. После сборки две проверки: вольтметр на шине в покое — ровно 3,3, и в момент передачи ESP — просадка до 3,1-3,2 ещё терпима, ниже — шину расширяем. Так питание перестаёт быть подозреваемым номер один в каждом глюке.
- 1. Минимальный вход для честных 3,3 В от AMS1117?
- 2. Сколько реально потянет AMS1117 без радиатора в свободном воздухе?
- 3. Что происходит при пиковой передаче ESP8266, питаемого от пина 3.3V Uno?
- 4. Какие конденсаторы просит даташит вокруг AMS1117?
- 5. Питание 4,8 В от четырёх NiMH-банок. Что увидим на выходе к вечеру?
- Дропаут AMS1117 — 1,1 В: вход от 4,4 В; USB и 5-вольтовые блоки — штатно, литий и севшие NiMH — мимо.
- Обвязка: 10 мкФ на входе, 22 мкФ на выходе, плюс 100 нФ у ножек пульсирующего потребителя.
- Без радиатора реально 400-500 мА; 800 мА — уже с радиатором, паспортный ампер — предел, а не план.
- OLED (20-30 мА) живёт от пина 3.3V платы; ESP8266 с его пиком 300-500 мА — только от отдельного стабилизатора.
- Считайте шину по пикам: сумма потребителей под 400 мА — впритык, выше полампера — радиатор или DC-DC.
Частые вопросы по теме урока
- Минимальный вход для честных 3,3 В от AMS1117?
- Дропаут 1,1 вольта плюс выходные 3,3 — входу нужно хотя бы 4,4. USB и 5-вольтовые блоки проходят, литий на 3,7 — нет. 4,4 В
- Сколько реально потянет AMS1117 без радиатора в свободном воздухе?
- Тепло P = 1,7 × I не даёт SOT-223 жить на ампере: без радиатора реальный потолок 400-500 мА. Паспортный ампер — предел, а не план. 400-500 мА
- Что происходит при пиковой передаче ESP8266, питаемого от пина 3.3V Uno?
- Передача — самый прожорливый момент: модуль просит в шесть-десять раз больше, чем даёт пин. Просадка сбрасывает ESP, и цикл повторяется. модуль зависает и перезагружается: пик 300-500 мА против ~50 мА пина
- Какие конденсаторы просит даташит вокруг AMS1117?
- Вход 10 мкФ, выход 22 мкФ. Без выходной ёмкости стабилизатор склонен к самовозбуждению — на шине появляется переменка, и датчики врут все разом. 10 мкФ на входе, 22 мкФ на выходе
- Питание 4,8 В от четырёх NiMH-банок. Что увидим на выходе к вечеру?
- На середине разряда банки отдают меньше 4,4 вольта, дропаут не выбран, и выход проседает вслед за батареей. Для батарейного питания — DC-DC. просадку: выход ниже 3,3, модули глючат