В субботу мигалка заливалась по кнопке, в понедельник я открыл ту же среду с той же платой — и упёрся в серый пункт «Порт», который не реагирует ни на клики, ни на вздохи. Вечер я провёл классически: переустановил драйвер CH340, дважды перезагрузил систему и уже косился на плату с мыслью о браке. Виноват оказался журнал порта, оставленный открытым во втором окне среды: он держал COM3, и система не собиралась делиться. Ни один из тяжёлых шагов не был нужен — нужен был один закрытый журнал. Разница между «вечером перестановок» и «пятью минутами порядка» — в привычке смотреть сначала в систему, а уже потом в среду; ниже — именно эта привычка по шагам.
Серый пункт меню — честный симптом: среде нечего показать в списке портов. Не «плата умерла» и не «переустановите всё», а просто пустой список. Отсюда и порядок урока: сначала выясняем, видит ли плату система, потом — почему среда её не показывает. Каждый шаг заканчивается критерием «вижу — иду дальше»: за минуту такой проходится больше, чем за вечер перебора форумных советов, половина которых написана про чужие версии Windows и чужие платы.
Если порт серый с самого первого подключения, до этого дня плату никто не шил — начните с урока про невидимый драйвер CH340: у новичков причина номер одна именно там. Базовый выбор платы и порта, когда всё уже живо, разобран в уроке про плату и порт. Здесь же случай другой: всё работало и сломалось.
Диспетчер устройств: три исхода одной проверки
Первый шаг всегда в систему, а не в среду. Открываю диспетчер устройств, втыкаю плату и смотрю, что появится. Исход первый: в ветке «Порты (COM и LPT)» выросла строка вида USB-SERIAL CH340 (COM3) — систему всё устраивает, дальше виновата среда или занятость порта. Исход второй: «Неизвестное устройство» с жёлтым значком — питание по кабелю дошло, а опознать USB-мост система не смогла, почти всегда это драйвер. Исход третий: тишина при горящем светодиоде PWR — данные не ходят вовсе, кабель или гнездо. Смотрите и соседние ветки: без драйвера CH340 живёт не в «Портах», а в «Других устройствах», и его легко не заметить в свёрнутом списке.
Переподключение — бесплатный тест: выньте кабель и вставьте снова, следя за списком. Живая строка мигает: пропала — появилась. CH340 перечисляется на Windows за полторы-две секунды после вспышки светодиода L; если строка возникает лишь иногда, а от шевеления штекера гаснет — кабель с надломом, и никакой софт его не вылечит. Горящий PWR и молчащий список при этом не противоречат друг другу: питание и данные в кабеле ходят по разным проводам. Кстати, если второй кабель под рукой, проверка занимает ровно время его поиска — меньше любого переустанавливания.
Отдельный случай — сон ноутбука. Ноутбук уснул, вы открыли крышку, а строка порта не вернулась: контроллер USB уснул вместе с ним, и плату надо переткнуть. Если это повторяется каждый раз, зайдите в свойства корневых USB-концентраторов в том же диспетчере и снимите галку «разрешить отключение этого устройства для экономии энергии», а в настройках электропитания выключите временное отключение USB-порта. На чужих ноутбуках экономия — частый невидимый душитель портов: система бережёт ватты, плата теряет связь.
Полезная привычка — держать диспетчер открытым на соседней половине экрана: перечисление длится секунды, и поймать момент проще живым взглядом, чем переподключениями по памяти. В IDE 2 есть ещё выпадающий список на верхней панели: он показывает плату и порт одним взглядом, но доверять ему стоит после того, как система уже подтвердила появление устройства. Среда без системы — как врач без анализов: угадывает красиво, лечит наугад.
| Что в диспетчере устройств | Диагноз | Следующий шаг |
|---|---|---|
| Строка COM-порта есть, в среде серый | Система видит плату, среда — нет | Перезапуск среды, разбор занятости ниже |
| «Неизвестное устройство», жёлтый значок | Драйвер моста не встал | Урок про CH340: драйвер, затем переподключение |
| Тишина при горящем PWR | Кабель без линии данных или мёртвый порт | Второй кабель, гнездо на задней панели |
| Строка пропадает от шевеления штекера | Надлом кабеля | Новый кабель, старый — на выброс |
Порт в системе есть, а в среде серый
Если систему всё устраивает, у меня две версии, и обе лечатся за минуту. Версия первая: среда не обновила список. IDE 2 подхватывает новые порты сама, но после пробуждения ноутбука, после переустановки драйвера и иногда просто по настроению список остаётся старым. Сначала нажмите кнопку обновления в выпадающем списке портов, если она есть; перезапуск среды пересканирует всё заново — скучно, но работает. Тот же перезапуск лечит и обратную сцену: среда видела плату в одном гнезде, а после перекидывания в другое — нет.
Версия вторая, коварная: порт занят чужой программой. Монитор порта во втором окне среды, PuTTY, 3D-слайсер, софт плоттера, старая IDE 1.8 рядом — любой из них держит COM3 и никого не пускает. Проявляется занятость по-разному: где-то порт исчезает из списка, где-то остаётся, но заливка кончается отпиской про рассинхрон — это уже территория урока про журнал avrdude. Моё правило: до любых переустановок закрыть всё, что умеет открывать COM-порты. В половине случаев до переустановок дело не доходит.
Как найти держателя, если кандидатов много: закрывайте программы по одной и смотрите, когда пункт оживёт — за пять-шесть шагов виновник находится гарантированно. Продвинутый путь — искать в диспетчере задач процессы, открывшие COM3, но простой перебор окон быстрее установки утилит. Когда всё закрыто, перезапустите среду: она соберёт список портов с чистого листа, без чужих журналов в фоне.
Экономия, хабы и чужие гнёзда
Мелкие привычки бьют по порту на ровном месте. Хаб без собственного питания режет и ток, и перечисление: плата в нём то видна, то нет — для диагностики втыкайте напрямую. Передние гнёзда системного блока бывают подключены криво, задние надёжнее. Перестановка платы в другой разъём может сменить номер: COM3 станет COM4, и среда с привычного номера не найдёт плату — это не поломка, просто выберите новую строку в списке. Если плата нужна прямо сейчас, а виновник не нашёлся, воткните её в другой компьютер: это не лечение, но делит проблему пополам — система или плата.
На Linux и macOS картина та же с другими именами: порт живёт как /dev/ttyUSB0 или /dev/tty.usbmodem, а на Linux нужен доступ к группе dialout — подробно в уроке про dialout. Со стороны среды тоже бывает засада: если монитор порта оставили открытым и закрыли окно среды, порт иногда остаётся зажатым до перезапуска — привычки из урока про монитор в IDE 2 здесь экономят минуты.
Про удлинители и переходники тоже пара слов: пассивный пятиметровый USB-удлинитель работает через раз, активный — как хаб, со всеми его капризами. Для диагностики мне хватает штатного кабеля; длинные трассы собираю после того, как убедился, что связка жива. И не втыкайте плату в гнёзда мониторов, клавиатур и магнитол с USB: такие порты часто выдают питание без данных — плата будет гореть PWR и молчать системой, ровно как с зарядным кабелем.
void setup() { Serial.begin(9600); pinMode(12, OUTPUT); Serial.println("port check: hello");} void loop() { digitalWrite(12, HIGH); Serial.print("alive t="); Serial.println(millis()); delay(400); digitalWrite(12, LOW); delay(600);}Когда строка порта вернулась, а маячок из блока выше заливается и печатает alive — диагностика окончена, дальше только работа. Маячок с Serial-печатью остаётся моим вечным инструментом: любая правка схемы проверяется одной заливкой и одной строкой в мониторе — строки есть, значит связь жива, копайте логику. Если же каждая заливка превращается в лотерею, соберите привычки в один обход: чек-лист перед загрузкой из следующего урока прогоняется глазами за десять секунд и закрывает девять из десяти промахов. А когда плата переедет с ноутбука на балкон или в теплицу, ей понадобится другой корм: урок про питание без USB разбирает батарейки, банки и блоки с числами, а не с рекламой.
- 1. Порт в среде серый, а в диспетчере устройств строка COM3 на месте. Первый ход?
- 2. Строка порта появляется и исчезает, если пошевелить кабель у штекера. Вывод?
- 3. Ноутбук поспал — и после пробуждения порт пропал. Частый виновник?
- 4. В диспетчере устройств — «Неизвестное устройство» с жёлтым значком. Что ставить?
- 5. Что вообще означает серый пункт «Порт» в IDE?
- Серый «Порт» — пустой список портов в среде: начинайте с диспетчера устройств, а не с переустановок
- Три исхода проверки: строка есть — среда или занятость; неизвестное устройство — драйвер; тишина при живом PWR — кабель
- Порт держат монитор в другом окне, PuTTY, слайсеры и старая IDE: закройте кандидатов до лечения
- После сна ноутбука список бывает старым: перезапуск среды пересканирует порты заново
- Экономия энергии USB и хабы душат перечисление: галки в концентраторах и прямое подключение надёжнее
Частые вопросы по теме урока
- Порт в среде серый, а в диспетчере устройств строка COM3 на месте. Первый ход?
- Если система плату видит, драйвер ни при чём. Пустой или устаревший список в среде лечится перезапуском, а молчаливый удерживатель порта — закрытием. Сначала дешёвые ходы, дорогие — потом. Закрыть программы-держатели порта и перезапустить среду
- Строка порта появляется и исчезает, если пошевелить кабель у штекера. Вывод?
- Мигающая при шевелении строка — классика надлома у штекера. PWR при этом горит: питание идёт по другим проводам, и обрыв данных ловится только живым тестом с перетканием. Кабель с надломом — нужна замена
- Ноутбук поспал — и после пробуждения порт пропал. Частый виновник?
- Контроллер USB уходит в сон вместе с ноутбуком и иногда не будится. Переткните плату, снимите галки экономии в свойствах концентраторов — и сон перестанет глотать плату. Экономия энергии: система усыпила USB-контроллер
- В диспетчере устройств — «Неизвестное устройство» с жёлтым значком. Что ставить?
- Жёлтый значок означает: питание дошло, мост не опознан. Для клонов это CH340 — драйвер CH341SER с сайта производителя, пять минут против вечера догадок. Драйвер CH340 с сайта WCH, затем переподключить плату
- Что вообще означает серый пункт «Порт» в IDE?
- Пункт меню серый, когда список портов пуст. Поэтому диагностика начинается не со среды, а с вопроса: что видит система — и видит ли вообще. В системе нет ни одного порта, среде нечего выбрать