Программа для прошивки Pickit3

Обновлено: 06.07.2024

Нужно скомпилировать программу на Great Cow BASIC, но не знаете, с чего начать? Попробуйте эти простые инструкции:

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

- Программа установки автоматически запустит IDE.

- Когда исходный файл Great Cow BASIC открыт, проверьте меню «Инструменты GCB» (Инструменты IDE / Инструменты GCB) — через это меню вы можете получить доступ к командам одним щелчком мыши. Или попробуйте нажать правую кнопку мыши — это позволит получить доступ к тем же параметрам.

- Команды IDE Tools…​ (функциональные клавиши F5 - F8) запускают утилиту Great Cow BASIC, которая вызывает пакетные файлы для компиляции исходного кода и программирования («перепрошивки») (1) целевого микроконтроллера. Вы должны выбрать соответствующий программатор в «Редактировать настройки программиста» (Инструменты IDE / Инструменты GCB / Редактировать настройки программиста или нажав Ctrl+Alt+E). Найдите свой программатор в списке и перетащите его вверх под заголовком «Программисты для использования (по порядку)». Great Cow BASIC теперь попытается сначала прошить микроконтроллер с помощью этого программатора, когда вы нажмете «Создать HEX и FLASH» ( F5 ) или «FLASH ранее созданный шестнадцатеричный файл» ( F8 ).

- В маловероятном случае, если вашего программиста нет в списке, вы можете добавить его, нажав «Добавить…» в «Редактировать настройки программиста». Вы должны знать рабочий каталог и параметры командной строки и т. д. для программиста. См. подсказки внизу, нажимая на поля.

- Для перепрошивки для конкретного проекта вы можете отредактировать текущих программаторов в «Редактировать настройки программатора» в соответствии с вашими потребностями, нажав «Редактировать…». Используйте параметр «Использовать, если:», чтобы выбрать настройки программиста. См. подсказки помощи. Модель чипа автоматически определяется IDE для использования в «Использовать ЕСЛИ:» или в параметрах командной строки и т. д.

- Некоторые программисты используют файл .hex для "прошивки" микроконтроллера. Выбрав «Make HEX» ( F5 ), Great Cow BASIC скомпилирует программу и создаст файл .hex в том же каталоге, что и файл Great Cow BASIC. Этот метод также можно использовать для проверки ошибок в программе Great Cow BASIC перед прошивкой.

- Программное обеспечение в комплекте:
— Avrdude для AVR,
— PICPgm для PIC,
— PicKit2 и PicKit3
— TinyBootLoader+
— Arduino
— Северный программист
— Microchip Xpress Board и многое-многое другое.

(1) Для этого вам понадобится подходящий программатор, и к программатору должны быть приложены инструкции о том, как загрузить и подключить аппаратное обеспечение к микроконтроллеру.

Настройки программатора
«Настройки программиста» — это программный инструмент для управления и настройки различных программаторов. Инструкции см. в GIF.

В большинстве моих проектов используется микроконтроллер Microchip PIC, который должен быть запрограммирован соответствующей прошивкой для выполнения своей работы. Но программирование этих небольших процессоров может стать большим препятствием для многих людей.

Случается, что Microchip пытается облегчить вам задачу, предоставляя дешевых программистов и бесплатное программное обеспечение. Они надеются, что это побудит вас покупать больше их фишек. В результате получается беспроигрышная ситуация.

Итак, в этой статье я намерен показать, как легко запрограммировать микроконтроллер PIC, вложив менее 20 долларов США.


Обратите внимание, что эта страница посвящена только программированию процессоров Microchip серии PIC. Существует множество других микроконтроллеров (Atmel, TI и т. д.), и для них потребуются другие программисты и программное обеспечение.

Почти все современные микроконтроллеры используют флэш-память для хранения программы. Вот почему программирование микроконтроллера часто называют «перепрошивкой» чипа.

Флэш-память можно много раз стирать и перепрограммировать, а сохраненные данные сохраняются даже при отключении питания. В дополнение к программе в чипе есть другие запоминающие устройства, которые также запрограммированы на одну операцию; к ним относятся параметры конфигурации (иногда называемые «предохранителями»), EEPROM (еще один тип стираемой памяти) и области загрузки. Информация для программирования всего этого содержится в одном файле, который обычно имеет расширение .hex (например, «FirmwareV1.hex»). Часто этот файл называют «шестнадцатеричным файлом».

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

МКБ3 и МКБ4. Это высококачественные (и дорогие) программаторы/отладчики от Microchip. Они предназначены для использования разработчиками и являются излишними для обычного любителя.

PICkit3 и PICkit4. Это лучший выбор для любителей, так как они недороги и поддерживают все микросхемы производства Microchip. PICkit4 является последним и самым быстрым, но PICkit3 по-прежнему хорошо справляется со своей задачей. Преимущество PICkit3 в том, что многие китайские производители делают дешевые клоны, которые можно найти на eBay.

PICkit2.Это старый дизайн, и он не поддерживает более современные чипы, такие как серия PIC32. На eBay есть много PICkit2 по очень низким ценам, но вам следует избегать их, так как они практически бесполезны.

Внутрисхемный отладчик/программатор MPLAB® Snap — новейшая разработка Microchip, и она довольно дешевая (15 долларов США + доставка). Он отлично справляется со своей задачей, и его можно приобрести у самих Microchip, у дистрибьюторов, таких как Mouser, и на eBay. Это хороший выбор, если вы хотите держаться подальше от китайских клонов PICkit3

Если вы просто хотите запрограммировать чипы PIC32, используемые для Maximite и Micromite, еще более дешевой альтернативой является Microbridge. Это основано на одном чипе стоимостью менее 2 долларов США, и у него есть собственная веб-страница здесь. Основная проблема с Microbridge заключается в том, что вам нужно в первую очередь установить прошивку для программирования в чип, поэтому вы в конечном итоге получите ситуацию с курицей и яйцом, требующую покупки программатора, такого как PICkit3, в любом случае.


PICkit 3

Поскольку клоны PICkit 3 настолько дешевы, поддерживаются программным обеспечением Microchip и могут программировать практически любой микроконтроллер Microchip, нижеследующее будет сосредоточено на PICkit 3 в качестве предпочтительного программатора.

Вы можете купить подлинный PICkit 3 у Microchip за 48 долларов США + доставка (ссылка) или у их дистрибьюторов. Номер детали — PG164130, и если вы выполните поиск в Google по этому номеру детали, вы найдете множество поставщиков.

Однако я рекомендую клоны PICkit 3, которые работают так же хорошо, но намного дешевле. В качестве теста я купил один за 18,80 долларов США с бесплатной доставкой, и я не могу его винить. Программное обеспечение Microchip распознало его как настоящий PICkit 3, и он работал так же хорошо, как и оригинальный продукт.

Хорошим местом для поиска дешевых клонов является eBay. Просто найдите PICkit3.

Итак, если вам просто нужен дешевый метод программирования микроконтроллеров Microchip, покупка клона Pickit 3 будет лучшим выходом. По смехотворно низким ценам вы можете позволить себе купить его только для того, чтобы запрограммировать один чип, а затем добавить его в свой набор инструментов для возможного будущего проекта.

Внутрисхемное последовательное программирование


Большинство микроконтроллеров Microchip используют соединение для внутрисхемного последовательного программирования (сокращенно «ICSP») для передачи программы на микросхему. Обычно печатная плата (PCB) имеет разъем для этого, и он выглядит примерно так, как разъем, выделенный на фотографии справа.

Если у вас нет такого разъема (возможно, вы программируете голый чип), вам придется самостоятельно разбираться с подключениями. Следующая таблица, в которой перечислены выводы разъема ICSP, должна помочь:


Программист отслеживает напряжение на выводе 2 (Vdd) и использует его, чтобы определить, действительно ли включена программируемая микросхема. Чтобы начать операцию программирования, программатор подаст на контакт 1 (MCLR) напряжение выше, чем Vdd (обычно от 12 до 15 вольт). Затем он передает данные, используя контакт 4 (PGD) и контакт 5 (PGC). Внутренняя логика чипа возьмет эти данные и запишет их во флэш-память чипа.


Подключение

На приведенном выше рисунке печатной платы вы сможете подключить PICkit 3 непосредственно к шестиконтактному разъему ISCP. Контакт 1 разъема PICKit 3 отмечен белым треугольником, а обычно контакт 1 разъема на печатной плате отмечен цифрой 1 или другим символом.

Если вы не можете разместить программатор в пространстве, вам понадобится шестижильный кабель с разъемом «папа» и разъемом «мама» на другом конце, как показано справа (мой клон пришел с этим, что было удобно).

При программировании микроконтроллера вам нужно только подать питание на чип (и подключить конденсатор к Vcap, если чип имеет этот вывод). Вам не нужны какие-либо другие компоненты, так как микросхема будет запускаться с помощью своего внутреннего генератора, и это все, что нужно программатору.

Чтобы управлять PICkit 3, вам необходимо установить систему разработки программного обеспечения Microchip MPLAB X на свой персональный компьютер. Он поставляется в различных версиях для Windows, Mac OS и Linux. К сожалению, полная установка включает в себя множество вещей, которые вам не нужны (например, полностью интегрированная среда разработки), но важной частью является MPLAB IPE, который является компонентом программиста (IPE означает интегрированная среда программирования). Обычно он устанавливается в виде значка на рабочий стол.

Когда вы запускаете MPLAB IPE, вы видите довольно простой экран, который позволяет вам указать номер детали чипа и шестнадцатеричный файл для его программирования. Просто выполните пронумерованные шаги, показанные ниже, чтобы запрограммировать свой чип.


Когда вы нажимаете кнопку «Программировать», программное обеспечение дает указание PICkit 3 стереть чип, запрограммировать его новой прошивкой, а затем прочитать эту программу, чтобы убедиться, что она была правильно записана. В конце вы должны получить сообщение "Программирование завершено".

"Целевой Vdd не обнаружен". Обычно это означает, что вы неправильно подключились к разъему для программирования ISCP или что устройство, которое вы пытаетесь запрограммировать, обесточено.

"Не удалось запрограммировать устройство" или "Не удалось прочитать идентификатор устройства". Программатор мог сказать, что вы к чему-то подключились (потому что присутствовал Vdd), но не мог связаться с чипом. Обычно это означает, что что-то мешало линиям MCLR, PGD и/или PGC (т. е. они не были подключены или другие компоненты загружали сигналы).

"Идентификатор целевого устройства не соответствует ожидаемому идентификатору устройства". Это означает, что программатор обнаружил устройство, отличное от устройства, которое вы указали на шаге 1 выше.

Подача питания на устройство

Обычно чип, который вы программируете, будет питаться от цепи, которая его окружает, но у вас также есть возможность запитать чип от самого PICKit 3. Это может пригодиться, когда вы программируете чип, который позже будет подключен к его конечному дому, но в данный момент это просто свободный чип. Обратите внимание, что PICkit 3 может подавать максимум 30 мА, поэтому он подходит только для питания голого чипа и больше ни для чего.

Чтобы настроить PICkit 3 на подачу питания, выберите «Настройки» --> «Расширенный режим». Затем вам потребуется ввести пароль («Microchip») для входа в расширенный режим. Наконец, выберите вкладку «Питание» и отметьте «Целевая цепь питания от инструмента». Затем PICkit 3 будет подавать питание на контакт 2 (Vdd), а не просто измерять напряжение на этом контакте (что он обычно и делает).

учебники и проекты по электронике для начинающих

Откройте для себя радость понимания электроники!

12 апреля 2019 г. • руководство

Много интересных онлайн-проектов по электронике используют микроконтроллеры, и для новичков это слово может показаться довольно пугающим. По крайней мере, так было со мной, когда я начал увлекаться электроникой много лет назад. Но на самом деле нет причин бояться этой темы. Конечно, это немного сложно, но вы будете удивлены, как быстро вы сможете добиться прогресса, когда избавитесь от первоначального страха :)

Хорошо, допустим, вы нашли классный проект в области электроники, который хотите создать сами. На каком-то веб-сайте какого-то мастера, который был достаточно любезен, чтобы включить схему и все другие детали, которые вам нужны. Но проблема в том, что проект содержит микроконтроллер! Что вы можете сделать?

Можете ли вы создать проект с микроконтроллером, даже если ничего о нем не знаете? Ответ - да! Да, ты можешь! В этой статье я сосредоточусь на микроконтроллерах PIC от компании MicroChip, но общая идея работает и для всех остальных. Дайте мне знать в комментариях, если у вас есть какие-либо вопросы или если что-то было непонятно :)

Шаг 1. Получите файл .hex!

Микроконтроллеры — это маленькие компьютеры, и им нужна программа, которая говорит им, что делать. Это набор инструкций, и этот набор инструкций необходимо передать на контроллер, чтобы заставить его работать. Обычно этот набор инструкций написан на языке программирования, таком как C, Basic, Assembler или любом другом. Хорошо то, что вам не нужно знать ничего из этого, если все, что вы хотите сделать, это перенести эту программу на контроллер!

Все, что вам нужно, это так называемый файл .hex.Это файл размером всего в несколько килобайт, нечитаемый человеческим глазом. Он содержит машинный код, записанный в шестнадцатеричном формате, откуда и произошло название. Этот файл - все, что вам нужно, и если вы внимательно посмотрите на блог по электронике, где кто-то представляет свой проект, включающий микроконтроллер, вы найдете где-нибудь файл .hex для загрузки. Если это не так, просто спросите! ???

Шаг 2. Приобретите программатор

Хорошо, теперь у вас есть файл .hex. Дальше нужен программатор. Что это такое? Это устройство, обычно питаемое от USB, которое соединяет ваш компьютер с микроконтроллером. Используя специальное программное обеспечение (см. шаг 4 ниже), вы сможете перенести файл .hex в память микроконтроллера. Затем, когда контроллер включится, он будет делать все, что ему скажет файл .hex!

Я предлагаю использовать PICkit3. Простой поиск на Amazon покажет вам множество предложений, обычно около 30 долларов. Я использую его уже много лет, и он отлично подходит для программирования PIC.


Это мой PICkit3, который я купил много лет назад, и он до сих пор работает. Стоит денег!

О, чуть не забыл упомянуть: перенос файла .hex на контроллер в большинстве случаев называется «программированием» PIC или «прошивкой» PIC. Просто чтобы вы знали :)

Шаг 3. Подключите PIC-контроллер к программатору

Хорошо, теперь у вас есть PIC-контроллер, у вас есть PICkit3, и что теперь? Теперь вам, конечно же, нужно подключить PIC к PICkit3! ;-) Но как?

Есть пять взаимосвязей, о которых вам нужно знать, и мы поговорим о них по порядку. Во-первых, взгляните на это изображение моего PICkit3:


Шесть соединений в PICkit3.

В PICkit3 есть шесть соединений в контактном разъеме, которые называются LVP, PGC, PGD, VSS, VDD и MCLR. Мы не будем использовать LVP, поэтому давайте проигнорируем его в этой статье. Так что же означают остальные пять? Начнем с двух простых:

  • VDD — положительное рабочее напряжение.
  • VSS — это потенциал земли.
  • MCLR означает Master Clear, и заземление этого контакта переводит PIC-контроллер в режим программирования. При нормальной работе он должен быть подключен к VDD, чтобы PIC-контроллер не сбрасывался.
  • PGD означает Programming Data, и именно здесь передаются биты, которые записываются в контроллер во время программирования, так же, как в сдвиговом регистре. Это линия данных, и она может быть старшей или младшей, в зависимости от того, передает ли PICkit3 старший или младший бит в это время.
  • Наконец, PGC — это часы программирования. Всякий раз, когда на этой линии есть импульс, текущий бит в PGD записывается в PIC, и внутри PIC перемещается к следующему слоту для записи следующего бита. Это сердцебиение цикла программирования.


Затем вы можете воткнуть PICkit3 в схему и подключить его к компьютеру. В моем случае у меня действительно не было 45-градусного разъема, поэтому я перевернул макетную плату на бок, но знаете что, она отлично работает :)


Но как его подключить к PIC-контроллеру? Это во многом зависит от конкретного контроллера, который вы хотите использовать. Каждый контроллер имеет назначенные выводы для программирования (MCLR, PGD и PGC), которые необходимо подключить к PICkit3. В качестве примера возьмем PIC16F627A. На этой картинке ниже вы можете увидеть соответствующие контакты:


Цвета соответствуют проводам, которые я использовал на рисунках выше для подключения PIC к PICkit3 на макетной плате. Попробуйте :)

Шаг 4. Программное обеспечение!

Теперь, наконец, нам нужно скачать бесплатное программное обеспечение от компании MicroChip. Он называется MPLAB X IPE, что означает Integrated Programming Environment 10. Вы можете скачать его здесь бесплатно. Да, я знаю, там написано MPLAB IDE вместо MPLAB IPE, но IPE включена в эту загрузку.

Установите программное обеспечение, а затем запустите MPLAB X IDE. это выглядит примерно так:


Убедитесь, что в разделе "Устройство" выбран ваш контроллер. В разделе «Инструмент» вы уже должны увидеть PICkit3, если он подключен. Если вы еще этого не сделали, подключите его сейчас :) Затем нажмите «Подключиться». Нажмите OK в появившемся сообщении:


Возможно, вы получите следующее сообщение об ошибке:


«Целевое устройство не найдено (не удалось обнаружить целевое напряжение VDD). Вы должны подключиться к целевому устройству, чтобы использовать PICkit 3».

Если да, нажмите Power слева и проверьте цепь Power Target в Tool. Убедитесь, что установлено правильное напряжение (5 В для контроллера 5 В, 3,3 В для контроллера 3,3 В):


Затем вернитесь к Operate и еще раз нажмите Connect. Возможно уже показывает, что подключено, если нет, то просто нажмите Connect еще раз. Теперь это должно выглядеть так:


Нажмите «Подтвердить» и нажмите «ОК» в этом приглашении:


Теперь все должно работать, но вы можете получить следующее сообщение об ошибке:


«Идентификатор целевого устройства (0x0) является недопустимым идентификатором устройства. Пожалуйста, проверьте ваши подключения к целевому устройству. Хотите продолжить?»

Проверьте свои соединения! Возможно, что один из кабелей ослаблен! После этого все должно быть в порядке, и вы должны увидеть это сообщение:


Хорошо! Теперь мы в деле! Пришло время загрузить файл .hex! Нажмите «Файл», затем «Импорт», а затем нажмите «Шестнадцатеричный», чтобы выбрать файл, после чего он должен выглядеть следующим образом:


Потрясающе! Теперь нажмите «Программа» и наблюдайте за происходящим чудом! Вот что вы увидите:


Программирование завершено! Ты сделал это! Теперь шестнадцатеричный файл надежно хранится на вашем контроллере!

Финиш! Вы сделали это!

Теперь просто отключите PICkit3, выключите программное обеспечение и отсоедините контроллер от макетной платы. Он готов к подключению к конечному пункту назначения!

Я надеюсь, что это руководство было полезным. Если вы чувствуете, что я пропустил несколько частей здесь и там, или что-то не так или неправильно, сообщите мне об этом в комментариях ниже, и я постараюсь добавить недостающую информацию!

От себя лично: я знаю, что может быть неприятно отправляться в неизвестность. Но это также может быть очень полезным. Научиться прошивать микроконтроллеры — значит сделать первый шаг в совершенно новый мир! То, что раньше было недостижимо, теперь доступно :)

Всем привет,
Я новичок в микроконтроллерах и начал с PIC16F876A и программатора Pickit3.
Я подключил его и запустил MPLAB x IDE V5.4, и после нескольких дней чтения и просмотра YouTube я настроил его для питания через USB-порт с 4,5 В постоянного тока.
Я смог загрузить базовую программу без ошибок, но не могу заставить загореться красный светодиод, подключенный к RB4, и во время устранения неполадок я не смог понять, нормально ли мигание красного светодиода.
Он находится рядом со светодиодным индикатором состояния и мигает с постоянной частотой, которая, я думаю, происходит каждую секунду. (Примечание: в опубликованном gif-файле он мигает медленнее, чем в реальной жизни)
Есть идеи?
Спасибо

Вложения

Кал_Б

Член

Кажется, я знаю, почему мой светодиод не работал, потому что у меня не было генератора, подключенного к чипу, и мне придется купить его на следующей неделе.
Было бы неплохо узнать об этом мигающем светодиоде в Pickit3
Спасибо

Помми

Известный участник

Только что включил PicKit 3, и индикаторы питания и активности горят, а состояния нет. Согласно руководству на странице 39, ошибка (при условии непрерывного мигания) заключается в том, что PicKit не может установить Vdd или Vpp (что более вероятно) на правильное напряжение. Проверьте проводку.

Найджел Гудвин

Супер модератор

Только что включил PicKit 3, и индикаторы питания и активности горят, а состояния нет. Согласно руководству на странице 39, ошибка (при условии непрерывного мигания) заключается в том, что PicKit не может установить Vdd или Vpp (что более вероятно) на правильное напряжение. Проверьте проводку.


По моему опыту, проблемы обычно возникают из-за напряжения Vdd, так как PK3 может обеспечить только небольшое количество тока — большое преимущество PK4 в том, что он может обеспечить значительно больший ток. В зависимости от того, что подключено к PIC, он может не работать при питании от PK3, даже ЖК-дисплея типа Hitachi часто бывает достаточно, чтобы он перестал работать.«Обычно» к выводу MCLR ничего не подключено, кроме резистора 10 кОм к Vdd.

Кал_Б

Член

Спасибо, ребята.
Не вижу. Я проверил проводку и удалил светодиод, который я подключил, и результат тот же. Чтобы добавить больше информации, ниже приведен вывод после того, как я подключил USB, и MPLAB-X обнаружит и подаст питание на комплект.
Когда я впервые подключаю комплект и вывод готов, светодиод загорается, как на картинке: Power=Green-Active=Blue-Status=Green. Если я нажму «Обновить статус инструмента отладки», я получу тот же результат, все выглядит хорошо; не мигает красным.

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

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

Вот ссылка на видео.

PICkit 3 подключен

Подключение к MPLAB PICkit 3.

Текущая прошивка для PICkit 3
Firmware Suite Version. 01.56.07
Тип прошивки. СЧ

Программист на целевую мощность включен - VDD = 4,875000 вольт.
Целевое устройство PIC16F876A найдено.
Версия устройства для MPLAB PICkit 3.

Текущая прошивка для PICkit 3
Firmware Suite Version. 01.56.07
Тип прошивки. СЧ

Программист на целевую мощность включен - VDD = 4,875000 вольт.
Целевое устройство PIC16F876A найдено.
Версия устройства >

Читайте также:

PIN ИМЯ ИСПОЛЬЗОВАНИЕ
1 MCLR< /td> Главный вывод сброса на микроконтроллере
2 Vdd Напряжение питания микроконтроллера
3 Vss Заземление или ноль вольт штифт
4 PGD Программирование сигнала данных
5 PGC Программирование тактового сигнала
6 - Не используется -