Перезагрузка при отправке команды с компа на Arduino

oven100

✩✩✩✩✩✩✩
24 Ноя 2020
3
0
При отправке команды с компьютера через CMD в COM порт Arduino плата уходит в перезагрузку. Подскажите кто сталкивался с такой проблемой как победить.
Та же история происходит когда открываешь монитор порта.
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
А скетч вообще можно в неё залить? Другой кабель пробовали? Ардуино питается от компа через usb или у неё отдельное питалово?
 

bort707

★★★★★★✩
21 Сен 2020
2,859
850
Та же история происходит когда открываешь монитор порта.
перезагрузка при подключении терминала - это штатное поведение ардуины.
Если ваша программа на ПК при каждой отправке открывает порт заново - ардуина и будет перегружаться.
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
А я правильно понял, что если между 5 Вольт и Rezet поставить резистор на 50 Ом, то ардуина перестанет делать авторезет?

ПС: Сейчас сам проверил, 62 Ома воткнул, перестала перезагружаться при отправке с компа и при открытии монитора, так что можно и так уйти от проблемы.
 
Изменено:

Roden

✩✩✩✩✩✩✩
19 Апр 2019
31
5
При открытии порта, чип ch340g тянет за reset, а этот чип находится на платах ардуино.
Это нормально
 

bort707

★★★★★★✩
21 Сен 2020
2,859
850
А я правильно понял, что если между 5 Вольт и Rezet поставить резистор на 50 Ом, то ардуина перестанет делать авторезет?
не стоит так делать, при ресете чип UART подключает пин RST к GND - а после вашей доработки вы устроили между VCC и RST почти КЗ с сопротивлением всего 50 Ом. Ток через чип получается 5в / 50 Ом = 0.1А - от такого может и поплохеть

Вопрос решается проще - без "членовредительства" ардуины. За перезагрузку отвечает сигнал DTR, надо просто найти программу-терминал где DTR отключается. Например в Вижуал Студио терминал с кучей настроек, в том числе и DTR
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
Ну скажем 0,1 это далеко не КЗ, эт не я придумал, но идея мне понравилась. Сейчас глянул datasheet, 0,15 А микросхема должна выдержать , при 62 Ом ток будет около 80мА на долю секунды, китайская мега выдержала. Думаю в неких случаях это допустимо. Допустим надо подключится к ардуине с ПК, и глянуть с неё данные, при этом перезагрузка МК крайне нежелательна. Так же думаю что не зря автор писал про отправку команд из cmd, наверное делает либо bat, либо скрипт и хочет использовать стандартные средства винды. В этом плане я не поддерживаю решеие с резистором, так как при отправке большого количества команд можно сжечь UART (скорее всего даже не можно сжечь, а гарантиррованно она перегреется и сдохнет), в этом случае я бы нашёл эту ногу на UART и скальпелем бы её отрезал, это тоже не я придумал, а люди так делают.... Главное, что всегда есть выбор...
 

Эдуард Анисимов

★★★★★★✩
23 Сен 2019
2,265
944
58
Марий-Эл
Никаких резисторов не нужно.
Если стоит чип CH340T то с ноги - 15 на RESET микроконтроллера идёт конденсатор. Нужно его выпаять.
Если чип CH340G то нога - 13.
Если FT232RL то нога 2.
Т.Е. сигнал DTR нужно отключить от чипа.

1606271988611.png

1606271962560.png
 

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
Спасибо @Эдуард Анисимов, .Судя по схеме теперь вообще не страшно, поставил 100 Ом и живи спокойно, там UART отрезана, ей ничего не будет. Вечером проверю на самой плате, мне как раз надо сделать так, чтобы у меня не ребутилась мега при подключении.
 

oven100

✩✩✩✩✩✩✩
24 Ноя 2020
3
0
Я знал что решение есть. Пацаны всем спасибо. Не ожидал такой оперативности.
Вообще все обнаружилось при попытке синхронизации времени Уны с компом. Потому как есть уже подключенный интерфейс на COM-е. то почему бы его и не использовать. Я так то новичек в этом и мне показалось такое поведение платы не совсем логичным.
 

bort707

★★★★★★✩
21 Сен 2020
2,859
850
мне показалось такое поведение платы не совсем логичным.
на самом деле тут все абсолютно логично - это сделано для прошивки

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

oven100

✩✩✩✩✩✩✩
24 Ноя 2020
3
0
на самом деле тут все абсолютно логично - это сделано для прошивки


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

DAK

★★★✩✩✩✩
8 Окт 2020
517
137
На канале заметки ардуинщика появилось видео по программатор ISP из ардуино, там оригинальный способ, просто между пином резетом и землёй ставится конденсатор на 10мкф.