Подскажите как реализовать супервизор (детектор пониженного напряжения) для ESP32 и нужен ли он вообще? У меня часто прошивка сбрасывается (вот тема об этом: http://forum.amperka.ru/threads/Сбрасывается-прошивка-esp32.22354/), непонятно почему это происходит. Подозрение пало на то, что это происходит когда выключается питание, тем более, что у меня блоки питания китайские, на них после выключения ещё светодиод горит секунд 10 плавно затухая, т.е. запасается видимо в конденсаторах энергия и потом плавно напряжение уменьшается - читал, что такое вредно для микроконтроллеров и может приводить к стиранию памяти (что у меня и случается). Попробовал реализовать схему защиты от этого на детекторе пониженного напряжения КР1171СП47 - он при снижении напряжения ниже 4,7 В (примерно) должен держать сброс (соединять на ESP32 пин EN с GND). https://cloud.mail.ru/public/J4YY/8EpXqA6S4 Вроде бы несложная схема, но ничего не вышло - происходит самопроизвольный ресет с частотой от долей секунды до примерно 10 секунд, очень редко - несколько минут. И причем как-то странно сбрасывается - напряжение на EN не снижается до нуля как при ручном нажатии кнопки EN, а снижается с 3,3 В до примерно 2,5 В и потом восстанавливается. Я не понимаю в чём дело, почему срабатывает КР1171СП47? Ведь на осциллограмме видно, что напряжение питания не падало, т.е. не выходило за заданные пределы и срабатывания не должно происходить! И почему такой странный ресет происходит не до нуля, а до 2,5 В? https://cloud.mail.ru/public/bXHo/Um57xk6ay https://cloud.mail.ru/public/W1SA/R11zKcnaV Возможно я неправильно использую КР1171СП47 без обвязки т.к. в даташите упоминается про резитор и конденсатор с помощью которых можно задать временную задержку на срабатывание? Подскажите плиз в чем дело и может быть как-то мне по-другому можно решить проблему со стиранием памяти ESP32?
не нужен, он и так есть есть в любом МК так ведут себя абсолютно любые БП, у которых на выходе стоят конденсаторы ИМХО, не страдайте ерундой, миллионы пользователей просто выключают ЕСП и из-за снижения напряжения при выключении прошивка ни у кого не слетает, только у вас. Ищите причины в другом месте
МК вообще не при чем. Прошивка записана в совершенно другой микросхеме - флеш памяти. Супервизор здесь не поможет - только замена.
Так, а флэш-память разве не может стираться из-за низких напряжений? О замене речи быть не может, ведь память впаяна в готовую плату, конкретно вот эту, купленную на Амперке https://amperka.ru/product/esp32-wroom-wifi-devkit-v1 (но и на китайских платах с алиэкспресса тоже самое происходит), симптомы такие на всех устройствах (их у меня около 10 штук)
Нет. При низком напряжении невозможна операция стирания/записи, т.к. внутри стоит повышайка до 12 вольт. При низких напряжениях она неспособна формировать 12 вольт для создания заряда на затворах транзисторов флеш ячеек.
Если esp32 перегружается по питанию, то она об это сообщает в самом начале загрузки. Нужно просто внимательней посмотреть ...
Спасибо, видимо дело не в качестве платы или памяти т.к. это не единичный случай, как я уже писал у меня таких плат много и ещё есть китайские - везде такая же история. Дело видимо в программном коде (на микропитоне) всё же, который прошивается туда. Его писал не я, да я и не разбираюсь в этом. Может быть такое, что из-за некорректного кода что-то там в памяти переполняется или не туда записывается и это вызывает стирание в итоге?
Очевидно, что код во флеш ты не пишешь. Разберись с этим. Посмотри видео на народстриме - там все рассказывается что да как.