avrdude: ser_open(): не могу установить состояние com для "\\.\COM2"
У меня есть неофициальная плата Arduino Uno.
Я протестировал следующие:
- Тестирование на USB 2.0 и USB 3.0
- Изменение порта (COM XX)
- Обновление драйверов для неизвестного устройства до Arduino Uno (COM XX)
- Сброс платы Arduino
- Подключение/отключение
- 1x перезагрузка ПК
- Запись загрузчика
- Изменение «программиста»
- Удаление-переустановка устройства
- Удерживание кнопки "Сброс" во время загрузки
- Тестирование различных примеров (мигание/последовательное чтение напряжения)
- Тестирование разных "плат" в программном обеспечении Arduino (на всякий случай, мало ли)
- Удаление перемычек
Есть ли у кого-нибудь какие-либо предложения, кроме того, что я только что попробовал?
@Eksapsy, 👍-2
Обсуждение3 ответа
Лучший ответ:
В вашей плате используется чип CH340G вместо чипа ATMega16U2 или FTDI FT232R.
Для этого требуются специальные драйверы, а не те, которые поставляются с IDE.
Почему они используют этот чип вместо правильного? Просто потому, что это очень дешево. Они самые дешевые из самых дешевых из самых дешевых USB-чипов. Они часто умирают. Возможно, в какой-то момент вы захотите накопить и инвестировать в настоящую Arduino, потому что она вполне может умереть на ровном месте.
У меня была такая же проблема с дешевым nano от Amazon Longrunner. Сначала он работал, я мог его запрограммировать. Затем я начал пукать своими номерами COM-портов, потому что мне надоело находиться в зоне COM14. С этого момента он перестал работать. IDE не удалось найти порт COM3. Прочитав вас, ребята, я также заметил, что устройство было идентифицировано RAMPS, чего раньше не было. Я обновил драйвер, который не работал; он сказал мне, что я уже был с последним драйвером. Поэтому я удалил этот драйвер и снова подключил свой Nano, и вот, новый драйвер USB-SERIAL CH340 установлен, и все было в порядке. Эль Дешево до сих пор работает. Я не хочу платить больше только за USB-чип, который я буду использовать только один раз. UP все еще на высоте.
У меня была такая же проблема. Мне удалось загрузить простой пример Blink, но не мою собственную программу. И я подумал, что в моей программе нет проблем, так как до этого я успешно тестировал ее на другом Arduino. Но на самом деле в этом была проблема. У меня в программе было это (для журналов консоли):
void setup() {
Serial.begin(9600);
}
Потом я прочитал, что разные Arduino используют разную скорость передачи данных. Изначально я тестировал его на Arduino Mega, но на этот раз захотелось загрузить на «неофициальный» сайт. Arduino Nano (для которого при загрузке необходимо использовать опцию ATmega328P (Old Bootloader)
).
Поскольку мне больше не нужны журналы отладки в моей программе, я полностью удалил эти «последовательные» команды. Потом загрузилось без проблем.
Краткая статья на эту тему
поэтому загрузка идет в загрузчик, а не в ваш скетч, и скорость передачи данных, используемая IDE, должна соответствовать скорости передачи данных, используемой загрузчиком. Скорость передачи данных, установленная в скетче, не имеет значения., @Juraj
Позже я получил эту ошибку для этой платы даже без «последовательных» команд в моей программе. Так что, возможно, произошло что-то еще. Мне потребовалось около 20 попыток, чтобы снова загрузить его на эту доску. (Другая плата работала без проблем). Так что, возможно, это и не было связано :-\, @juice
- Как использовать SPI на Arduino?
- Как решить проблему «avrdude: stk500_recv(): programmer is not responding»?
- Как создать несколько запущенных потоков?
- Как подключиться к Arduino с помощью WiFi?
- avrdude ser_open() can't set com-state
- Как узнать частоту дискретизации?
- Что такое Serial.begin(9600)?
- Я закирпичил свой Arduino Uno? Проблемы с загрузкой скетчей на плату
Какая у вас версия Windows?, @Majenko
Приложение Arduino 1.6.9., @Eksapsy
Я спросил, какую версию Windows вы используете, а не какую версию Arduino IDE вы используете., @Majenko
О, извини, я был не очень осторожен. Windows 10., @Eksapsy
А какой USB-чип использует ваш неофициальный Uno?, @Majenko
Плата аналогична этой: (тот же бренд, но, например, за портом USB текст компонента говорит «U12.000\n r4 ON», где \n — новая строка) http://www.ebay.com/itm/MJ-Duino-Arduino-Uno-R3-Compatible-CH340-with-USB-and-Serial-Headers-/311393221914 Я не знаю, как найти USB-чип, о котором вы спрашиваете, извините. Пришлите мне инструкции, если информации, которую я вам даю, недостаточно., @Eksapsy
Это чип, ближайший к разъему USB. На этой картинке это черный прямоугольник рядом с кристаллом, на котором написано "12.000"., @Majenko
Спасибо, я отредактировал свой предыдущий комментарий, добавив немного больше информации. Я полагаю, теперь вы можете опубликовать ответ, когда у вас есть информация о USB-чипе, верно? Я имею в виду, что просто хочу наградить вас :D Вы уже заставили меня задуматься о USB-чипе, не думал, что клоны используют другой., @Eksapsy
Я не понимаю, что вы описываете. Пожалуйста, сфотографируйте вашу настоящую плату с крупным планом области USB-разъема., @Majenko
Разница, о которой я говорил: http://prntscr.com/bfhnrq Вся плата: http://prntscr.com/bfho23, @Eksapsy
Это просто кристалл. Мне нужно знать, что написано на чипе. Большой черный прямоугольник прямо над компонентом, который вы описываете на этом рисунке. Тот, из которого торчит множество булавок., @Majenko
В нем говорится: заголовок «WCH», а остальные «CH340G \n 202685413», где \n представляет новую строку., @Eksapsy
Я подумал, что это похоже на один из тех... Итак... Вы установили драйверы CH340G? Или вы пытаетесь использовать оригинальные драйверы Arduino Uno?, @Majenko
Спасибо, добрый сэр. Я действительно не знал, что они использовали разные USB-чипы. И это потому что? (Если вы можете ответить... было бы неплохо :D) Я установил драйверы CH340G, и теперь он отлично работает :D Также «Ответьте на вопрос», чтобы я мог отдать вам должное, если хотите., @Eksapsy
Потратив часы на борьбу с той же проблемой, ответ @Brew решил мою проблему! Спасибо!, @Jon