Питание Arduino, перезагрузка Arduino
- Войдите на сайт для отправки комментариев
Чт, 27/12/2012 - 15:42
Добрый день.
Существует следующая проблема: при подключении Arduino, все работает нормально. Но стоит воткнуть в соседний порт USB на компьютере что-либо, то Arduino перезагружается. Тоже самое происходит, если открыть среду разработки.
Если повесить конденсатор на питающую шину +5В, то при подключении к компьютеру СОМ-порт не определяется.
Подскажите, как избавится от перезагрузок?
А зачем конденсатор на питание?
Из множества способов вот три:
1. Подрезать дорожку как на картинке, красным показана линия реза.
2. Поставить конденсатор (сравнительно большой емкости чем С5) между GND и RESET.
3. Поставить перемычку между +5V и RESET, НО НЕ В КОЕМ СЛУЧАЕ НЕ НАЖИМАТЬ НА КНОПКУ РЕСЕТ.
" 3. Поставить перемычку между +5V и RESET, НО НЕ В КОЕМ СЛУЧАЕ НЕ НАЖИМАТЬ НА КНОПКУ РЕСЕТ" - так лучше не делать /рано или поздно эту кнопку нажмут/ - вместо перемычки резистор, 51 Ом например.
А зачем конденсатор на питание?
Чтобы убрать перезагрузки. С ним все работает, но комп не определяет Arduino.
Из множества способов вот три:
1. Подрезать дорожку как на картинке, красным показана линия реза.
2. Поставить конденсатор (сравнительно большой емкости чем С5) между GND и RESET.
3. Поставить перемычку между +5V и RESET, НО НЕ В КОЕМ СЛУЧАЕ НЕ НАЖИМАТЬ НА КНОПКУ РЕСЕТ.
Можно подробнее, про эти способы.
Чтобы убрать перезагрузки. С ним все работает, но комп не определяет Arduino.
Так а как вы определили, что с ним все работает, если комп не определяет дуину? Может тогда просто - ничего не работает. Да и врядли кондер по питанию может помешать определению компом дуины, разве что кондер очень большой емкости и при его заряде, при подключении к компу срабатывает защита USB по току.
Можно подробнее, про эти способы.
Уж куда подробнее?
Чтобы убрать перезагрузки. С ним все работает, но комп не определяет Arduino.
Так а как вы определили, что с ним все работает, если комп не определяет дуину? Может тогда просто - ничего не работает. Да и врядли кондер по питанию может помешать определению компом дуины, разве что кондер очень большой емкости и при его заряде, при подключении к компу срабатывает защита USB по току.
Заливаем программу в ардуину. Смотрим, как она показывает данные на экране (ST7920). Далее отключаем ардуину и припаиваем конденсатор 2200 мкф к шине питания USB. Потом снова включаем ардуину, данные на экране идут, но ардуина не определяется компом. Любые помехи на порту (вставляем в паралельный порт флешки, включение среды разработки) не влияют на ардуину, то есть она не перезагружается.
Пробовал разные конденсаторы 470, 100 мкф. Эффект одинаковый. Хотя на 100 мкф один раз комп определил ардуину, а потом сколько не вставлял ее в USB, все равно не определялась.
Можно подробнее, про эти способы.
Уж куда подробнее?
Я в смысле, что делают эти способы. Чтобы применить, хоть какой-то из них, то нужно понимать физику процесса, а то дорожку перерезать, а потом окажется, что этот метод не помог...
Пробовал разные конденсаторы 470, 100 мкф. Эффект одинаковый. Хотя на 100 мкф один раз комп определил ардуину, а потом сколько не вставлял ее в USB, все равно не определялась.
Так а причем тут помехи? что у вас происходит при установке конденсатора по питанию я уже описал выше - срабатывает защита USB по току. Зачем вам тогда что бы она определялась компом если все работает?
Я в смысле, что делают эти способы. Чтобы применить, хоть какой-то из них, то нужно понимать физику процесса, а то дорожку перерезать, а потом окажется, что этот метод не помог...
По поводу дорожки, я конечно не знаю может вам картинку не видно, но это даже не дорожка, а перемычка, которая востанавливается каплей припоя (она именно для этого и предназначена) и в довес ко всему если вам надпись RESET-EN ни о чем не говорит, то к сожалению я вам больше никак помоч не могу.
А что по вашему должны делать эти способы?
Эти способы не дают перезагрузить МК. Хотите разобраться в "физике процесса" вэлкам в школу в 6 класс, или вы хотите что бы я вас уговаривал и убеждал воспользоваться каким-нибудь из способов? не устраивают/не доверяете не пользуйтесь.
Некоторые производители ставят туда обычную перемычку. Если ее убрать, то дуина не будет определяться при подключении (наверно), но главное - не будет автоматического перехода в режим заливки скетча - нужно будет жать ресет "ручками"
Так а причем тут помехи? что у вас происходит при установке конденсатора по питанию я уже описал выше - срабатывает защита USB по току. Зачем вам тогда что бы она определялась компом если все работает?
Может мы говорим на разных языках, либо меня не так понимают. Для меня важно, чтобы была возможность заливать программу и небыло самопроизвольных перезагрузок (одновременно). Про перезагрузки можно почитать здесь, последний абзац. Я бы мог поставить тумблер на одну ногу конденсатора, и выключать его, когда нужно залить программу. Но мне такой метод кажется кривым.
По поводу дорожки, я конечно не знаю может вам картинку не видно, но это даже не дорожка, а перемычка, которая востанавливается каплей припоя (она именно для этого и предназначена) и в довес ко всему если вам надпись RESET-EN ни о чем не говорит, то к сожалению я вам больше никак помоч не могу.
Про надпись читал здесь, только у меня Nano, а не UNO, и перемычки там нет, также, как и конденсатора с такой маркировкой:
А что по вашему должны делать эти способы?
Эти способы не дают перезагрузить МК. Хотите разобраться в "физике процесса" вэлкам в школу в 6 класс, или вы хотите что бы я вас уговаривал и убеждал воспользоваться каким-нибудь из способов? не устраивают/не доверяете не пользуйтесь.
Вы слишком буквально воспринимаете мои слова. Под выражением "физика процесса" я вкладывал смысл: нужно сначала разобраться к чему приводит, то, или иное действие, а потом уже делать.
"Существует следующая проблема: при подключении Arduino, все работает нормально. Но стоит воткнуть в соседний порт USB на компьютере что-либо, то Arduino перезагружается." У меня такая же плата, похожих проблем нет. Я бы проверил это явление на другом компьютере - нужно для начала понять где проблема - в плате или в самом ПК.
"Существует следующая проблема: при подключении Arduino, все работает нормально. Но стоит воткнуть в соседний порт USB на компьютере что-либо, то Arduino перезагружается." У меня такая же плата, похожих проблем нет. Я бы проверил это явление на другом компьютере - нужно для начала понять где проблема - в плате или в самом ПК.
Пробовал на другом компьютере, и с двойным кабелем USB по питанию. Все равно перезагружается (даже, если флешку из соседнего порта вытаскивать)
Короче пробежался по работе и провел эксперементы на разных компьютерах и выяснил закономерность:
Перезагрузки случаются только на одном типе компьютеров с 4 USB портами на которых установлен драйвер ардуино. Если драйвер не стоит, то перезагрузок нет.
То есть у меня совпало эти два обстоятельства (драйвер и плохая нагрузочная способность порта), отсюда и перезагрузки.
Вот это уже более правдоподобная причина "плохая нагрузочная способность порта", надо попробовать при случае, правда у меня есть только Leonardo и я не балуюсь другими портами, когда работаю с Лео
В таком случае я бы попробовал следующее: между выводом Reset и GND на плате установить электролитический конденсатор на 10 мкФ в правильной полярности. Подлючить плату ардуино с работающей программой - для визульного контроля её перезагрузки. Включать-отключать флешку в соседнем порте создавая помехи. Если перезегрузка происходит, то скорее всего есть помеха по шине +5В /кстати проверить тестером исправность резистора подтяжки Reset к +5В/, ведь электролит на 10 мкФ микросхема FT232 через сбросовый конденсатор едва ли пересилит.
Всем привет, год назад покупал Mega2560 и проблему авторесета решил убрав перемычку
но неделю назад заказал новую Mega2560 R3 и заметил, что там нету перемычки
может кто подскажет как на новой версий аппаратно выключит авторесет ?
отписался в http://arduino.ru/forum/apparatnye-voprosy/pitanie-pravila