Питание Arduino, перезагрузка Arduino

Bim_Sony
Bim_Sony аватар
Offline
Зарегистрирован: 03.10.2012

Добрый день.

Существует следующая проблема: при подключении Arduino, все работает нормально. Но стоит воткнуть в соседний порт USB на компьютере что-либо, то Arduino перезагружается. Тоже самое происходит, если открыть среду разработки.

Если повесить конденсатор на питающую шину  +5В, то при подключении к компьютеру СОМ-порт не определяется. 

Подскажите, как избавится от перезагрузок?

maksim
Offline
Зарегистрирован: 12.02.2012

А зачем конденсатор на питание?

Из множества способов вот три:
1. Подрезать дорожку как на картинке, красным показана линия реза.

2. Поставить конденсатор (сравнительно большой емкости чем С5) между GND и RESET.
3. Поставить перемычку между +5V и RESET, НО НЕ В КОЕМ СЛУЧАЕ НЕ НАЖИМАТЬ НА КНОПКУ РЕСЕТ.

gena
Offline
Зарегистрирован: 04.11.2012

" 3. Поставить перемычку между +5V и RESET, НО НЕ В КОЕМ СЛУЧАЕ НЕ НАЖИМАТЬ НА КНОПКУ РЕСЕТ" - так лучше не делать /рано или поздно эту кнопку нажмут/ - вместо перемычки резистор, 51 Ом например.

Bim_Sony
Bim_Sony аватар
Offline
Зарегистрирован: 03.10.2012

maksim пишет:

А зачем конденсатор на питание?

Чтобы убрать перезагрузки. С ним все работает, но комп не определяет Arduino.

maksim пишет:

Из множества способов вот три:
1. Подрезать дорожку как на картинке, красным показана линия реза.

2. Поставить конденсатор (сравнительно большой емкости чем С5) между GND и RESET.
3. Поставить перемычку между +5V и RESET, НО НЕ В КОЕМ СЛУЧАЕ НЕ НАЖИМАТЬ НА КНОПКУ РЕСЕТ.

Можно подробнее, про эти способы.

 

maksim
Offline
Зарегистрирован: 12.02.2012

Bim_Sony пишет:

Чтобы убрать перезагрузки. С ним все работает, но комп не определяет Arduino.

Так а как вы определили, что с ним все работает, если комп не определяет дуину? Может тогда просто - ничего не работает. Да и врядли кондер по питанию может помешать определению компом дуины, разве что кондер очень большой емкости и при его заряде, при подключении к компу срабатывает защита USB по току.

Bim_Sony пишет:

Можно подробнее, про эти способы.

Уж куда подробнее?

Bim_Sony
Bim_Sony аватар
Offline
Зарегистрирован: 03.10.2012

maksim пишет:

Bim_Sony пишет:

Чтобы убрать перезагрузки. С ним все работает, но комп не определяет Arduino.

Так а как вы определили, что с ним все работает, если комп не определяет дуину? Может тогда просто - ничего не работает. Да и врядли кондер по питанию может помешать определению компом дуины, разве что кондер очень большой емкости и при его заряде, при подключении к компу срабатывает защита USB по току.

Заливаем программу в ардуину. Смотрим, как она показывает данные на экране (ST7920). Далее отключаем ардуину и припаиваем конденсатор 2200 мкф к шине питания USB. Потом снова включаем ардуину, данные на экране идут, но ардуина не определяется компом. Любые помехи на порту (вставляем в паралельный порт флешки, включение среды разработки) не влияют на ардуину, то есть она не перезагружается.

Пробовал разные конденсаторы 470, 100 мкф. Эффект одинаковый. Хотя на 100 мкф один раз комп определил ардуину, а потом сколько не вставлял ее в USB, все равно не определялась.

maksim пишет:

Bim_Sony пишет:

Можно подробнее, про эти способы.

Уж куда подробнее?

Я в смысле, что делают эти способы. Чтобы применить, хоть какой-то из них, то нужно понимать физику процесса, а то дорожку перерезать, а потом окажется, что этот метод не помог...

maksim
Offline
Зарегистрирован: 12.02.2012

Bim_Sony пишет:
Заливаем программу в ардуину. Смотрим, как она показывает данные на экране (ST7920). Далее отключаем ардуину и припаиваем конденсатор 2200 мкф к шине питания USB. Потом снова включаем ардуину, данные на экране идут, но ардуина не определяется компом. Любые помехи на порту (вставляем в паралельный порт флешки, включение среды разработки) не влияют на ардуину, то есть она не перезагружается.

Пробовал разные конденсаторы 470, 100 мкф. Эффект одинаковый. Хотя на 100 мкф один раз комп определил ардуину, а потом сколько не вставлял ее в USB, все равно не определялась.

Так а причем тут помехи? что у вас происходит при установке конденсатора по питанию я уже описал выше - срабатывает защита USB по току. Зачем вам тогда что бы она определялась компом если все работает? 

Bim_Sony пишет:

Я в смысле, что делают эти способы. Чтобы применить, хоть какой-то из них, то нужно понимать физику процесса, а то дорожку перерезать, а потом окажется, что этот метод не помог...

По поводу дорожки, я конечно не знаю может вам картинку не видно, но это даже не дорожка, а перемычка, которая востанавливается каплей припоя (она именно для этого и предназначена) и в довес ко всему если вам надпись RESET-EN ни о чем не говорит, то к сожалению я вам больше никак помоч не могу.

А что по вашему должны делать эти способы?
Эти способы не дают перезагрузить МК. Хотите разобраться в "физике процесса" вэлкам в школу в 6 класс, или вы хотите что бы я вас уговаривал и убеждал воспользоваться каким-нибудь из способов? не устраивают/не доверяете не пользуйтесь.

 

AlexFisher
AlexFisher аватар
Offline
Зарегистрирован: 20.12.2011

Некоторые производители ставят туда обычную перемычку. Если ее убрать, то дуина не будет определяться при подключении (наверно), но главное - не будет автоматического перехода в режим заливки скетча - нужно будет жать ресет "ручками"

Bim_Sony
Bim_Sony аватар
Offline
Зарегистрирован: 03.10.2012

maksim пишет:

Так а причем тут помехи? что у вас происходит при установке конденсатора по питанию я уже описал выше - срабатывает защита USB по току. Зачем вам тогда что бы она определялась компом если все работает? 

Может мы говорим на разных языках, либо меня не так понимают. Для меня важно, чтобы была возможность заливать программу и небыло самопроизвольных перезагрузок (одновременно). Про перезагрузки можно почитать здесь, последний абзац. Я бы мог поставить тумблер на одну ногу конденсатора, и выключать его, когда нужно залить программу. Но мне такой метод кажется кривым.

maksim пишет:

По поводу дорожки, я конечно не знаю может вам картинку не видно, но это даже не дорожка, а перемычка, которая востанавливается каплей припоя (она именно для этого и предназначена) и в довес ко всему если вам надпись RESET-EN ни о чем не говорит, то к сожалению я вам больше никак помоч не могу.

Про надпись читал здесь, только у меня Nano, а не UNO, и перемычки там нет, также, как и конденсатора с такой маркировкой:

 

maksim пишет:

 

А что по вашему должны делать эти способы?
Эти способы не дают перезагрузить МК. Хотите разобраться в "физике процесса" вэлкам в школу в 6 класс, или вы хотите что бы я вас уговаривал и убеждал воспользоваться каким-нибудь из способов? не устраивают/не доверяете не пользуйтесь.

Вы слишком буквально воспринимаете мои слова. Под выражением "физика процесса" я вкладывал смысл: нужно сначала разобраться к чему приводит, то, или иное действие, а потом уже делать.

 

gena
Offline
Зарегистрирован: 04.11.2012

"Существует следующая проблема: при подключении Arduino, все работает нормально. Но стоит воткнуть в соседний порт USB на компьютере что-либо, то Arduino перезагружается."  У меня такая же плата, похожих проблем нет. Я бы проверил это явление на другом компьютере - нужно для начала понять где проблема - в плате или в самом ПК.

Bim_Sony
Bim_Sony аватар
Offline
Зарегистрирован: 03.10.2012

gena пишет:

"Существует следующая проблема: при подключении Arduino, все работает нормально. Но стоит воткнуть в соседний порт USB на компьютере что-либо, то Arduino перезагружается."  У меня такая же плата, похожих проблем нет. Я бы проверил это явление на другом компьютере - нужно для начала понять где проблема - в плате или в самом ПК.

Пробовал на другом компьютере, и с двойным кабелем USB по питанию. Все равно перезагружается (даже, если флешку из соседнего порта вытаскивать)

Bim_Sony
Bim_Sony аватар
Offline
Зарегистрирован: 03.10.2012

Короче пробежался по работе и провел эксперементы на разных компьютерах и выяснил закономерность:

Перезагрузки случаются только на одном типе компьютеров с 4 USB портами на которых установлен драйвер ардуино. Если драйвер не стоит, то перезагрузок нет.

То есть у меня совпало эти два обстоятельства (драйвер и плохая нагрузочная способность порта), отсюда и перезагрузки.

kisoft
kisoft аватар
Offline
Зарегистрирован: 13.11.2012

Вот это уже более правдоподобная причина "плохая нагрузочная способность порта", надо попробовать при случае, правда у меня есть только Leonardo и я не балуюсь другими портами, когда работаю с Лео

 

gena
Offline
Зарегистрирован: 04.11.2012

В таком случае я бы попробовал следующее: между выводом Reset и GND на плате установить электролитический конденсатор на 10 мкФ в правильной полярности. Подлючить плату ардуино с работающей программой - для визульного контроля её перезагрузки. Включать-отключать флешку в соседнем порте создавая помехи. Если перезегрузка происходит, то скорее всего есть помеха по шине +5В /кстати проверить тестером исправность резистора подтяжки Reset к +5В/, ведь электролит на 10 мкФ микросхема FT232 через сбросовый конденсатор едва ли пересилит.

DarckImperator
Offline
Зарегистрирован: 08.03.2016

Всем привет, год назад покупал Mega2560 и проблему авторесета решил убрав перемычку

но неделю назад заказал новую Mega2560 R3 и заметил, что там нету перемычки

может кто подскажет как на новой версий аппаратно выключит  авторесет ?

kast2k
Offline
Зарегистрирован: 16.01.2015