Программатор K150 — один из самых доступных USB-программаторов для микроконтроллеров PIC, и чаще всего проблема с ним возникает ещё до первой прошивки: Windows не определяет плату как COM-порт, а программа MicroBurn (она же DIY K150) выдаёт ошибку связи. Причина почти всегда в драйвере CH340 или другого USB-UART преобразователя, установленного на плате, либо в неверно выбранном номере порта в настройках программы.
Эта инструкция на русском языке разбирает весь цикл работы с K150: от установки драйверов и подключения микросхемы до загрузки HEX-файла и проверки записанной прошивки. Отдельно разобраны типичные ошибки, с которыми сталкиваются при прошивке популярных контроллеров вроде PIC16F84A, PIC16F628A и PIC12F629.
Что представляет собой программатор K150
K150 — бюджетный программатор для микроконтроллеров Microchip PIC, подключаемый к компьютеру через USB. На плате расположены ZIF-панелька (с нулевым усилием) для установки микросхемы в DIP-корпусе, разъём ICSP для внутрисхемного программирования и сам USB-UART преобразователь, через который идёт обмен данными с ПК.
Управление программатором выполняется не напрямую, а через встроенный на плате управляющий микроконтроллер — как правило, PIC16F628 или PIC16F628A с прошитой в него фирменной программой. Это важно понимать: если управляющий контроллер повреждён или «слетела» его прошивка, программатор перестаёт отвечать, и для восстановления потребуется второй программатор.
- 🔌 Питание и обмен данными — через один USB-кабель, внешний источник не нужен
- 🧩 Поддержка популярных серий PIC10, PIC12, PIC16 и части PIC18 (точный список зависит от версии прошивки управляющего контроллера)
- 📟 ZIF-панелька на 40 контактов с маркировкой положения микросхем разных корпусов
- 🔗 Разъём ICSP для прошивки контроллера прямо в устройстве
⚠️ Внимание: напряжение программирования Vpp у K150 формируется на плате из USB-питания и не регулируется. Некоторые микросхемы, требующие точного значения Vpp, могут прошиваться нестабильно — особенно при питании от ноутбука с «просевшим» USB. При сомнениях сверяйтесь с даташитом на конкретный контроллер.
Установка драйверов и определение COM-порта
Первое действие после подключения платы к компьютеру — проверить, появился ли в системе виртуальный COM-порт. Откройте «Диспетчер устройств» Windows и посмотрите раздел «Порты (COM и LPT)». Если плата определилась корректно, там появится строка вида USB-SERIAL CH340 (COM3) — номер порта у вас может быть любым.
Если устройство отображается с жёлтым восклицательным знаком или как «Неизвестное устройство», необходимо установить драйвер для микросхемы преобразователя. На большинстве плат K150 стоит CH340, реже встречаются PL2303 или FT232 — микросхема указана маркировкой на плате рядом с USB-разъёмом. Драйвер скачивайте с сайта производителя чипа, а не со случайных файлообменников.
Если программа не видит программатор, а порт в системе есть, попробуйте вручную сменить номер COM-порта на значение от COM1 до COM9 в свойствах устройства — некоторые старые версии софта для K150 не работают с портами выше COM9.
После установки драйвера переподключите плату и убедитесь, что номер порта стабилен. Запомните его — он понадобится при настройке программного обеспечения.
Программное обеспечение для K150
Штатная программа для этого программатора — MicroBurn (также распространяется под именем DIY K150). Интерфейс у неё простой: выбор модели контроллера, загрузка HEX-файла, кнопки чтения, записи и проверки. В настройках софта необходимо указать тот COM-порт, который система назначила плате.
Порядок первого запуска выглядит так:
- ⚙️ Запустите программу и откройте настройки порта (обычно меню
File → Portили отдельное поле на панели) - 🔢 Укажите номер COM-порта из Диспетчера устройств и нажмите кнопку проверки связи
- ✅ Дождитесь сообщения об успешном определении программатора — софт считает версию прошивки управляющего контроллера
- 🧠 Выберите в списке модель вашего микроконтроллера, например PIC16F628A
Если при проверке связи программа выдаёт ошибку, возможные причины: неверный номер порта, неустановленный драйвер, конфликт с другой программой, занявшей порт (например, терминалом или Arduino IDE), либо неисправность управляющего контроллера на плате.
Установка микросхемы в ZIF-панельку
Ключевой момент, на котором «спотыкаются» новички, — положение микросхемы в панельке. На плате K150 рядом с ZIF-сокетом нанесена шелкография: для контроллеров с разным числом выводов (8, 14, 18, 28, 40) указано своё посадочное место. Микросхемы с малым числом выводов устанавливаются не в центр панельки, а со сдвигом к одному из краёв — сверяйтесь с маркировкой на плате.
Ключ на корпусе микросхемы (выемка или точка у первого вывода) должен совпадать с рисунком на шелкографии. Неверная установка в лучшем случае даст ошибку определения чипа, в худшем — выведет из строя контроллер или сам программатор, поскольку напряжение программирования попадёт не на те выводы.
☑️ Перед нажатием кнопки «Program»
⚠️ Внимание: устанавливайте и извлекайте микросхему только при отключённом USB-кабеле либо при закрытой программе. Смена чипа «на горячую» может повредить как контроллер, так и выходные каскады программатора.
Прошивка микроконтроллера: пошаговый порядок
Когда связь установлена и микросхема установлена, сам процесс прошивки занимает меньше минуты. Загрузите HEX-файл через меню File → Load Hex (название пункта может немного отличаться в разных версиях софта). В окне программы отобразится содержимое памяти программ и, если файл содержит данные для EEPROM, содержимое области данных.
Обратите внимание на конфигурационные биты (Configuration Word): тип генератора, сторожевой таймер, защита кода. Многие версии софта берут их из HEX-файла автоматически, но стоит визуально проверить, что они соответствуют требованиям вашего проекта — неверный бит генератора, например, приведёт к тому, что прошитое устройство не запустится, хотя сама запись пройдёт успешно.
Далее нажмите кнопку записи (Program). Программа выполнит стирание, запись и верификацию. Сообщение об успешной верификации означает, что данные в памяти контроллера совпадают с загруженным файлом. Если на этапе верификации появляется ошибка — не перезаписывайте чип многократно «в надежде, что пройдёт», а разберитесь с причиной (об этом ниже).
Успешная верификация — обязательный критерий завершения прошивки. Простое отсутствие ошибок при записи без проверки чтением не гарантирует, что прошивка легла корректно.
Работа через разъём ICSP
Если контроллер уже впаян в устройство, его можно прошить через разъём ICSP на плате K150. Используются линии VDD, GND, Vpp, DATA (PGD) и CLOCK (PGC). Распиновку конкретного разъёма на вашей плате следует сверить с её документацией или шелкографией — у разных ревизий клонов она может отличаться.
При внутрисхемном программировании есть важное ограничение: цепи устройства, подключённые к выводам PGD, PGC и MCLR, не должны мешать программированию. Нагрузка на этих линиях (резисторы на землю, конденсаторы на MCLR большой ёмкости) способна сорвать запись. Рекомендуемая практика — предусматривать в схеме устройства джамперы, отключающие эти линии на время прошивки.
Питание целевой платы при ICSP-прошивке — отдельный вопрос: K150 может подать VDD на устройство, но если схема потребляет заметный ток, USB-порта может не хватить. В таком случае устройство питают от его штатного источника, а от программатора подключают только сигнальные линии и общий провод.
Какие контроллеры чаще всего прошивают через K150
Наиболее распространённые случаи — PIC16F84A и PIC16F628A в радиолюбительских конструкциях, PIC12F629 и PIC12F675 в простой автоматике, а также PIC16F877A в учебных проектах. Перед работой с конкретной моделью проверьте, что она есть в списке поддерживаемых вашей версии софта и прошивки управляющего контроллера.
Типичные ошибки и их устранение
Самая частая жалоба — ошибка верификации по конкретному адресу сразу после записи. Возможные причины: плохой контакт в панельке (особенно на б/у платах с изношенным ZIF-сокетом), нестабильное питание по USB, неверно выбранная модель контроллера в софте либо «залоченный» чип с включённой защитой от чтения, который перед записью нужно полностью стереть.
| Симптом | Вероятная причина | Что проверить |
|---|---|---|
| Порт не появляется в системе | Нет драйвера CH340/PL2303 | Диспетчер устройств, маркировка чипа на плате |
| Нет связи с программатором | Неверный COM-порт или порт занят | Настройки софта, закрыть другие программы |
| Чип не определяется | Неверная установка в панельку | Шелкография, ключ корпуса, фиксация рычага |
| Ошибка верификации | Контакт, питание, защита кода | Переустановить чип, другой USB-порт, полное стирание |
| Устройство не работает после прошивки | Неверные конфигурационные биты | Тип генератора, WDT, сравнение с исходным проектом |
Отдельный случай — программатор внезапно перестал отвечать после неудачной операции. Поскольку обменом управляет прошитый PIC16F628A на плате, его программа могла повредиться. Восстановление возможно только перепрошивкой этого управляющего контроллера на другом программаторе; файл прошивки обычно прилагается к дистрибутиву софта для K150.
Держите под рукой заведомо рабочий HEX-файл и одну проверенную микросхему. Если с ними программатор работает, а с вашим чипом — нет, проблема в микросхеме или файле, а не в плате.
Меры предосторожности и уход за платой
Программатор не имеет гальванической развязки с USB-портом компьютера. Поэтому при работе через ICSP с устройствами, питающимися от сети или имеющими собственное питание, убедитесь в корректном соединении общих проводов и отсутствии опасных потенциалов на целевой плате. Работа с сетевыми устройствами требует опыта и, при сомнениях, консультации со специалистом.
⚠️ Внимание: статическое электричество — реальная причина гибели PIC-контроллеров при ручном монтаже. Перед установкой микросхемы коснитесь заземлённого металлического предмета, не держите чип за выводы и по возможности работайте на антистатической подложке.
Рычаг ZIF-панельки поднимайте и опускайте без избыточного усилия, а микросхемы с погнутыми выводами сначала выравнивайте. Механическое повреждение сокета — одна из немногих неисправностей K150, которую сложно устранить без перепайки панельки.
K150 — рабочий инструмент для популярных PIC-контроллеров при условии трёх вещей: корректный драйвер, правильная установка чипа по шелкографии и проверка конфигурационных битов перед записью.
Частые вопросы о программаторе K150
Поддерживает ли K150 микроконтроллеры AVR или STM32?
Нет. K150 предназначен только для микроконтроллеров Microchip PIC. Для AVR используются программаторы типа USBasp или USBtinyISP, для STM32 — ST-Link. Попытка подключить чужеродную микросхему к панельке может её повредить.
Программа пишет «программатор не найден», хотя COM-порт есть. Что делать?
Проверьте, что в софте выбран именно тот порт, который назначен плате, и что он не занят другой программой. Попробуйте сменить номер порта на значение до COM9. Если не помогает — возможна неисправность управляющего контроллера PIC16F628A на плате, тогда его прошивку придётся восстанавливать другим программатором.
Можно ли прошить контроллер в SMD-корпусе?
Напрямую в ZIF-панельку — нет. Варианты два: использовать переходник с SMD на DIP, который вставляется в панельку, либо прошивать микросхему через разъём ICSP после монтажа на плату устройства.
Что означает ошибка верификации по адресу 0x0000?
Ошибка на самом первом адресе обычно указывает не на данные, а на отсутствие нормального контакта с чипом или на то, что контроллер вообще не входит в режим программирования. Проверьте установку микросхемы по шелкографии, состояние выводов и правильность выбора модели в софте.
Нужна ли внешняя прошивка для управляющего PIC16F628A на плате?
Да, управляющий контроллер поставляется уже прошитым, и именно эта прошивка определяет список поддерживаемых микросхем. Если она повреждена, файл для восстановления обычно входит в комплект ПО программатора, но записать его можно только сторонним программатором.