Кнопка сброса не работает + не могу загрузить код, что не так?

Я тестировал и отлаживал код, который написал для робота с тремя шаговыми двигателями (Arduino Uno + CNCShield V3 + шаговые драйверы a4988). Я хочу отключить драйверы по своему желанию. поэтому я перекинул контакт EN на 2 из a4988 на контакты 12 и 13 Arduino. (по умолчанию все контакты EN драйверов подключены к контакту 8 ) все было хорошо, но вдруг не работает кнопка Reset и я не могу загрузить новые коды в Arduino! Я получаю эту ошибку:

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x83
.
.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x83
Problem uploading to board. 

но Arduino все еще работает с последним загруженным в нее кодом!!! я поджарил свой Arduino? и почему это происходит?

, 👍0

Обсуждение

Быстрая мысль: вы пробовали использовать другой COM-порт на своем компьютере? (Возможно, это вообще не проблема Arduino.) Если ваша ОС Linux, попробуйте «lsusb», чтобы узнать, куда подключен Arduno. Если в Windows есть утилиты, которые вы можете установить, чтобы лучше видеть, какие USB-устройства подключены., @st2000

Я протестировал другой Arduino Uno со своим кодом и компьютером (Windows 10). Это было хорошо. Что-то не так с моей новой проводкой (контакты 12 и 13). Боюсь, это поджарит и другую доску., @2012User


1 ответ


2

Попробуйте вручную сбросить настройки платы:

  • Перед загрузкой запустите проверку.
  • Удерживая кнопку сброса, нажмите Загрузить.
  • Отпустите кнопку сброса.

Если это сработало, сброс вашей платы не загорелся, он просто не получает сброс по последовательному кабелю. В случае сбоя может быть повреждена либо часть платы, либо MCU ; что-то прикрепленное к плате может блокировать сигнал сброса; или программное обеспечение могло отключить контакт сброса платы. В последнем случае см. статью Arduino StackExchange Как переназначить кнопку сброса Arduino, чтобы узнать, как это может произойти и как это отменить, если это произошло.

Что-то не так с использованием контактов 12 и 13?

Я не знаком с драйвером шагового двигателя, но при беглом взгляде на его техническое описание и логике, что 3,3 В & 5 В, я не вижу никаких проблем с подключением любой его логики к любому из логических контактов Arduino (почти ко всем). Поскольку у драйвера также есть вход напряжения привода двигателя для управления вашими двигателями, случайное подключение вывода Arduino к выводу драйвера (или чему-либо еще), несущему напряжение привода, может — вероятно, повредить, по крайней мере, подключенный драйвер вывода в MCU. и, возможно, другие его части.

Если в вашем Arduino установлен чип Atmega с сокетом, и поскольку вы уже знаете, что другой Arduino работает так, как вы ожидаете, замена чипа Atmega будет самым быстрым, дешевым и эффективным способом. самое простое исправление. Просто просмотрите свою проводку и убедитесь, что к плате Arduino не подключено напряжение привода двигателя.

,

Я пробовал. Удержание кнопки сброса не помогло. Что-то не так с использованием контактов 12 и 13? Думаю, именно из-за этого мой Уно поджарился!, @2012User