Arduino сбрасывает себя
Если я подключаю больше энергопотребляющих компонентов к Arduino, он сбрасывается. В чем причина этого наблюдения?
@Sayali Joshi, 👍2
Обсуждение4 ответа
Фирменные платы Arduino имеют защиту от перегрузки на регуляторах напряжения. Если регулятор напряжения перегревается, он выключается, а затем пытается перезапуститься, когда температура вернется к нормальной. Я полагаю, что есть также защита от короткого замыкания, хотя я не уверен.
Когда питание вернется, процессор выполнит сброс питания.
Это зависит от того, что закорочено. Как заявил Дункан Си, короткое замыкание вывода 5 В на землю, вероятно, не повредит arduino из-за упомянутых механизмов защиты. С другой стороны, выходной порт не должен быть замкнут, велика вероятность, что порт будет уничтожен.
В случае короткого замыкания arduino "перезагружается" сам, потому что напряжение падает ниже рабочих условий микроконтроллера, потому что регулятор напряжения либо полностью отключается, либо не в состоянии обеспечить достаточный ток.
При питании от USB имеется переналаживаемый полимерный ("поли") предохранитель. Если вы нарисуете более 500 мА, этот предохранитель отключит и изолирует питание. Когда вы снимете нагрузку, предохранитель сбросится и позволит вернуть питание на плату.
Предохранители "Поли" на самом деле являются термисторами с положительным температурным коэффициентом (PTC). По мере нагревания их сопротивление увеличивается (в отличие от термисторов NTC, которые вы используете для измерения температуры, где сопротивление уменьшается по мере нагревания). Ток, протекающий по ПТК, заставляет его нагреваться. Слишком большой ток, и он становится слишком горячим, и сопротивление становится слишком высоким (оно нелинейно, поэтому сопротивление внезапно сильно увеличивается).
Очень хорошая информация!, @HavocRC
Подумайте об этом: Arduino не был разработан в качестве источника питания. Подключите ваши нагрузки к внешнему источнику питания все станет намного лучше.
- Как использовать SPI на Arduino?
- Как решить проблему «avrdude: stk500_recv(): programmer is not responding»?
- Как создать несколько запущенных потоков?
- Как подключиться к Arduino с помощью WiFi?
- avrdude ser_open() can't set com-state
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату
Посмотрите "браунаут". Например https://forum.arduino.cc/index.php?topic=246359.0, @MichaelT
Каково решение этой проблемы?, @AjithMahi07