Программа и программатор pic микроконтроллеров: EXTRAPIC PIC ( PIC) I2C (IIC) EEPROM

Содержание

Программа для pic12f629

Программа будет очень простая: с помощью нашего микроконтроллера мы заставим мигать два светодиода. О них я напишу позже. Скачайте также даташит на PIC12F Кто испытывает трудности с чтение на английском языке, рекомендую скачать даташит на PIC12F на русском языке. Для начала создадим в Proteus схему нашей мигалки.


Поиск данных по Вашему запросу:

Схемы, справочники, даташиты:

Прайс-листы, цены:

Обсуждения, статьи, мануалы:

Дождитесь окончания поиска во всех базах.

По завершению появится ссылка для доступа к найденным материалам. ПОСМОТРИТЕ ВИДЕО ПО ТЕМЕ: Программатор PicKit3, Начало all-audio.proль скрытой проводки.

Программатор PIC K150


ВВЕДЕНИЕ PIC-контроллеры остаются популярными в тех случаях, когда требуется создать недорогую компактную систему с низким энергопотреблением, не предъявляющую высоких требований по ее управлению. Эти контроллеры позволяют заменить аппаратную логику гибкими программными средствами, которые взаимодействуют с внешними устройствами через хорошие порты. Миниатюрные PIC контроллеры хороши для построения преобразователей интерфейсов последовательной передачи данных, для реализации функций «прием обработка передача данных» и несложных регуляторов систем автоматического управления.

Компания Microchip распространяет MPLAB — бесплатную интегрированную среду редактирования и отладки программ, которая записывает бинарные файлы в микроконтроллеры PIC через программаторы. Контроллеры имеют RISC архитектуру и обеспечивают выполнение большинства команд процессора за один машинный цикл. Для примера, ниже даны характеристики недорогого компактного 8-разрядного контроллера PIC12F с многофункциональными портами, малым потреблением и широким диапазоном питания [1]. Один вывод GP3 порта GPIO работает только на вход, остальные выводы можно сконфигурировать для работы как на вход так и на выход.

Каждый вывод GPIO имеет индивидуальный бит разрешения прерываний по изменению уровня сигнала на входах и бит включения внутреннего подтягивающего резистора. Вызов менеджера проекта. Выбор типа PIC микроконтроллера. Выбор пути к каталогу проекта клавиша Browse Это можно сделать позднее, внутри активного проекта.

Клавиша Next открывает следующее окно. Завершение создания проекта клавиша Finish. Создание файла программы Рис. Программу можно создать при помощи любого текстового редактора. В MPLAB имеется встроенный редактор, который обеспечивает ряд преимуществ, например, оперативный лексический анализ исходного текста, в результате которого в тексте цветом выделяются зарезервированные слова, константы, комментарии, имена, определенные пользователем. Изначально программе присвоено имя Untitled.

Набрать или скопировать программу, например, на ассемблере. Любая программа на ассемблере начинается директивой org и заканчивается директивой end. Переход goto Metka обеспечивает циклическое выполнение программы.

В программе Рис. Директива LIST назначение типа контроллера Директива CONFIG установка значений битов конфигурации контроллера Директива equ присвоение числового значения Директива org 0 начало выполнения программы с адреса 0 Команда bsf устанавливает бит указанного регистра в 1 Команда bсf сбрасывает бит указанного регистра в 0 Команда movlw записывает константу в регистр W Команда movwf копирует содержимое регистра W в указанный регистр Команда goto обеспечивает переход без условия на строку с меткой Директива end конец программы.

Выбор тактового генератора Внешний RC генератор. Подключается к выводу GP5. Бит 4. CP: Бит защиты памяти программ от чтения программатором 1 Защита выключена 0 Защита включена При выключения защиты вся память программ стирается Бит 8.

Биты калибровки сброса по снижению питания 00 нижний предел калибровки 11 верхний предел калибровки Добавление программы к проекту Пример добавления программы к проекту показан на Рис. Компиляция Чтобы создать бинарный файл с расширением hex для прошивки микроконтроллера необходимо откомпилировать проект.

Результаты компиляции можно увидеть в окне Output Рис. Запуск последнего выполняется как показано на Рис. После запуска отладчика в окне Output Рис. Команды отладчика Рис. Команды отладчика: Рис. Команды отладчика. Run Непрерывное выполнение программы до точки останова Breakpoint если таковая установлена. Halt Остановка программы на текущем шаге выполнения.

Animate Анимация непрерывного выполнения программы. Step Into Выполнение по шагам вызовы Call выполняются за один шаг. Step Over Выполнение по шагам включая команды вызовов Call. Reset Начальная установка программы. Переход указателя на первую команду. Breakpoints Отображение списка точек останова. Обработка списка. При выполнении программы по шагам текущий шаг выделяется стрелкой Рис. Непрерывное выполнение программы останавливается командой Halt или достижением программой точки останова.

Пример программы на ассемблере, которая с максимальной скоростью меняет состояние портов контроллера показан на Рис. Программа передаёт в. Состояние регистров специального назначения контроллера на момент выполнения программы слева и выполняемая по шагам программа справа.

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

Иногда результаты выполнения программы в режиме отладки не соответствуют выполнению этой же программы в реальном контроллере, так, например, отладчик программы Рис. Однако, контроллер, выполняющий программу без указанных инструкций, показывает на осциллографе циклическую работу всех пяти выходов: 0x15 и 0х22, включая GP0 и GP1 см.

Осциллограммы контроллера, выполняющего циклы программы Рис. Программа Рис. За период сигналов 5. Прошивка микроконтроллера Для записи программы в микроконтроллер прошивки контроллера необходимо микроконтроллер подключить к интегрированной среде MPLAB IDE через программатор. В контроллер PIC12F записана заводская калибровочная константа настройки частоты внутреннего тактового генератора.

Сообщение об успешной прошивке показано на Рис. Запуск прошивки микроконтроллера и вид сообщения об успешной прошивке. Пример программы на языке графического программирования для PIC контроллера выполненной в среде моделирования динамических систем Simulink.

Структура средств построения адекватной модели PIC контроллера на языке графического программирования. Бесплатные версии работают с Simulink моделями PIC контроллеров имеющих до 7 портов ввода-вывода. Распаковать zip файл в папке, в которой будут установлены Simulink блоки.

Запустить Matlab. Настроить текущий каталог Matlab на папку с распакованным файлом. Блоки, установленной библиотеки «Embedded Target for Microchip dspic». Версии Си компилятора слева и режимы его установки справа. Работа выполнена с версией v3. Проверка показала, что следующая версия v3.

Последовательность Simulink программирования для PIC контроллеров 1. Загрузите Matlab. Настройте его на рабочий каталог. Выбор типа контроллера в блоке Master модели. В строке ввода System target file раздела Code Generation должен быть указан компилятор S-функций dspic. Выбор dspic. Выбор компилятора S-функций dspic. Запуск компилятора показан на Рис.

Запуск компилятора Simulink модели. Результаты компиляции модели. Сохраните модель. Команда Open запускает Matlab и открывает модель. Перечень программаторов для прошивки микроконтроллера. Для DIP-8 не используется Рис. Можно программировать не только отдельный PIC контроллер, но и контроллер, находящийся в составе рабочего устройства. Для программирования PIC контроллера в составе устройства необходимо предусмотреть установку перемычек и токоограничивающих резисторов как показано на Рис.

Подключение микроконтроллера в составе электронного устройства к программатору. Они программируются на языках низкого уровня. Разработка программ на языке графического программирования Simulink с использованием многочисленных библиотек значительно сокращает время разработки и отладки в сравнении с программированием на уровне ассемблера. Разработанные для PIC-контроллеров Simulink структуры можно использовать и для компьютерного моделирования динамических систем с участием контроллеров.

Однако, из-за избыточности кода такой подход применим только для семейств PIC контроллеров с достаточными ресурсами. Создайте проект см. Создайте ассемблерную программу генератора импульсов, например, показанную в разделе Создание файла программы, Рис.

Используя руководство пользователя [7] рассмотрите назначение используемых в программе команд. Включите программу в проект Рис. Откомпилируйте программу см. Откройте окно отображения состояния специальных регистров процессора Рис.


Светофор на PIC12F629 с «неправильной» программой

Когда делаются схемы, необходимо, чтобы кто-то или что-то контролировало выполнение необходимых действий. Для человека это довольно проблематично, так как приходится использовать значительное количество различных элементов, позволяющих контролировать их работу транзисторы, резисторы, тиристоры, диоды, конденсаторы и прочие. Но все сложные и большие схемы можно контролировать с помощью контроллеров микроконтроллеров. Итак, для чайников? Какая их схема и где они используются. PIC-контроллер или микроконтроллер является средством автоматизации выполнения определённых действий с помощью заранее подготовленной программы. Особенностью представителей этой линейки продукции является легкость в программировании и доступность всех необходимых функций для работы.

Термометр на микроконтроллере pic12f — описание проекта. Программа работы термометра написана на языке MikroPASCAL.

Программирование микроконтроллеров PIC. Часть 1. Необходимые инструменты и программы. Основы MPLAB

Сегодня мы расширим свой кругозор по изучению работы портов микроконтроллера и изучим второе назначение порта — работу на вход. И для изучения работы на вход мы применим обычную тактовую кнопку. Ну и давайте также как и в случаях с другими контроллерами в целях экономии времени на создание нового проекта в будущем, когда дело будет касаться одного и того же контроллера, попробуем проект для нашего сегодняшнего урока создать из проекта прошлого занятия. X мы перепишем папку nbproject и файлы Makefile и main. Зайдём в папку nbproject в папке нового проекта и удалим там всё кроме файлов project. Затем откроем файл project. А, ну заодно и файл проекта для протеуса тоже перепишем в новую папку, переименовав его тоже в свете требований имени нового проекта — в BUTTON Сделаем наш проект главным, чтобы из меню и тулбара всё управление шло именно к данному проекту, с помощью контекстного меню, вызвав его правой кнопкой мыши на имени проекта в дереве проектов по пункту Set as Main Project. Откроем файл main. Проект уже спокойно должен будет собраться, о чём будет свидетельствовать надпись в окне вывода информации, в котором также будет присутствовать и путь к файлу новой прошивки.

Средства Разработки Программного Кода PIC Контроллеров

А почему именно Mplab, а не более современная Mplab X от того же микрочипа? Войдите , пожалуйста. Хабр Geektimes Тостер Мой круг Фрилансим. Войти Регистрация.

Небольшой, но весьма эффективный бесплатный программный пакет для прошивки PIC-микроконтроллеров различных серий.

Pic контроллеры интерфейс программирования. Что собой представляет PIC-микроконтроллер

В плате можно использовать любой ми выводный PIC микроконтроллер в SO корпусе без кварца со встроенным генератором. Схема деликатной подсветки зоны поворота на PIC12F описана в данной статье. Эта схема позволяет включать дополнительную лампу или одну из противотуманных фар при повороте автомобиля, тем самым освещая зону поворота. В отличие от штатных устройств, получающих сигнал с датчика поворота руля, эта схема берет сигнал с лампы поворотника. С одной стороны, это даже лучше, ведь освещение поворота включается до начала самого поворота, что позволяет заранее увидеть возможное препятствие, а не тогда, когда автомобиль уже начал поворачивать. Предлагаемый таймер служит для управления лампой ДРЛ с учетом особенностей ее эксплуатации.

Нужен пример программы для PIC микроконтроллера

ВВЕДЕНИЕ PIC-контроллеры остаются популярными в тех случаях, когда требуется создать недорогую компактную систему с низким энергопотреблением, не предъявляющую высоких требований по ее управлению. Эти контроллеры позволяют заменить аппаратную логику гибкими программными средствами, которые взаимодействуют с внешними устройствами через хорошие порты. Миниатюрные PIC контроллеры хороши для построения преобразователей интерфейсов последовательной передачи данных, для реализации функций «прием обработка передача данных» и несложных регуляторов систем автоматического управления. Компания Microchip распространяет MPLAB — бесплатную интегрированную среду редактирования и отладки программ, которая записывает бинарные файлы в микроконтроллеры PIC через программаторы. Контроллеры имеют RISC архитектуру и обеспечивают выполнение большинства команд процессора за один машинный цикл.

Взаимодействие MPLAB и Matlab/Simulink позволяет разрабатывать программы для PIC контроллеров в среде Simulink — графического моделирования.

Примеры построения кода программ для PIC-контроллеров

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

Довольно часто радиолюбители, которые пользуются простейшими программаторами, по незнанию или из-за несовершенства программного обеспечения программаторов затирают калибровочную константу микроконтроллеров. Это значение в последней ячейке памяти программ, с помощью которого программа микроконтроллера настраивает встроенный генератор до эталонной частоты. А что делать тем, у кого нет такого программатора? Чтобы восстановить калибровочную константу Вам потребуется либо частотомер , либо мультиметр с функцией измерения частоты например такой как XB

Итак, вы решили научиться программировать pic-контроллеры. Для начала поговорим о том, что вам для работы с этими контроллерами понадобится.

Проект Eldigi. В связи с этим на сайте могут быть ошибки. Нашли ошибку? Автомобиль Nissan Almera N Просмотров: Обман одометра PIC12F Сигнал можно отключать, включать тестовый

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


Usb универсальный программатор pic. Самодельный программатор для PIC-контроллеров. Как программировать PIC микроконтроллеры или Простой JDM программатор

В статье рассматривается программатор Extra-PIC, данные о котором получены из (DOC Rev.1.03.00). Программатор рабочий, если все собрать как указано ниже то все работает при первом включении. Лично я взял эту схему с сайта Тимофея Носова

Список поддерживаемых микросхем, при использовании с программой IC-PROG v1.05D:
PIC-контроллеры фирмы Microchip: PIC12C508, PIC12C508A, PIC12C509, PIC12C509A, PIC12CE518, PIC12CE519, PIC12C671, PIC12C672, PIC12CE673, PIC12CE674, PIC12F629, PIC12F675, PIC16C433, PIC16C61, PIC16C62A, PIC16C62B, PIC16C63, PIC16C63A, PIC16C64A, PIC16C65A, PIC16C65B, PIC16C66, PIC16C67, PIC16C71, PIC16C72, PIC16C72A, PIC16C73A, PIC16C73B, PIC16C74A, PIC16C74B, PIC16C76, PIC16C77, PIC16F72, PIC16F73, PIC16F74, PIC16F76, PIC16F77, PIC16C84, PIC16F83, PIC16F84, PIC16F84A, PIC16F88, PIC16C505*, PIC16C620, PIC16C620A, PIC16C621, PIC16C621A, PIC16C622, PIC16C622A, PIC16CE623, PIC16CE624, PIC16CE625, PIC16F627, PIC16F628, PIC16F628A, PIC16F630*, PIC16F648A, PIC16F676*, PIC16C710, PIC16C711, PIC16C712, PIC16C715, PIC16C716, PIC16C717, PIC16C745, PIC16C765, PIC16C770*, PIC16C771*, PIC16C773, PIC16C774, PIC16C781*, PIC16C782*, PIC16F818, PIC16F819, PIC16F870, PIC16F871, PIC16F872, PIC16F873, PIC16F873A, PIC16F874, PIC16F874A, PIC16F876, PIC16F876A, PIC16F877, PIC16F877A, PIC16C923*, PIC16C924*, PIC18F242, PIC18F248, PIC18F252, PIC18F258, PIC18F442, PIC18F448, PIC18F452, PIC18F458, PIC18F1220, PIC18F1320, PIC18F2320, PIC18F4320, PIC18F4539, PIC18F6620*, PIC18F6720*, PIC18F8620*, PIC18F8720*

Примечание: микроконтроллеры, помеченные звездочкой (*) подключаются к программатору только через разъем ICSP.

Последовательная память EEPROM I2C (IIC): X24C01, 24C01A, 24C02, 24C04, 24C08, 24C16, 24C32, 24C64, AT24C128, M24C128, AT24C256, M24C256, AT24C512.

Схема программатора.
На стороне программатора используется разъем DB9 типа «гнездо» («мама», «дырки»).
Очень часто ошибаются и ставят «вилку» («папу», «штырьки»), т.е. такое же как и на стороне ПК!

Внимание! Материал только для общей справки. Обязательно убедитесь, что указанное расположение выводов соответствует выбранному вами микроконтроллеру. Для этого, обратитесь к Data Sheets и Programming Specifications на соответствующий микроконтроллер (обычно всё совпадает).

Полный вариант:

Фото готовой платы:

Пошаговая инструкция или «Как прошить PIC-контроллер»

1. Соберите программатор Extra-PIC, отмойте растворителем или спиртом с зубной щеткой, просушите феном.
Осмотрите на просвет на предмет волосковых замыканий и непропаев.
Подготовьте блок питания на напряжение не менее 15В и не более 18 вольт.
РАСПАЯЙТЕ УДЛЕНИТЕЛЬНЫЙ ШНУР
мама-папа для COM-порта (не путать с нуль-модемными и кабелями для модемов; прозвоните шнур — первая вилка, должен идти к первому гнезду и т.д.; нумерация вилок и гнезд нарисована на самом разъеме 1-1, 2-2, 3-3 и т. д до 9-9.). Обязательно сделайте все самостоятельно. У меня была проблема именно с кабелем, а я грешил на программатор =)
2. Скачайте программу IC-PROG с или с сайта разработчиков .
3. Распакуйте программу в отдельный каталог. В образовавшемся каталоге должны находиться три файла:
icprog.exe – файл оболочки программатора;
icprog.sys – драйвер, необходимый для работы под Windows NT, 2000, XP. Этот файл всегда должен находиться в каталоге программы;
icprog.chm – файл помощи (Help file).
4. Настройте программу.

Для Windows95, 98, ME

Для Windows NT, 2000, XP

(Только для Windows XP ):

Правой кнопкой щёлкните на файле icprog.exe.

«Свойства » >> вкладка «Совместимость » >>

Установите «галочку» на

«Запустить программу в режиме совместимости с: » >>

выберите «Windows 2000 «.

Запустите файл icprog.exe .

Выберите «Settings » >> «Options » >> вкладку «Language » >> установите язык «Russian » и нажмите «Ok «.

Согласитесь с утверждением «You need to restart IC-Prog now » (нажмите «Ok «).

Оболочка программатора перезапустится.

«Настройки » >> «Программатор «.

Проверьте установки, выберите используемый вами COM-порт, нажмите «Ok «.

«Вкл. NT/2000/XP драйвер » >> Нажмите «Ok » >>

если драйвер до этого не был установлен в системе, в появившемся окне «Confirm » нажмите «Ok «. Драйвер установится, и оболочка программатора перезапустится.

Примечание:

Для очень «быстрых» компьютеров возможно потребуется увеличить параметр «Задержка Ввода/Вывода «. Увеличение этого параметра увеличивает надёжность программирования, однако, увеличивается и время, затрачиваемое на программирование микросхемы.

«Настройки » >> «Опции » >> выберите вкладку «I2C » >> установите «галочки» на пунктах:

«Включить MCLR как VCC » и «Включить запись блоками «. Нажмите «Ok «.

Программа готова к работе.

5. Установите микросхему в панель программатора, соблюдая положение ключа.
6. Подключите шнур удлинителя, включите питание.
7. Запустите программу IC-Prog.
8. В выпадающем списке выберите контроллер PIC16F876A.

Микроконтроллеры PIC заслужили славу благодаря своей неприхотливости и качеству работы, а также универсальности в использовании. Но что может дать микроконтроллер без возможности записывать новые программы на него? Без программатора это не больше чем кусочек удивительного по форме исполнения железа. Сам программатор PIC может быть двух типов: или самодельный, или заводской.

Различие заводского и самодельного программаторов

В первую очередь отличаются они надежностью и функциональностью, которую предоставляют владельцам микроконтроллеров. Так, если делается самодельный, то он, как правило, рассчитывается только на одну модель PIC-микроконтроллера, тогда как программатор от Microchip предоставляет возможность работы с различными типами, модификациями и моделями микроконтроллеров.

Заводской программатор от Microchip

Самый известный и популярный — простой программатор PIC, который использует множество людей и известный для многих под названием PICkit 2. Его популярность объясняется явными и неявными достоинствами. Явные достоинства, которые имеет этот USB программатор для PIC, можно перечислять долго, среди них: относительно небольшая стоимость, простота эксплуатации и универсальность относительно всего семейства микроконтроллеров, начиная от 6-выводных и заканчивая 20-выводными.

Использование программатора от Microchip

По его использованию можно найти много обучающих уроков, которые помогут разобраться с всевозможными аспектами использования. Если рассматривать не только программатор PIC, купленный «с рук», а приобретенный у официального представителя, то можно ещё подметить качество поддержки, предоставляемое вместе с ним. Так, в дополнение идут обучающие материалы по использованию, лицензионные среды разработки, а также демонстрационная плата, которая предназначена для работы с маловыводными микроконтроллерами. Кроме всего этого, присутствуют утилиты, которые сделают работу с механизмом более приятной, помогут отслеживать процесс программирования и отладки работы микроконтроллера. Также поставляется утилита для стимулирования работы МК.

Другие программаторы

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

Программаторы, собранные вручную

А теперь, пожалуй, самое интересное — программаторы PIC-контроллеров, которые собираются вручную. Этим вариантом пользуются те, у кого нет денег или просто нет желания их тратить. В случае покупки у официального представителя можно рассчитывать на то, что если устройство окажется некачественным, то его можно вернуть и получить новое взамен. А при покупке «с рук» или с помощью досок объявлений в случае некачественной пайки или механических повреждений рассчитывать на возмещение расходов и получение качественного программатора не приходится. А теперь перейдём к собранной вручную электронике.

Программатор PIC может быть рассчитан на определённые модели или быть универсальным (для всех или почти всех моделей). Собираются они на микросхемах, которые смогут преобразовать сигналы с порта RS-232 в сигнал, который позволит программировать МК. Нужно помнить, что, когда собираешь данную кем-то конструкцию, программатор PIC, схема и результат должны подходить один к одному. Даже небольшие отклонения нежелательны. Это замечание относится к новичкам в электронике, люди с опытом и практикой могут улучшить практически любую схему, если есть куда улучшать.

Отдельно стоит молвить слово и про программный комплекс, которым обеспечивают USB-программатор для PIC, своими рукамисобранный. Дело в том, что собрать сам программатор по одной из множества схем, представленных в мировой сети, — мало. Необходимо ещё и программное обеспечение, которое позволит компьютеру с его помощью прошить микроконтроллер. В качестве такового довольно часто используются Icprog, WinPic800 и много других программ. Если сам автор схемы программатора не указал ПО, с которым его творение сможет выполнять свою работу, то придется методом перебора узнавать самому. Это же относится и к тем, кто собирает свои собственные схемы. Можно и самому написать программу для МК, но это уже настоящий высший пилотаж.

Универсальные программаторы, которые подойдут не только к РІС

Если человек увлекается программированием микроконтроллеров, то вряд ли он постоянно будет пользоваться только одним типом. Для тех, кто не желает покупать отдельно программаторы для различных типов микроконтроллеров, от различных производителей, были разработаны универсальные устройства, которые смогут запрограммировать МК нескольких компаний. Так как компаний, выпускающих их, довольно много, то стоит избрать пару и рассказать про программаторы для них. Выбор пал на гигантов рынка микроконтроллеров: PIC и AVR.

Универсальный программатор PIC и AVR — это аппаратура, особенность которой заключается в её универсальности и возможности изменять работу благодаря программе, не внося изменений в аппаратную составляющую. Благодаря этому свойству такие приборы легко работают с МК, которые были выпущены в продажу уже после выхода программатора. Учитывая, что значительным образом архитектура в ближайшее время меняться не будет, они будут пригодны к использованию ещё длительное время. К дополнительным приятным свойствам заводских программаторов стоит отнести:

  1. Значительные аппаратные ограничения по количеству программируемых микросхем, что позволит программировать не одну, а сразу несколько единиц электроники.
  2. Возможность программирования микроконтроллеров и схем, в основе которых лежат различные технологии (NVRAM, NAND Flash и другие).
  3. Относительно небольшое время программирования. В зависимости от модели программатора и сложности программируемого кода может понадобиться от 20 до 400 секунд.

Особенности практического использования

Отдельно стоит затронуть тему практического использования. Как правило, программаторы подключаются к портам USB, но есть и такие вариации, что работают с помощью тех же проводов, что и винчестер. И для их использования придется снимать крышку компьютера, перебирать провода, да и сам процесс подключения не очень-то и удобный. Но второй тип является более универсальным и мощным, благодаря ему скорость прошивки больше, нежели при подключении через USB. Использование второго варианта не всегда представляется таким удобным и комфортным решением, как с USB, ведь до его использования необходимо проделать ряд операций: достать корпус, открыть его, найти необходимый провод. Про возможные проблемы от перегревания или скачков напряжения при работе с заводскими моделями можно не волноваться, так как у них, как правило, есть специальная защита.

Работа с микроконтроллерами

Что же необходимо для работы всех программаторов с микроконтроллерами? Дело в том, что, хотя сами программаторы и являются самостоятельными схемами, они передают сигналы компьютера в определённой последовательности. И задача относительно того, как компьютеру объяснить, что именно необходимо послать, решается программным обеспечением для программатора.

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

Возможные проблемы

Увы, даже самая идеальная техника не лишена возможных проблем, которые нет-нет, да и возникнут. Для улучшенного понимания необходимо составить список. Часть из этих проблем можно исправить вручную при детальном осмотре программатора, часть — только проверить при наличии необходимой проверочной аппаратуры. В таком случае, если программатор PIC-микроконтроллеров заводской, то вряд ли починить представляется возможным. Хотя можно попробовать найти возможные причины сбоев:

  1. Некачественная пайка элементов программатора.
  2. Отсутствие драйверов для работы с устройством.
  3. Повреждения внутри программатора или проводов внутри компьютера/USB.

Эксперименты с микроконтроллерами

Итак, всё есть. Как же начать работу с техникой, как начать прошивать микроконтроллер программатором?

  1. Подключить внешнее питание, присоединить всю аппаратуру.
  2. Первоначально необходима среда, с помощью которой всё будет делаться.
  3. Создать необходимый проект, выбрать конфигурацию микроконтроллера.
  4. Подготовить файл, в котором находится весь необходимый код.
  5. Подключиться к программатору.
  6. Когда всё готово, можно уже прошивать микроконтроллер.

Выше была написана только общая схема, которая позволяет понять, как происходит процесс. Для отдельных сред разработки она может незначительно отличаться, а более детальную информацию о них можно найти в инструкции.

Хочется отдельно написать обращение к тем, кто только начинает пользоваться программаторами. Помните, что, какими бы элементарными ни казались некоторые шаги, всегда необходимо их придерживаться, чтобы техника нормально и адекватно могла работать и выполнять поставленные вами задачи. Успехов в электронике!

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

Принципиальная схема программатора для pic контроллеров:

Питание на саму схему не требуется, ведь для этого служит COM порт компьютера, через который и осуществляется управление прошивкой микроконтроллера. Для низковольтного режима программирования вполне достаточно 5в, но могут быть не доступны все опции для изменения (фьюзы). Разъем подключения COM-9 порта смонтировал прямо на печатную плату программатора для PIC — получилось очень удобно.

Можно воткнуть плату без лишних шнуров прямо в порт. опробован на различных компьютерах и при программировании МК серий 12F,16F и 18F, показал высокое качество прошивки. Предложенная схема позволяет программировать микроконтроллеры PIC12F509, PIC16F84A, PIC16F628. Например недавно с помощью предложенного программатора успешно был прошит микроконтроллер для .

Для программирования используется WinPic800 — одна из лучших программ для программирования PIC контроллеров. Программа позволяет выполнять операции для микроконтроллеров семейства PIC: чтения, записи, стирания, проверки FLASH и EEPROM памяти и установку битов конфигураций.

Развитие электроники идёт стремительными темпами, и всё чаще главным элементом того или иного устройства является микроконтроллер. Он выполняет основную работу и освобождает проектировщика от необходимости создания изощрённых схемных решений, тем самым уменьшая размер печатной платы до минимального. Как всем известно, микроконтроллером управляет программа, записанная в его внутреннюю память. И если опытный программист-электронщик не испытывает проблем с использованием микроконтроллеров в своих устройствах, то для начинающего радиолюбителя попытка записать программу в контроллер (особенно PIC) может обернуться большим разочарованием, а иногда и небольшим пиротехническим шоу в виде дымящей микросхемы.

Как ни странно, но при всём величии сети Интернет в нём очень мало информации о прошивке PIC-контроллеров , а тот материал что удаётся найти — очень сомнительного качества. Конечно, можно купить заводской программатор за неадекватную цену и шить сколько душе угодно, но что делать, если человек не занимается серийным производством. Для этих целей можно собрать несложную и не дорогую в реализации самоделку , именуемую JDM-программатором по приведенной ниже схеме (рисунок №1):


Рисунок №1 — схема программатора

Сразу привожу перечень элементов для тех, кому лень всматриваться в схему:

  • R1 — 10 кОм
  • R2 — 10 кОм (подстроченный). Регулировкой сопротивления данного резистора нужно добиться около 13В на выводе №4 (VPP) во время программирования. В моём случае сопротивление составляет 1,2 кОм
  • R3 — 200 Ом
  • R4, R5 — 1,5 кОм
  • VD1, VD2, VD3, VD4, VD6 — 1N4148
  • VD5 — 1N4733A (Напряжение стабилизации 5,1В)
  • VD7 — 1N4743A (Напряжение стабилизации 13В)
  • C1 — 100 нФ (0,1 мкФ)
  • C2 — 470 мкФ х 16 В (электролитический)
  • SUB-D9F — разъём СОМ-порта (МАМА или РОЗЕТКА)
  • Панелька DIP8 — зависит от используемого вами контроллера

В схеме использован пример подключения таких распространённых контроллеров, как PIC12F675 и PIC12F629 , но это совсем не значит, что прошивка других серий PIC будет невозможна. Чтобы записать программу в контроллер другого типа, достаточно перекинуть провода программатора в соответствии с рисунком №2, который приведён ниже.


Рисунок №2 — варианты корпусов PIC-контроллеров с необходимыми выводами

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

Хоть сама схема довольно проста и не вызовет трудностей в сборке, но она тоже требует уважения. Поэтому неплохо было бы сделать под неё печатную плату. После некоторых манипуляций с программой SprintLayout , текстолитом, дрелью и утюгом, на свет родилась вот такая заготовка (фото №3).


Фото №3 — печатная плата программатора

Скачать исходник печатной платы для программы SprintLayout можно по этой ссылке:
(скачиваний: 670)
При желании его можно изменить под свой тип PIC-контроллера. Для тех, кто решил оставить плату без изменений, выкладываю вид со стороны деталей для облегчения монтажа (рисунок №4).


Рисунок №4 — плата с монтажной стороны

Ещё немного колдовства с паяльником и мы имеем готовое устройство, способное прошить PIC-контроллер через COM-порт вашего компьютера. Ещё тёпленький и не отмытый от флюса результат моих стараний показан на фото №5.


Фото №5 — программатор в сборе

С этого момента, первый этап на пути к прошивке PIC-контроллера , подошёл к концу. Второй этап будет включать в себя подключение программатора к компьютеру и работу с программой IC-Prog .
К сожалению, не все современные компьютеры и ноутбуки способны работать с данным программатором ввиду банального отсутствия на них COM-портов , а те что установлены на ноутбуках не выдают необходимые для программирования 12В . Так что я решил обратится к своему первому ПК , который давным-давно пылился и ждал своего звёздного часа (и таки дождался).
Итак включаем компьютер и первым делом устанавливаем программу IC-Prog . Скачать её можно с сайта автора или по этой ссылке:
(скачиваний: 769)
Подключаем программатор к COM-порту и запускаем только что установленное приложение. Для корректной работы необходимо выполнить ряд манипуляций. Изначально необходимо выбрать тот тип контроллера, который собираемся шить. У меня это PIC12F675 . На скриншоте №6 поле для выбора контроллера выделено красным цветом.


Скриншот №6 — выбор типа микроконтроллера


Скриншот №7 — настройка метода записи контроллера

В этом же окне переходим во вкладку «Программирование » и выбираем пункт «Проверка при программировании «. Проверка после программирования может вызвать ошибку, так как в некоторых случаях самой прошивкой устанавливаются фьюзы блокировки считывания СР . Чтобы не морочить себе голову данную проверку лучше отключить. Короче следуем скриншоту №8.


Скриншот №8 — настройка верификации

Продолжаем работу с этим окном и переходим на вкладку «Общие «. Здесь необходимо задать приоритет работы программы и обязательно задействовать NT/2000/XP драйвер (скриншот №9). В некоторых случаях программа может предложить установку данного драйвера и потребуется перезапуск IC-Prog .


Скриншот №9 — общие настройки

Итак, с этим окном работа окончена. Теперь перейдём к настройкам самого программатора. Выбираем в меню «Настройки»->»Настройки программатора » или просто нажимаем клавишу F3 . Появляется следующее окно, показанное на скриншоте №10.


Скриншот №10 — окно настроек программатора

Первым делом выбираем тип программатора — JDM Programmer . Далее выставляем радиокнопку использования драйвера Windows . Следующий шаг подразумевает выбор COM-порта , к которому подключен ваш программатор. Если он один, вопросов вообще нет, а если более одного — посмотрите в диспетчере устройств, какой на данным момент используется. Ползунок задержки ввода/вывода предназначен для регулирования скорости записи и чтения. Это может понадобится на быстрых компьютерах и при возникновении проблем с прошивкой — этот параметр необходимо увеличить. В моём случае он остался по умолчанию равным 10 и всё нормально отработало.

На этом настройка программы IC-Prog окончена и можно переходить к процессу самой прошивки, но для начала считаем данные с микроконтроллера и посмотрим что в него записано. Для этого на панели инструментов нажимаем на значок микросхемы с зелёной стрелкой, как показано на скриншоте №11.


Скриншот №11 — процесс чтения информации с микроконтроллера

Если микроконтроллер новый и до этого не прошивался, то все ячейки его памяти будут заполнены значениями 3FFF , кроме самой последней. В ней будет содержаться значение калибровочной константы. Это очень важное и уникальное для каждого контроллера значение. От него зависит точность тактирования, которая путём подбора и установки этой самой константы закладывается заводом изготовителем. На скриншоте №12 показана та ячейка памяти, в которой будет храниться константа при чтении контроллера.


Скриншот №12 — значение калибровочной константы

Повторюсь, что значение уникальное для каждой микросхемы и не обязательно должно совпадать с тем, что на рисунке. Многие по неопытности затирают эту константу и в последствии PIC-контроллер начинает некорректно работать, если в проекте используется тактирование от внутреннего генератора. Советую записать эту константу и наклеить надпись с её значением прямо на контроллер. Таким образом вы избежите множество неприятностей в будущем. Итак, значение записано — двигаемся дальше. Открываем файл прошивки, имеющий как правило расширение .hex . Теперь вместо надписей 3FFF , буфер программирования содержит код нашей программы (скриншот №13).


Скриншот №13 — прошивка, загруженная в буфер программирования

Выше я писал, что многие затирают калибровочную константу по неосторожности. Когда же это происходит? Это случается в момент открытия файла прошивки. Значение константы автоматически меняется на 3FFF и если начать процесс программирования, то назад дороги уже нет. На скриншоте №14 выделена та ячейка памяти где ранее была константа 3450 (до открытия hex-файла ).

Рассказать в:
Быстро собрать понравившуюся схему на микроконтроллере для многих радиолюбителей — не проблема. Но многие начинающие работать с микроконтроллерами сталкиваются с вопросом — как его запрограммировать. Одним из самых простых вариантов программаторов является JDM программатор.
Программа — программатор ProgCode v 1.0Эта программа работает в WindowsXP. Позволяет программировать PIC контроллеры среднего семейства(PIC16Fxxx) через COM порт компьютера. Индикатор подключения программатора(в правом верхнем углу окна) при отсутствии программатора на выбранном в настройках порту окрашивается в красный цвет. Если программатор подключен — программа обнаруживает его и индикатор в правом верхнем углу принимает вид, который показан на рисунке 1. В левой части окна программы расположена панель управления. Эту панель можно свернуть нажав на кнопку в панели инструментов или, кликнув по левому краю окна (это удобно, когда окно программы развёрнуто во весь экран).

Рисунок (скриншот программы ProgCode v1.0)

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

Если этого не произошло, то выбрать нужный контроллер можно и после загрузки файла в программу.

Формат файлов SFRВ программаторе ProgCode поддержана работа с собственным форматом файлов. Эти файлы имеют расширение.SFR и позволяют хранить дополнительную информацию о программе, предназначенной для микроконтроллера. В таком файле сохраняется информация о типе микроконтроллера. Это позволяет при загрузке файла формата SFR не беспокоится о предварительном выборе типа МК в настройках.

Настройки порта и протокола при подключении программатораПосле установки программы — по умолчанию выставлены все настройки, которые необходимы для работы программатора со схемой JDM, приведённой на этой странице.
Инверсия сигнала в приведённой схеме нужна только для выхода OutData, так как в этой цепи сигнал инвертирован согласующим транзистором. На всех остальных выводах инверсия отключена.

Задержка импульса может быть равна 0. Её регулировка предусмотрена для «особо трудных» экземпляров контроллеров, которые не удаётся прошить. То же самое относится и к надбавке к паузе при записи — по умолчанию она нулевая. Если увеличить значения этих настроек, время программирования контроллера значительно увеличится.

Галочка «проверка при записи» должна быть выставлена, если вам нужно «на лету» проверить всё что записывается в микроконтроллер на правильность и соответствие исходному файлу. Если эту галочку снять проверка не производится вообще и сообщений об ошибках не будет, даже если такие ошибки в реальности будут присутствовать.
Выбор скорости порта — скорость может быть любой. Для JDM программатора этот параметр не имеет значения.

В WindowsXP применяется буферизирование передаваемой через порты COM информации. Это так называемые буфера FIFO. Чтобы избежать ошибок при программировании через JDM этот механизм необходимо отключить. Сделать это можно в диспетчере устройств Windows.

Заходим в панель управления, затем:
Администрирование — управление компьютером — диспетчер устройств

Затем выбираем порт, на который подключен JDM программатор(например COM1) — смотрим свойства — вкладка параметры порта — дополнительно. И снимаем галочку на пункте «Использовать буферы FIFO»

Рисунок — Настройка COM порта для работы с JDM программатором

После этого перезагружаем компьютер.

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

Любой файл при двойном клике по нему в панели обозревателя откроется в самой программе — это относится к рисункам, html файлам, doc, rtf, djvu(при установленных плагинах), pdf, txt, asm. Файл возможно так-же открыть двойным кликом в обозревателе с помощью внешней программы, установленной на компьютере. Для этого расширение нужного типа файлов необходимо прописать в списке «Ассоциации файлов». Если путь к открывающей программе не указывать — Windows откроет файл в программе по умолчанию(это удобно для открытия архивов, которые не всегда однозначно открываются). Если путь к открывающей программе указан в списке — файл откроется в указанной программе. Удобно просматривать таким образом файлы типа SPL, LAY, DSN.

Рисунок (скриншот обозревателя программы ProgCode v1.0)

Вот так выглядит окно с настройками ассоциаций файлов:

Обозреватель проектов в интернетеОбозреватель проектов в интернете так-же как и локальный обозрватель проектов позволяет быстро перейти на нужный сайт в интернете парой кликов, просмотреть проект и при необходимости сразу прошить программу в МК.


При обзоре проектов в интернете если на странице проекта есть ссылка на файл с расширением SFR(это формат файлов программы ProgCode), то такой файл при клике по нему откроется в новой вкладке программы и сразу готов к прошивке в микроконтроллер.
Список ссылок можно редактировать воспользовавшись кнопкой «Изменить». При этом откроется окно редактирования списка ссылок:

Описание процесса программирования микросхемБольшинство современных микросхем содержит флэш-память, которая программируется посредством протокола I2C или подобных протоколов.
Перезаписываемая память есть в PIC , AVR и других контроллерах, микросхемах памяти типа 24Cxx, и подобных им, различных картах памяти типа MMC и SD, обычных флэш USB картах, которые подключаются к компьютеру через USB разъём.Рассмотрим запись информации во флэш память микроконтроллера PIC16F628AЕсть 2 линии DATA и CLOCK, по которым передаётся информация. Линия CLOCK служит для подачи тактовых импульсов, а линия DATA для передачи информации.
Чтобы передать в микроконтроллер 1 бит информации, необходимо выставить 0 или 1(в зависимости от значения бита) на линии данных(DATA) и создать спад напряжения (переход от 1 к 0) на линии тактирования(CLOCK).
Один бит для контроллера – маловато. Он ждёт вдогонку ещё пять, чтобы воспринять эту посылку из 6-ти бит как команду. Контроллеру очень нравятся команды, а состоять они должны именно из 6-ти бит – такова уж природа у PIC16.
Вот список и значение команд, которые PIC способен понять. Команд не так уж и много – словарный запас у этого контроллера невелик, но не надо думать, что он совсем глуп – бывают устройства и с меньшим количеством команд»LoadConfiguration» 000000 — Загрузка конфигурации
«LoadDataForProgramMemory» 000010 — Загрузка данных в память программ
«LoadDataForDataMemory» — 000011 — Загрузка данных в память данных(EEPROM)
«IncrementAddress» 000110 — Увеличение адреса PC МК
«ReadDataFromProgramMemory» 000100 — Чтение данных из памяти программ
«ReadDataFromDataMemory» 000101 — Чтение данных из памяти данных(EEPROM)
«BeginProgrammingOnlyCycle» 011000 — Начать цикл программирования
«BulkEraseProgramMemory» 001001 — Полное стирание памяти программ
«BulkEraseDataMemory» 001011 — Полное стирание памяти данных(EEPROM)
«BeginEraseProgrammingCycle» 001000 — Начать цикл программированияРеагирует контроллер на эти команды по-разному. По-разному после выдачи команды нужно и продолжать с ним разговор.
Для того чтобы начать полноценный процесс программирования необходимо ещё подать напряжение 12 вольт на вывод MCLR контроллера, после этого подать на него напряжение питания. Именно в такой последовательности подачи напряжений есть определённый смысл. После подачи питания, если PIC сконфигурирован на работу от внутреннего RC генератора, он может начать выполнение собственной программы, что при программировании вещь недопустимая, так как неизбежен сбой.
Предварительная подача 12-ти вольт на MCLR позволяет избежать такого развития событий.
При записи информации во флэш память программ МК после команды»LoadDataForProgramMemory» 000010 — Загрузка данных в память программнеобходимо отправить в контроллер сами данные — 16 бит,
которые выглядят так: “0xxxxxxxxxxxxxx0”.Крестики в этом слове – это сами данные, а нули по краям отправляются как обрамление – это стандарт для PIC16. Значащих битов в слове всего 14. У этой серии контроллеров 14-ти битный формат представления команд.
После окончания передачи слова с данными PIC ждёт следующую команду.
Так как нашей целью является запись слова в память программ МК, следующей командой должна быть команда
«BeginEraseProgrammingCycle» 001000 — Начать цикл программированияПолучив её, контроллер отключается от внешнего мира на 6 миллисекунд, которые нужны ему, чтобы завершить процесс записи.Сигналы на выводах микроконтроллера формируются компьютером при помощи специальных программ — программаторов. Для передачи сигнала могут служить порты COM, LPT или USB. C JDM программатором работают такие программы как PonyProg, IsProg, WinPic800.
Схема JDM программатораОчень простая схема программатора приведена на рисунке. В этой схеме хоть и не реализуется контроль последовательности подачи напряжений, но зато она очень проста и собрать такую схему возможно очень быстро, ипользовав минимумом деталей.
Рисунок (схема JDM программатора)


Одним из вопросов при подключении программатора к компьютеру является вопрос — как обеспечить селективную развязку. Чтобы в случае неисправности в схеме избежать повреждения COM порта. В некоторых схемах применяется микросхема MAX232, которая обеспечивает селективную развязку и согласует уровни сигналов. В этой схеме вопрос решён проще — с помощью применения батарейного питания. Уровень сигнала, поступающего от компьютера ограничивается стабилитронами VD1, VD2, и VD3. Несмотря на простоту схемы JDM программатора с его помощью можно запрограммировать большинство типов PIC микроконтроллеров.Перемычка между выводами COM6(DSR) и COM7(RTS) предназначена для того, чтобы программа могла определить, что программатор подключен к компьютеру.

Поключение выходов программатора к конкретному МК зависит от типа МК. Часто на плату программатора монтируют несколько панелек, которые расчитаны на определённый тип контроллеров.

В таблице приведено назначение ножек некоторых типов МК при программировании.

приведены рисунки с назначением выводов наиболее распространнённых МК при программировании.Цоколёвка (распиновка) микроконтроллеров PIC16F876A, PIC16F873A в корпусе DIP28.

Цоколёвка (распиновка) микроконтроллеров PIC16F874A, PIC16F877A в корпусе DIP40.
Цоколёвка (распиновка) микроконтроллеров PIC16F627A, PIC16F628A, PIC16F648A в корпусе DIP18.
Такое же расположение выводов, предназначенных для программирования, имеют МК PIC16F84, PIC16F84A.

Назначение выводов для микроконтроллеров серии PIC16Fxxx в зависимости от типа корпуса в большинстве случаев является стандартным, но если возникает сомнения на этот счёт, то надёжнее всего свериться с даташитом на конкретный экземпляр МК. Часть документации присутствует на русском сайте http://microchip.ru Полное же собрание даташитов и другой документации находится на сайте производителя PIC микроконтроллеров: http://microchip.com
Индекс проектовПрограмма позволяет напрямую выходить на страницу индекса, парой кликов просматривать описание нужного проекта и сразу-же прошивать программу в контроллер.

При необходимости прошить контроллер выбранной прошивкой — кликаем мышкой на файл формата SFR, к примеру Timer_a.sfr
Программа загружает файл с сервера в новую вкладку.

После этого остаётся только вставить МК в панельку программатора, если это ещё не сделано, и нажать на кнопку «Записать всё».
Программа записывается в МК. После этого контроллер вставляется в плату устройства и устройство готово к работе.

Скачать программу можно на странице загрузки файлов:http://cxema.my1.ru/load/proshivki/material_k_state_prostoj_jdm_programmator_dlja_pic_mikrokontrollerov/9-1-0-1613 Раздел:

Программаторы для Flash PIC микроконтроллеров

Я получаю много вопросов о том, какое программное обеспечение лучше всего использовать с моими конструкциями программаторов для PIC микроконтроллеров:

Если Вы раньше не пользовались ни одним из них, то более подробную информацию по программаторам для PIC микроконтроллеров, включая мои старые программы для DOS, можно взять на этих сайтах: http://www.man.ac.uk/~mbhstdj/piclinks.html.

Эти конструкции настолько просты потому, что компьютер обеспечивает весь «механизм», необходимый для программирования микроконтроллеров. Аппаратная часть программаторов предназначена для прямого подключения микроконтроллера к параллельному (принтерному) или последовательному порту компьютера. Как правило, компьютер переводит микроконтроллер в режим программирования (хотя для максимально простого варианта это можно выполнить вручную) и затем производит загрузку программы из шестнадцатиричного файла в микроконтроллер посредством комбинации управляющих сигналов на выводах микроконтроллера. В ранних моделях EEPROM PIC микроконтроллеров (например, 16C84) вход в режим программирования выполняется при подаче напряжения около 12В на вывод /MCLR, но более новые модели обеспечивают переход в режим программирования без использования этого напряжения. Несмотря на различия в размерах памяти большинство Flash PIC микроконтроллеров используют одинаковое программное обеспечение (за исключением микроконтроллеров типа 16F74 — в настоящее время эта программа с ними не работает). Все, что необходимо выполнять программному обеспечению любого PIC программатора с простой аппаратной частью — это генерация и обработка следующих логических сигналов:

  • OUT — данные (data) из компьютера в микроконтроллер (обычно RB7)
  • CLK — синхронизания (clock) из компьютера в микроконтроллер (обычно RB6)
  • VDD — включение напряжения питания +5В для микроконтроллера (необязательно)
  • MCLR — управление контактом /MCLR микроконтроллера
  • PGM — используется (с MCLR) для перевод микроконтроллера в режим программирования
  • READ — высокий уровень, когда микроконтроллер должен выполнять операцию чтение
  • IN — данные из микроконтроллера (тоже RB7) в компьютер.

Это все, что выполняет мое программное обеспечение. Оно также определяет, какой сигнал передается через какой разряд порта. Не все сигналы необходимы для программирования PIC. Например, для управления «быстрым и примитивным» («quick-and-dirty») программатором, необходимы только сигналы OUT и CLK. Это происходит потому, что режим программирования устанавливается вручную (подключением /MCLR к 12В) и чтение из микроконтроллера невозможно.

В его существующем состоянии, еще незаконченном, программное обеспечение достаточно работоспособно, чтобы быть полезным (я надеюсь). Я реализовал исполняемый файл для Win32 (FPP.EXE), исполняемый файл для DOS (FPPDOS.EXE) и пакетный файл (FPP.BAT) для запуска FPP.EXE из MPLAB. Когда программное обеспечение для Windows запускается впервые, его необходимо сконфигурировать для используемой аппаратной части программатора нажатием кнопки «Setup».

Запуск FPP под NT/Win2k/XP

FPP работает с портами ввода/вывода напрямую. Это допустимо в Win9x/Me, то недопустимо в Windows NT/2000/XP. Для выполнения своих функций программа ищет и использует специальный драйвер «GIVEIO.SYS». Его можно загрузить из архива журнала Dr Dobb’s: directio.zip (http://www.ddj.com/ftp/1996/1996.05/directio.zip).

Этот драйвер вам необходим только в случае, если у вас Windows NT/2000/XP. Драйвер может быть установлен различными способами, но я использую программу «LOADDRV.EXE» (ее можно взять здесь: http://pages.zoom.co.uk/andyc/loaddrv.zip)

Я использую следующий метод:

  • Скопировать GIVEIO.SYS в каталог (например, SYSTEM32 в системном каталоге Windows)
  • Запустить LOADDRV, указать полный путь к каталогу, в котором находится GIVEIO.SYS и нажать «Install»
  • Перегрузить компьютер
  • Загрузить менеджер устройств (из закладки «Оборудование» системной Панели управления)
  • Выбрать опцию меню для показа скрытых устройств
  • Найти GIVEIO среди драйверов non-plug&play, нажмите правую кнопку и выберите «Свойства»
  • Выберите закладку «Драйвер» в сойствах и выберите «Автомат»
  • Перегрузите компьютер

Использование FPP

Продолжение следует…

Параметры командной строки

Продолжение следует…

Использование FPP вместе с MPLAB

Продолжение следует…

Автор: David Tait

Перевод: Юрий Лысенков (yusoft.kulichki.com)

Более подробное описание функционирования PIC микроконтроллеров серий 16C5x, 16C71, 16C84 на русском языке, программаторы для них Вы найдете на сайте «PIC микроконтроллеры и их программирование».

Как программировать PIC микроконтроллеры или Простой JDM программатор. Простейший программатор JDM для PIC на пассивных компонентах Ntv программатор pic микроконтроллеров jdm совместимый

Так уж сложилось, что знакомство с микроконтроллерами я начал с AVR. PIC микроконтроллеры до поры, до времени — обходил стороной. Но, все же на них тоже ведь есть уникальные, интересные для повторения, конструкции! А ведь эти микроконтроллеры тоже прошивать нужно . Эту статью пишу в основном для себя самого. Чтобы не забыть технологии, как без проблем и бессмысленных потерь времени прошить PIC микроконтроллер.

Для первой схемы — долго и упорно пытался сделать PIC программатор по найденным в интернете схемам — ничего не вышло . Стыдно, но пришлось обращаться к знакомому, чтобы прошил МК. Но ведь это не дело — постоянно бегать по знакомым! Этот же знакомый и посоветовал простенькую схему, работающую от СОМ порта. Но даже и тогда, когда я ее собрал — все равно ничего не получалось . Ведь мало собрать программатор — нужно еще под него настроить программу, которой будем прошивать. А вот как раз это у меня и не получалось. Целая туча инструкций в интернете, и мало какая мне помогла…

Тогда, мне удалось прошить один микроконтроллер. Но так как прошивал в условиях жесткого дефицита времени — не догадался сохранить хотя бы ссылку на инструкцию. И ведь не нашел ее вполедствии. Поэтому повторюсь — пишу статью, чтобы иметь свою собственную инструкцию.

Итак, программатор для PIC микроконтроллеров. Простой, хотя и не 5 проводков, как для AVR микроконтроллеров, который я использую до сих пор. Вот схема:

Вот печатная плата ().

СОМ разъем припаивается штырьками прямо на контактные площадки (главное — не запутаться с нумерацией). Второй ряд штырьков соединяется с платой маленькими перемычками (очень непонятно сказал, ага). Попробую дать фотографию… хоть она и страшная (нету у меня сейчас нормального фотоаппарата ).
Самое злобное в том — что для PIC микроконтроллеров для прошивки нужны 12 вольт. А лучше не 12, а чуточку побольше. Скажем, 13. Или 13.5 (кстати, специалисты — поправьте меня в комментариях, если ошибаюсь. Пожалуйста.). 12 вольт еще можно где-то добыть. А 13 где? Я то выходил из положения просто — брал свежезаряженный литий-полимерный аккумулятор, в котором было 12.6 вольт. Ну или вообще четырехбаночный аккумулятор, с его 16 вольтами (прошил так один PIC — без проблем).

Но я опять отвлекся. Итак — инструкция по прошивке PIC микроконтроллеров. Ищем программу WinPIC800 (к сожалению простая и популярная icprog у меня не заработала,) и настраиваем ее так, как показано на скриншоте.

После этого — открываем файл прошивки, подключаем микроконтроллер и прошиваем.

В качестве элементарного программатора предлагаем вам собрать по авторской схеме JDM совместимый программатор, который мы назвали NTV программатор. Ниже схема NTV программатора (используется розетка DB9; не путать с вилкой).

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

Данный программатор НЕ РАБОТАЕТ при подключении к ноутбукам, т.к. уровни сигналов интерфейса RS-232 (COM-порт) в мобильных системах занижены. Также он может не работать на современных ПК, где аппаратно экономится ток на порту. Так что не обессудьте, собирайте и проверяйте на всех попавшихся под руку компьютерах.

Конструктивно плата программатора вставляется между контактами разъема DB-9, которые подпаиваются к контактным площадкам печатной платы. Ниже рисунок платы и фотография собранного программатора.



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

За основу предлагаемого программатора взята публикация из журнала «Радио» №2, 2004г, «Программирование современных PIC16, PIC12 на PonyProg». Это мой первый программатор, который я использовал для прошивки PIC микросхем дома. Программатор представляет собой упрощенный вариант JDM программатора, оригинальная схема имеет преобразователь RS-232 на TTL в виде микросхемы MAX232, она более универсальна, но ее «на коленке» уже не соберешь. Данная схема не имеет вообще ни одного активного компонента, не содержит дефицитных деталей и очень проста, может быть собрана без применения печатной платы.

Рис. 1: Принципиальная схема программатора.

Описание работы схемы
Схема программатора представлена на рис. 1. Резисторы по цепям CLK (тактирование), DATA (информационный), Upp (напряжение программирования) служат для ограничения протекающего тока. PIC контроллеры защищены от пробоя встроенными стабилитронами, поэтому получается некоторая совместимость TTL и RS-232 логики. В представленной схеме присутствуют диоды VD1, VD2, которые «отбирают» плюсовое напряжение от COM порта относительно 5 контакта и передают его на питание контроллера, благодаря чему в некоторых случаях удается избавиться от дополнительного источника питания.

Налаживание
На практике не всегда случается, что данный программатор заработает без налаживания, с 1-го раза, т.к. работа данной схемы сильно зависит от параметров COM порта. Однако у меня, на двух материнских платах Gigabyte 8IPE1000 и WinFast под XP все заработало сразу. Если Вам лень разбираться с неработающей, более сложной схемой программатора, то стоит попробовать собрать эту. Вот некоторые вещи, которые могут повлиять:

Чем новее мат. плата, тем разработчики уделяют этим портам меньше внимания, потому что эти порты давно стали морально устаревшими. Избавиться от этого можно, купив переходник USB-COM, правда опять же купленное устройство может не подойти. Нужные параметры таковы: изменяемое напряжение должно меняться не менее -10В до +10В (лог. 0 и 1) относительно 5-го контакта разъема. Отдааваемый ток должен быть хотя бы таким, чтобы при подключеннии резистора 2,7 кОм между 5-м контактом и исследуемым контактом напряжение не падало ниже 10В (сам таких плат не встречал). Также порт должен правильно определять напряжения, поступающие от контроллера, при уровне напряжения близкого к 0В, но не больше 2В определяется нуль, и соответственно при выше 2В определяется единица.

Также проблемы могут возникнуть из за программного обеспечения.
Особенно это касается ОС LINUX, т.к. из за наличия эмуляторов типа wine, VirtualBox порты могут работать неправильно, а возможностей от них требуется много. Этих проблем я коснусь подробнее в другой статье.

Зная эти особенности, приступим к налаживанию.
Для этого очень желательно иметь программу ICProg 1.05D.
В меню программы нужно во первых выбрать в настройках соотв. порт (COM1. COM2), выбрать JDM программатор. Затем открыть окно «Hardware Check», в меню «Settings». В этом меню нужно по очереди ставить галочки и вольтметром измерять напряжение на контактах подключенного разъема. Если параметры напряжения не соответствуют норме, то к сожалению, это может быть причиной неработоспособности, тогда придется собирать схему с преобразователем RS-232 TTL. Отметив все галочки, нужно убедиться, что на стабилитроне образуется напряжение питания около 5В. Если напряжения в норме и отсутствуют ошибки монтажа, то все должно сработать. Ставим контроллер в панельку, открываем прошивку, программируем. Галочки типа «Invert data out» включать не надо (все сняты). Также не нужно забывать, что некоторые партии контроллеров могут иметь не совсем стандартные параметры, и их прошить не получается, в таких случаях с данным программатором можно попробовать только снизить напряжение питания с 5В до 3-4В, подключив соотв. стабилитрон, посмотреть контроллер на предмет ошибочного включения режима LVP (низковольтное программирование), как предотвратить, можно прочитать в Интернете для конкретного типа контроллера. Повысить напряжение программирования проблеммного контроллера можно, наверное, только усложнив схему введением усилительного каскада с общим эмиттером, запитанного от дополнительного источника питания.

Теперь подробнее о проблеме с питанием устройства. Программатор тестировался с программами ICProg и консольным picprog под Linux, должен работать с любым, который поддерживает JDM, если подключить дополнительный источник питания (он подключается через резистор 1кОм к стабилитрону, диоды с резисторами в этом случае можно вообще исключить). Дело в том, что алгоритмы управления программаторов у отдельного софта разные, программа ICProg, является самой неприхотливой. Замечено, что в ОС Windows эта программа на неиспользуемом контакте 2 поднимала нужное напряжение питания, эта же программа под эмулятором в Linux на другой мат. плате уже не смогла этого сделать, однако выход был найден, отбирая питание из напряжения программирования. В общем, с ICProg, думаю, можно применять этот программатор без дополнительного питания. С другим софтом это гарантировать врядли получится, например, «родной» из репозиториев Ubuntu picprog без питания просто не определяет программатор, выдавая сообщение «JDM hardware not found». Вероятно, он либо принимает какие-то данные, не подавая напряжение программирования, либо делает это слишком быстро, таким образом что фильтрующий конденсатор еще не успевает зарядиться.

Какие первые шаги должен сделать радиолюбитель, решивший собрать схему на микроконтроллере? Естественно, необходима управляющая программа — «прошивка», а также программатор.

И если с первым пунктом нет проблем — готовую «прошивку» обычно выкладывают авторы схем, то вот с программатором дела обстоят сложнее.

Цена готовых USB-программаторов довольно высока и лучшим решением будет собрать его самостоятельно. Вот схема предлагаемого устройства (картинки кликабельны).

Основная часть.

Панель установки МК.

Исходная схема взята с сайта LabKit.ru с разрешения автора, за что ему большое спасибо. Это так называемый клон фирменного программатора PICkit2. Так как вариант устройства является «облегчённой» копией фирменного PICkit2, то автор назвал свою разработку PICkit-2 Lite , что подчёркивает простоту сборки такого устройства для начинающих радиолюбителей.

Что может программатор? С помощью программатора можно будет прошить большинство легкодоступных и популярных МК серии PIC (PIC16F84A, PIC16F628A, PIC12F629, PIC12F675, PIC16F877A и др.), а также микросхемы памяти EEPROM серии 24LC. Кроме этого программатор может работать в режиме USB-UART преобразователя, имеет часть функций логического анализатора. Особо важная функция, которой обладает программатор — это расчёт калибровочной константы встроенного RC-генератора некоторых МК (например, таких как PIC12F629 и PIC12F675).

Необходимые изменения.

В схеме есть некоторые изменения, которые необходимы для того, чтобы с помощью программатора PICkit-2 Lite была возможность записывать/стирать/считывать данные у микросхем памяти EEPROM серии 24Cxx.

Из изменений, которые были внесены в схему. Добавлено соединение от 6 вывода DD1 (RA4) до 21 вывода ZIF-панели. Вывод AUX используется исключительно для работы с микросхемами EEPROM-памяти 24LС (24C04, 24WC08 и аналоги). По нему передаются данные, поэтому на схеме панели программирования он помечен словом «Data». При программировании микроконтроллеров вывод AUX обычно не используется, хотя он и нужен при программировании МК в режиме LVP.

Также добавлен «подтягивающий» резистор на 2 кОм, который включается между выводом SDA и Vcc микросхем памяти.

Все эти доработки я уже делал на печатной плате, после сборки PICkit-2 Lite по исходной схеме автора.

Микросхемы памяти 24Cxx (24C08 и др.) широко используются в бытовой радиоаппаратуре, и их иногда приходится прошивать, например, при ремонте кинескопных телевизоров. В них память 24Cxx применяется для хранения настроек.

В ЖК-телевизорах применяется уже другой тип памяти (Flash-память). О том, как прошить память ЖК-телевизора я уже рассказывал . Кому интересно, загляните.

В связи с необходимостью работы с микросхемами серии 24Cxx мне и пришлось «допиливать» программатор. Травить новую печатную плату я не стал, просто добавил необходимые элементы на печатной плате. Вот что получилось.

Ядром устройства является микроконтроллер PIC18F2550-I/SP .

Это единственная микросхема в устройстве. МК PIC18F2550 необходимо «прошить». Эта простая операция у многих вызывает ступор, так как возникает так называемая проблема «курицы и яйца». Как её решил я, расскажу чуть позднее.

Список деталей для сборки программатора. В мобильной версии потяните таблицу влево (свайп влево-вправо), чтобы увидеть все её столбцы.

Название Обозначение Номинал/Параметры Марка или тип элемента
Для основной части программатора
Микроконтроллер DD1 8-ми битный микроконтроллер PIC18F2550-I/SP
Биполярные транзисторы VT1, VT2, VT3 КТ3102
VT4 КТ361
Диод VD1 КД522, 1N4148
Диод Шоттки VD2 1N5817
Светодиоды HL1, HL2 любой на 3 вольта, красного и зелёного цвета свечения
Резисторы R1, R2 300 Ом
R3 22 кОм
R4 1 кОм
R5, R6, R12 10 кОм
R7, R8, R14 100 Ом
R9, R10, R15, R16 4,7 кОм
R11 2,7 кОм
R13 100 кОм
Конденсаторы C2 0,1 мк К10-17 (керамические), импортные аналоги
C3 0,47 мк
Электролитические конденсаторы C1 100 мкф * 6,3 в К50-6, импортные аналоги
C4 47 мкф * 16 в
Катушка индуктивности (дроссель) L1 680 мкГн унифицированный типа EC24, CECL или самодельный
Кварцевый резонатор ZQ1 20 МГц
USB-розетка XS1 типа USB-BF
Перемычка XT1 любая типа «джампер»
Для панели установки микроконтроллеров (МК)
ZIF-панель XS1 любая 40-ка контактная ZIF-панель
Резисторы R1 2 кОм МЛТ, МОН (мощностью от 0,125 Вт и выше), импортные аналоги
R2, R3, R4, R5, R6 10 кОм

Теперь немного о деталях и их назначении.

Зелёный светодиод HL1 светится, когда на программатор подано питание, а красный светодиод HL2 излучает в момент передачи данных между компьютером и программатором.

Для придания устройству универсальности и надёжности используется USB-розетка XS1 типа «B» (квадратная). В компьютере же используется USB-розетка типа «А». Поэтому перепутать гнёзда соединительного кабеля невозможно. Также такое решение способствует надёжности устройства. Если кабель придёт в негодность, то его легко заменить новым не прибегая к пайке и монтажным работам.

В качестве дросселя L1 на 680 мкГн лучше применить готовый (например, типов EC24 или CECL). Но если готовое изделие найти не удастся, то дроссель можно изготовить самостоятельно. Для этого нужно намотать 250 — 300 витков провода ПЭЛ-0,1 на сердечник из феррита от дросселя типа CW68. Стоит учесть, что благодаря наличию ШИМ с обратной связью, заботиться о точности номинала индуктивности не стоит.

Напряжение для высоковольтного программирования (Vpp) от +8,5 до 14 вольт создаётся ключевым стабилизатором. В него входят элементы VT1, VD1, L1, C4, R4, R10, R11. С 12 вывода PIC18F2550 на базу VT1 поступают импульсы ШИМ. Обратная связь осуществляется делителем R10, R11.

Чтобы защитить элементы схемы от обратного напряжения с линий программирования в случае использования USB-программатора в режиме внутрисхемного программирования ICSP (In-Circuit Serial Programming) применён диод VD2. VD2 — это диод Шоттки . Его стоит подобрать с падением напряжения на P-N переходе не более 0,45 вольт. Также диод VD2 защищает элементы от обратного напряжения, когда программатор применяется в режиме USB-UART преобразования и логического анализатора.

При использовании программатора исключительно для программирования микроконтроллеров в панели (без применения ICSP), то можно исключить диод VD2 полностью (так сделано у меня) и установить вместо него перемычку.

Компактность устройству придаёт универсальная ZIF-панель (Zero Insertion Force — с нулевым усилием установки).

Благодаря ей можно «зашить» МК практически в любом корпусе DIP.

На схеме «Панель установки микроконтроллера (МК)» указано, как необходимо устанавливать микроконтроллеры с разными корпусами в панель. При установке МК следует обращать внимание на то, чтобы микроконтроллер в панели позиционируется так, чтобы ключ на микросхеме был со стороны фиксирующего рычага ZIF-панели.

Вот так нужно устанавливать 18-ти выводные микроконтроллеры (PIC16F84A, PIC16F628A и др.).

А вот так 8-ми выводные микроконтроллеры (PIC12F675, PIC12F629 и др.).

Если есть нужда прошить микроконтроллер в корпусе для поверхностного монтажа (SOIC), то можно воспользоваться переходником или просто подпаять к микроконтроллеру 5 выводов, которые обычно требуются для программирования (Vpp, Clock, Data, Vcc, GND).

Готовый рисунок печатной платы со всеми изменениями вы найдёте по ссылке в конце статьи. Открыв файл в программе Sprint Layout 5.0 можно с помощью режима «Печать» не только распечатать слой с рисунком печатных проводников, но и просмотреть позиционирование элементов на печатной плате. Обратите внимание на изолированную перемычку, которая связывает 6 вывод DD1 и 21 вывод ZIF-панели. Печатать рисунок платы необходимо в зеркальном отображении .

Изготовить печатную плату можно методом ЛУТ, а также маркером для печатных плат , с помощью цапонлака (так делал я) или «карандашным» методом .

Вот рисунок позиционирования элементов на печатной плате (кликабельно).

При монтаже первым делом необходимо запаять перемычки из медного лужёного провода, затем установить низкопрофильные элементы (резисторы, конденсаторы, кварц, штыревой разъём ISCP), затем транзисторы и запрограммированный МК. Последним шагом будет установка ZIF-панели, USB-розетки и запайка провода в изоляции (перемычки).

«Прошивка» микроконтроллера PIC18F2550.

Файл «прошивки» — PK2V023200.hex необходимо записать в память МК PIC18F2550I-SP при помощи любого программатора, который поддерживает PIC микроконтроллеры (например, Extra-PIC). Я воспользовался JDM Programmator’ом JONIC PROG и программой WinPic800 .

Залить «прошивку» в МК PIC18F2550 можно и с помощью всё того же фирменного программатора PICkit2 или его новой версии PICkit3. Естественно, сделать это можно и самодельным PICkit-2 Lite, если кто-либо из друзей успел собрать его раньше вас:).

Также стоит знать, что «прошивка» микроконтроллера PIC18F2550-I/SP (файл PK2V023200.hex ) записывается при установке программы PICkit 2 Programmer в папку вместе с файлами самой программы. Примерный путь расположения файла PK2V023200.hex — «C:\Program Files (x86)\Microchip\PICkit 2 v2\PK2V023200.hex» . У тех, у кого на ПК установлена 32-битная версия Windows, путь расположения будет другим: «C:\Program Files\Microchip\PICkit 2 v2\PK2V023200.hex» .

Ну, а если разрешить проблему «курицы и яйца» не удалось предложенными способами, то можно купить уже готовый программатор PICkit3 на сайте AliExpress. Там он стоит гораздо дешевле. О том, как покупать детали и электронные наборы на AliExpress я писал .

Обновление «прошивки» программатора.

Прогресс не стоит на месте и время от времени компания Microchip выпускает обновления для своего ПО, в том числе и для программатора PICkit2, PICkit3. Естественно, и мы можем обновить управляющую программу своего самодельного PICkit-2 Lite. Для этого понадобится программа PICkit2 Programmer. Что это такое и как пользоваться — чуть позднее. А пока пару слов о том, что нужно сделать, чтобы обновить «прошивку».

Для обновления ПО программатора необходимо замкнуть перемычку XT1 на программаторе, когда он отключен от компьютера. Затем подключить программатор к ПК и запустить PICkit2 Programmer. При замкнутой XT1 активируется режим bootloader для загрузки новой версии прошивки. Затем в PICkit2 Programmer через меню «Tools» — «Download PICkit 2 Operation System» открываем заранее подготовленный hex-файл обновлённой прошивки. Далее произойдёт процесс обновления ПО программатора.

После обновления нужно отключить программатор от ПК и снять перемычку XT1. В обычном режиме перемычка разомкнута . Узнать версию ПО программатора можно через меню «Help» — «About» в программе PICkit2 Programmer.

Это всё по техническим моментам. А теперь о софте.

Работа с программатором. Программа PICkit2 Programmer.

Для работы с USB-программатором нам потребуется установить на компьютер программу PICkit2 Programmer. Это специальная программа обладает простым интерфейсом, легко устанавливается и не требует особой настройки. Стоит отметить, что работать с программатором можно и с помощью среды разработки MPLAB IDE, но для того, чтобы прошить/стереть/считать МК достаточно простой программы — PICkit2 Programmer. Рекомендую.

После установки программы PICkit2 Programmer подключаем к компьютеру собранный USB-программатор. При этом засветится зелёный светодиод («питание»), а операционная система опознает устройство как «PICkit2 Microcontroller Programmer» и установит драйвера.

Запускаем программу PICkit2 Programmer. В окне программы должна отобразиться надпись.

Если программатор не подключен, то в окне программы отобразится страшная надпись и краткие инструкции «Что делать?» на английском.

Если же программатор подключить к компьютеру с установленным МК, то программа при запуске определить его и сообщит нам об этом в окне PICkit2 Programmer.

Поздравляю! Первый шаг сделан. А о том, как пользоваться программой PICkit2 Programmer, я рассказал в отдельной статье. Следующий шаг .

Необходимые файлы:

Программатор JDM я использовал для контроллеров PIC16F676, PIC16F630 и PIC16F629 . От изначального, мой вариант отличается тем, что напряжение программирования Vpp можно подать раньше напряжения питания Vdd для перепрограммирования контроллеров. Для этой цели служит верхний по схеме транзистор. Он открывается когда напряжение на контакте 3 розетки DB9F достигнет примерно 8 В относительно контакта 5 розетки или 13 В относительно минуса контроллера Vss . Выключатель Vdd_Vpp в замкнутом состоянии позволяет напряжению питания Vdd появиться на выводах контроллера ранее напряжения программирования Vpp .

Схема программатора JDM

Для программирования будет использоваться COM-порт, у которого будут задействованы следующие выводы — 3, 4, 5, 7 и 8. В схеме заложена возможность программирования микросхем памяти серии 24сХХ . Для этого в колодке DIP16 используются нижние 8 контактов, первый контакт микросхемы вставляется в пятый конакт колодки. Джампер J1 позволяет отключить защиту от записи.

Нижний по схеме транзистор как и ранее используется для сдвига напряжений так как плюс питания контроллера Vdd соединяется с контактом 5 розетки — общим проводом порта, а минус питания Vss получается с помощью диодов, подключенных к контактам 3 и 7 розетки, и стабилитрона.

Транзисторы в JDM программаторе использовал 2SC945 и BC548 , диоды — 1N4148 . Конденсатор u1 надо расположить как можно ближе к выводам питания микроконтроллера. Резистор 1k необязателен, если установлены резистор 10k и джампер J1 на колодке DIP16.

Этот программатор успешно работает с программами и

Похожие статьи

© 2022 kvartiraidoma.ru — Дом и быт. Психология. Финансы. Еда и напитки. Интернет. Компьютеры Вверх ↑

VM111 PIC Программатор Инструкция по эксплуатации

ME-mikroPROG for PIC, dspic and PIC32

ME-mikroPROG for PIC, dspic and PIC32 mikroprog for PIC это быстрый и надежный программатор с ICD поддержкой. Специально разработанная прошивка позволяет программировать все микроконтроллеры фирмы Microchip:

Подробнее

ME-ARM FLASH. Программатор активен

ME-ARM FLASH Наряду с дополнительным программным обеспечением, ARMflash программатор представляет собой незаменимый инструмент для всех, кто работает с ARM микроконтроллерами. С помощью этого программатора,

Подробнее

SAMSON LINK ХАРАКТЕРИСТИКИ

SAMSON LINK ХАРАКТЕРИСТИКИ Напряжение питания… 4-18 В (типовое 4.2 В) Потребление…20 ма Выходы… 1, с открытым коллектором, до 3 А Входы…4 Сопротивление выносных резисторов целостности шлейфа…..

Подробнее

Техническое описание.

Демонстрационно-отладочная плата Eval12. Техническое описание. 1. Общие положения. 1.1. Демонстрационно-отладочная плата Eval12 (далее Eval12) предназначена для: 1.1.1. Демонстрации функционирования микроконтроллеров

Подробнее

NLProg. Загрузчик программ NLProg Для модулей серий MC, NC, NL, NS Программное обеспечение. Руководство пользователя

НИЛ АП, Тел.: (8634) 477-040, факс: 477-041, e-mail: [email protected], www.rlda.ru Загрузчик программ NLProg Для модулей серий MC, NC, NL, NS Программное обеспечение NLProg Руководство пользователя Одной проблемой

Подробнее

GATE-VIZIT Commander Версия

СКУД GATE Программное обеспечение GATE-VIZIT Commander Версия 1.22.6 Руководство оператора Санкт-Петербург 2016 Оглавление 1. ВВЕДЕНИЕ… 3 1.1 НАЗНАЧЕНИЕ ПРОГРАММЫ… 3 1.2 СТРУКТУРА СИСТЕМЫ… 3 2. УСТАНОВКА

Подробнее

4-канальный USB самописец / регистратор

4-канальный USB самописец / регистратор PCS10 / K8047 Инструкция по эксплуатации a. Общие характеристики Спецификация Оборудование: Подключение или питание от USB порта 4 DC входных канала Входное сопротивление

Подробнее

ПК-интерфейсы NI-A01-USB, NIP-A01

Интегрированная система безопасности ParsecNET 2 ПК-интерфейсы NI-A01-USB, NIP-A01 Паспорт и инструкция по установке Версия 2.1 Назначение Назначение ПК-интерфейсы предназначены для использования в системе

Подробнее

Отладочная плата LDM-89C513xA

Отладочная плата LDM-89C513xA UNITING THE BEST LDM SYSTEMS Отладочная плата представляет собой печатную плату размером 108х71х15 мм и макетным полем 71х48 мм (шаг отверстий 2.54 мм) с установленным на

Подробнее

Отладочный комплект AN231K04-DVLP3

Александр Щерба [email protected] Описание Отладочный комплект AN23K04-DVLP3 Отладочная плата AN23K04-DVLP3 простая к использованию платформа, позволяющая быстро внедрить и протестировать аналоговую

Подробнее

Программатор CAN Телематика

Программатор CAN Телематика Содержание Описание… 3 Установка программы… 4 Начало работы… 5 Обновление прошивки… 8 Справочная информация… 11 Программирование CAN-интерфейса… 12 Горячие клавиши…

Подробнее

ПК-интерфейсы NI-A01-USB

Интегрированная система безопасности ParsecNET 2 ПК-интерфейсы NI-A01-USB Паспорт и инструкция по установке Версия 1.3 Назначение Назначение ПК-интерфейс NI-A01-USB предназначен для использования в системе

Подробнее

USB-программатор: быстрый старт

USB-программатор: быстрый старт 1 Настройка программного обеспечения Windows 1.1 Драйвер для подключения USB-программатора находится на сайте www.tiras.ua в разделе «Управление и программирование», архивный

Подробнее

КУХОННЫЙ ПЕРЕДАТЧИК RECS

КУХОННЫЙ ПЕРЕДАТЧИК RECS Руководство пользователя Перед включением передатчика в сеть ОБЯЗАТЕЛЬНО подключите к передатчику антенну! При несоблюдении этого правила, передатчик выйдет из строя! г. Донецк,

Подробнее

GATE-VIZIT Commander Версия

СКУД GATE Программное обеспечение GATE-VIZIT Commander Версия 1.22.9 Руководство оператора Санкт-Петербург 2017 Оглавление 1. ВВЕДЕНИЕ… 3 1.1 НАЗНАЧЕНИЕ ПРОГРАММЫ… 3 1.2 СТРУКТУРА СИСТЕМЫ… 3 2. УСТАНОВКА

Подробнее

Менеджер контроллеров Integrity

Менеджер контроллеров Integrity РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ Нижний Новгород 2008 г. Оглавление Введение…3 1 Настройка каналов связи…4 1.1 Адрес контроллера…5 1.2 Выбор канала связи для работы…5 1.3

Подробнее

АМПЕРМЕТРЫ И ВОЛЬТМЕТРЫ Ф АД, Ф АД, Ф АД Ф АД, Ф АД, Ф АД Ф АД, Ф АД и Ф АД

Утвержден 05755097.00005-01-34-01-ЛУ АМПЕРМЕТРЫ И ВОЛЬТМЕТРЫ Ф1761.2-АД, Ф1761.4-АД, Ф1761.5-АД Ф1761.6-АД, Ф1762.3-АД, Ф1762.5-АД Ф1762.6-АД, Ф1762.7-АД и Ф1762.8-АД ПРОГРАММА НАСТРОЙКИ ПРИБОРОВ Руководство

Подробнее

Техническое описание.

Демонстрационно-отладочная плата Eval15. Техническое описание. 1. Общие положения. 1.1. Демонстрационно-отладочная плата Eval15 (далее Eval15) предназначена для: 1.1.1. Демонстрации функционирования микроконтроллеров

Подробнее

БЛОК УПРАВЛЕНИЯ GSM-МОДУЛЬ

БЛОК УПРАВЛЕНИЯ GSM-МОДУЛЬ НАЗНАЧЕНИЕ УСТРОЙСТВА 2 ПРИНЦИП РАБОТЫ БЛОКА УПРАВЛЕНИЯ 2 ТЕХНИЧЕСКИЕ ХАРАКТЕРИСТИКИ 2 КОМПЛЕКТ ПОСТАВКИ 3 ОПИСАНИЕ РАБОТЫ БЛОКА УПРАВЛЕНИЯ 3 СХЕМА ПОДКЛЮЧЕНИЯ GSM-МОДУЛЯ 3 ОПИСАНИЕ

Подробнее

Содержание АВЛГ ИН1

Содержание Программирование микроконтроллера Методика проверки на соответствие электрическим параметрам Приложение 1. Модуль вычислителя. Схема электрическая принципиальная. Приложение 2. Модуль вычислителя.

Подробнее

PW-5000 Основная плата контроллера

PW-5000 Основная плата контроллера Инструкция по установке PW5KIC Security House Export Основная плата контроллера PW-5000 Введение Основная плата контроллера PW5KIC (рис. ) является главным элементом

Подробнее

Расположение модулей на плате:

ME-EASYARM V6 Отладочная плата EasyARM v6 представляет собой среду разработки для программирования и экспериментов с ARM микроконтроллерами. На плате предоставляются многочисленные модули, такие как графический

Подробнее

РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ

HotLiner РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ Регистратор температуры воздуха TML-30 Версия 20171219.01 ВВЕДЕНИЕ Прочитайте данную инструкцию перед началом использования устройства. Это поможет Вам узнать о принципах

Подробнее

Технические характеристики

Рис. 1. Обозначения разъемов сетевого модуля контроля доступа ibc-01 Технические характеристики Параметр Значение Электрические 1 Напряжение питания 10 15 В 2 Номинальный потребляемый ток (при напряжении

Подробнее

ME-mikroPROG for AVR

ME-mikroPROG for AVR mikroprog для AVR — это быстрый USB программатор, который подходит для программирования микроконтроллеров семейства AVR от Atmel. Отличная производительность, простота в эксплуатации

Подробнее

ESM Test Программное обеспечение

ESM Test Программное обеспечение Руководство пользователя ESM. 422160.003 ПО Введение Оглавление Введение… 3 1 Установка ПО… 4 2 Подключение к ESM… 5 3 Работа с ПО… 10 3.1 Вкладка «Измерения»…

Подробнее

РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ

Пакет программного обеспечения SCHER-KHAN OpWin 2.0 РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ СОДЕРЖАНИЕ: 1. Общие сведения. 1.1. Назначение. 1.2. Системные требования. 2. Подготовка к работе. 2.1. Установка программного

Подробнее

Сторожевой таймер «САПФИР WD SERVER» v.3.0.0

Сторожевой таймер «САПФИР WD SERVER» v.3.0.0 Екатеринбург-2006 www.sapfir.biz Полное или частичное воспроизведение материала допускается только с письменного согласия 1. Назначение Сторожевой таймер САПФИР-WD

Подробнее

Программа «Настройка КСПД-5»

Утверждаю Генеральный директор ООО «ТБН энергосервис» В.Ю.Теплышев 2008 г. Программа «Настройка КСПД-5» Руководство пользователя 2008 Руководство пользователя программы «Настройка КСПД-5» 2 Назначение

Подробнее

1 Установка mega macs PC

Чтобы получать от фирмы Hella Gutmann все имеющиеся данные о том или ином автомобиле, необходимо обеспечить постоянное online-соединение прибора. Чтобы минимизировать расходы на соединение, Hella Gutmann

Подробнее

Модуль УВВ Элсима-DA01

Программирование контроллера Элсима Модуль УВВ Элсима-DA01 КРАТКОЕ РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ Страниц 30 январь 2019 Литера 2 Краткое руководство пользователя СОДЕРЖАНИЕ СПИСОК ТЕРМИНОВ И СОКРАЩЕНИЙ… 3

Подробнее

Программа-конфигуратор счетчиков АИСТ

ООО «АЙСИБИКОМ» Программа-конфигуратор счетчиков АИСТ РУКОВОДСТВО ПО ЭКСПЛУАТАЦИИ Москва 2016 СОДЕРЖАНИЕ 1. Введение… 3 2. Установка и запуск программы… 3 3. Порядок подключения по интерфейсу RS-485…

Подробнее

Модуль УВВ Элсима-А01

Программирование контроллера Элсима КРАТКОЕ РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ Страниц 29 январь 2019 Литера 2 СОДЕРЖАНИЕ СПИСОК ТЕРМИНОВ И СОКРАЩЕНИЙ… 3 ИНФОРМАЦИЯ О ДОКУМЕНТЕ… 4 1 УСТАНОВКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ…

Подробнее

ME-mikroBoard UNI DS6 ARM 64-pin

ME-mikroBoard UNI DS6 ARM 64-pin 1. Общая информация Плата MikroBoard for ARM 64-pin в первую очередь предназначена для соединения с отладочной системой EasyARM v6, но также может быть использована в качестве

Подробнее

Модуль передачи данных МПД

Модуль передачи данных МПД Инструкция по быстрой установке и запуску РБЯК.423140.076 И1 Редакция 2 ЗАО «НПФ Теплоком» Россия, 194044, Санкт-Петербург, Выборгская наб., 45 с.2 Инструкция по быстрой установке

Подробнее

AS-kit Hardware. Плата AS-sam7X версия 2

Плата версия 2 Плата представляет собой контроллер на базе микросхемы AT91SAM7X256, ядро ARM7, с набором периферийных устройств. Плата предназначена для разработки (макетирования) проектов на базе ARM7-

Подробнее

АДАПТЕР АРХ. Паспорт ПС СОДЕРЖАНИЕ

АДАПТЕР АРХ Паспорт ПС 4218-017-40637960-09 СОДЕРЖАНИЕ 1. Назначение… 2 2. Состав изделия… 2 3. Технические данные… 2 4. Устройство адаптера… 2 5. Порядок подключения и работа… 3 5.1. Включение

Подробнее

PIC программатор микроконтроллеров фирмы MicroChip

В настоящее время появилось много принципиальных схем с использованием различных микроконтроллеров, в том числе и микроконтроллеров PIC  фирмы MicroChip. Это позволило получить достаточно функциональные  устройства, несмотря на их простоту.

Но работа микроконтроллера невозможна без программы управления, которую необходимо записать. В данной статье мы рассмотрим универсальный программатор PIC — EXTRA-PIC позволяющий программировать PIC контроллеры и память EEPROM I2C через COM порт либо через переходник COM-USB.

Список поддерживаемых микросхем, при использовании с программой IC-PROG v1.05D:

PIC-контроллеры фирмы Microchip: PIC12C508, PIC12C508A, PIC12C509, PIC12C509A, PIC12CE518, PIC12CE519, PIC12C671, PIC12C672, PIC12CE673, PIC12CE674, PIC12F629, PIC12F675, PIC16C433, PIC16C61, PIC16C62A, PIC16C62B, PIC16C63, PIC16C63A, PIC16C64A, PIC16C65A, PIC16C65B, PIC16C66, PIC16C67, PIC16C71, PIC16C72, PIC16C72A, PIC16C73A, PIC16C73B, PIC16C74A, PIC16C74B, PIC16C76, PIC16C77, PIC16F72, PIC16F73, PIC16F74, PIC16F76, PIC16F77, PIC16C84, PIC16F83, PIC16F84, PIC16F84A, PIC16F88, PIC16C505*, PIC16C620, PIC16C620A, PIC16C621, PIC16C621A, PIC16C622, PIC16C622A, PIC16CE623, PIC16CE624, PIC16CE625, PIC16F627, PIC16F628, PIC16F628A, PIC16F630*, PIC16F648A, PIC16F676*, PIC16C710, PIC16C711, PIC16C712, PIC16C715, PIC16C716, PIC16C717, PIC16C745, PIC16C765, PIC16C770*, PIC16C771*, PIC16C773, PIC16C774, PIC16C781*, PIC16C782*, PIC16F818, PIC16F819, PIC16F870, PIC16F871, PIC16F872, PIC16F873, PIC16F873A, PIC16F874, PIC16F874A, PIC16F876, PIC16F876A, PIC16F877, PIC16F877A, PIC16C923*, PIC16C924*, PIC18F242, PIC18F248, PIC18F252, PIC18F258, PIC18F442, PIC18F448, PIC18F452, PIC18F458, PIC18F1220, PIC18F1320, PIC18F2320, PIC18F4320, PIC18F4539, PIC18F6620*, PIC18F6720*, PIC18F8620*, PIC18F8720*

Примечание: микроконтроллеры, которые отмечены  звездочкой (*) необходимо подключить к программатору   через ICSP разъем.

Последовательная память EEPROM I2C (IIC): X24C01, 24C01A, 24C02, 24C04, 24C08, 24C16, 24C32, 24C64, AT24C128, M24C128, AT24C256, M24C256, AT24C512.

Непосредственно сама схема программатора EXTRA-PIC:

 

Лабораторный блок питания 30 В / 10 А

В качестве источника питания можно использовать стабилизатор напряжения построенный на микросхеме LM317.

Программатор (21,1 KiB, скачано: 11 718)

Программируемый контроллер подключается через разъем X3. Ниже приведена распиновка выводов программирования под разные контроллеры:

А теперь инструкция как запрограммировать микроконтроллер.

В виде примера возьмем микроконтроллер PIC16F876A.

Соберите программатор   и подготовьте блок питания с напряжением на выходе  не менее 15В

Программа icpr105d (557,3 KiB, скачано: 9 425)

Распакуйте программу в отдельный каталог. В созданном каталоге должны находиться три файла:

icprog.exe — файл оболочки программатора;

icprog.sys — драйвер, необходимый для работы под Windows NT, 2000, XP. Этот файл всегда должен находиться в каталоге программы;

icprog.chm — файл помощи (Help file).

Настройка программы IC-PROG v1.05D.

Для Windows95, 98, ME Для Windows NT, 2000, XP
(Только для Windows XP ):
Правой кнопкой щёлкните на файле icprog.exe.
«Свойства » >> вкладка «Совместимость » >>
Установите «галочку» на «Запустить программу в режиме совместимости с: » >> выберите «Windows 2000 «.
  1. Запустите файл icprog.exe .
  2. Выберите «Settings » >> «Options » >> вкладку «Language » >> установите язык «Russian » и нажмите «Ok «.
  3. Согласитесь с утверждением «You need to restart IC-Prog now » (нажмите «Ok «).
  4. Оболочка программатора перезапустится.
«Настройки » >> «Программатор «.Проверьте установки, выберите используемый вами COM-порт, нажмите «Ok «.
Далее, «Настройки » >> «Опции » >> выберите вкладку «Общие » >> установите «галочку» на пункте «Вкл. NT/2000/XP драйвер » >> Нажмите «Ok » >>
если драйвер до этого не был установлен в системе, в появившемся окне «Confirm » нажмите «Ok «. Драйвер установится, и оболочка программатора перезапустится.
Примечание: Для очень «быстрых» компьютеров возможно потребуется увеличить параметр «Задержка Ввода/Вывода «. Увеличение этого параметра увеличивает надёжность программирования, однако, увеличивается и время, затрачиваемое на программирование микросхемы.
«Настройки » >> «Опции » >> выберите вкладку «I2C » >> установите «галочки» на пунктах:»Включить MCLR как VCC » и «Включить запись блоками «. Нажмите «Ok «.
Программа готова к работе.

Установите микросхему в панель программатора, соблюдая положение ключа.

Подключите шнур удлинителя, включите питание.

Запустите программу IC-PROG.

В выпадающем списке выберите контроллер PIC16F876A.

Если у вас нет файла с прошивкой — подготовьте его:

откройте стандартную программу «Блокнот»;

вставьте в документ текст прошивки;

сохраните под любым именем, например, prohivka.txt (расширение *.txt или *.hex).

Далее в IC-PROG Файл >> Открыть файл (! не путать с Открыть файл данных ) >> найти наш файл с прошивкой (если у нас файл с расширением *.txt , то в типе файлов выберите Any File *.* ). Окошко «Программного кода» должно заполнится информацией.

Нажимаем кнопку «Программировать микросхему»   (загорается красный светодиод).

Ожидаем завершения программирования (около 30 сек.).

Для контроля нажимаем «Сравнить микросхему с буфером».

Универсальный программатор для микроконтроллеров avr и pic

Автор: Александр Елисеев

E-mail: ase (at) takas.lt
(замените (at) на @)

  • Файл программы (zip архив 4,6 МB)

Бесплатные программаторы, которые можно найти в интернете безнадежно отстают от разработчиков чипов и не предлагают способов быстрой модернизации для программирования новых микроконтроллеров.

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

Программатор характеризуется тем, что:

Рис.1. Окно програмной оболочки

Программирование PIC-ов

Рис.1. Схема программатора PIC-ов

Особой оригинальностью не отличается поскольку в основном повторяет схему из известного программатора PonyProg. Следует уделять внимание уровню сигнала на выводе CLOCK чипа, он не должен быть меньше 4 В при высоком уровне, что может случиться при неправильном подборе стабилитрона

Программирование AVR-ов

Рис.2. Схема программирования AVR-ов

Здесь показан способ как организовать программирование AT90S8535 прямо на плате с помощью RS232 и небольшого аппаратного дополнения. Микросхема DD1 служит для изоляции сигналов программирования от чипа в режиме работы. Разводка микросхемы показана в колодке c расположением контактов типа PGA44. Испытания показали, что большинство микросхем AT90S8535 и AT90S8515 можно программировать при частоте кварца 11,0592 МГц.

Структура конфигурационных файлов

Конфигурационные файлы имеют расширение chp и должны находиться в директории программы. Программа при запуске производит поиск в своей директории всех конфигурационных файлов и их объединение во внутреннем буфере. Идея таких файлов взята из программатора ComPic и немного изменена. Каждому чипу соответствует своя секция. Возможность наследования свойств не предусмотренна, так как это ухудшает прозрачность описания.

Пример структуры конфигурационного файла для PIC16F84

[Chip PIC16F84_ICP] Секция чипа c уникальным названием чипа
Level1=MicroChip Название пункта меню верхнего уровня
Level2=PIC Название пункта меню 2-го уровня вложения
ItemCaption=PIC16F84 Название конечного пункта меню
Init > Название класса окна-фрейма программирующего данное семейство чипов
по определенному протоколу
Названия классов предопределены в программе: TfrmMICROCHIP_PIC_ICP и TfrmATMEL_AVR_ICP
Здесь идет определение программируемых областей, в пунктах Content разные параметры отделяются символом «|»
Area_1_Content= Code | 0..3FFh (1KW) Название и описание области программирования
Area_1_data=CODE, 0, $3FF, 14 Данные связанные с областью программирования — уникальный идентификатор, начальный адрес, конечный адрес, размер слова данных в битах
Area_2_Content=EEPROM | 0..3Fh (64B)
Area_2_Data=EEPROM,0,$3F,8
Area_3_Content=Configuration word | CP, PWRTE, WDTE, FOSC
Area_3_Data=CONFIG,$2007,$2007,14
Area_4_Content=ID Locations | 2000H-2003H
Area_4_Data=ID,$2000,$2003,8
и т. д. для других областей
Здесь идет определение установок для некоторых областей программирования определенных выше
Param_1_Content=CP | CP | CONFIG Определение установки с названием CP, с уникальным идентификатором CP из области CONFIG. По умолчанию установка принимает значение с номером 1 в суффиксе идентификатора
Описание возможных значений установки
Param_1_Choice1=1 — Code protection OFF Название 1-го значения установки CP
Param_1_Choice1_icon=4 Номер во внутреннем списке отображаемой иконы для 1-го значения
Param_1_Choice1_data=1111111111xxxx маска 1-го значения
Param_1_Choice2=0 — Code protection ON
Param_1_Choice2_icon=3
Param_1_Choice2_data=0000000000xxxx
Описание 2-го значения установки
Param_2_Content=PWRTE | PWRTE | CONFIG
Param_2_Choice1=1 — Power up timer disabled
Param_2_Choice1_icon=2
Param_2_Choice1_data=xxxxxxxxxx1xxx
Param_2_Choice2=0 — Power up timer enabled
Param_2_Choice2_icon=1
Param_2_Choice2_data=xxxxxxxxxx0xxx
Описание следующей установки и ее значений
Param_3_Content=WDTE | WDTE | CONFIG
Param_3_Choice1=1 — WDT enabled
Param_3_Choice1_icon=1
Param_3_Choice1_data=xxxxxxxxxxx1xx
Param_3_Choice2=0 — WDT disabled
Param_3_Choice2_icon=2
Param_3_Choice2_data=xxxxxxxxxxx0xx

Param_4_Content=Oscilator | FOSC | CONFIG
Param_4_Choice1=RC oscillator (11)
Param_4_Choice1_icon=8
Param_4_Choice1_data=xxxxxxxxxxxx11
Param_4_Choice2=HS oscillator (10)
Param_4_Choice2_icon=8
Param_4_Choice2_data=xxxxxxxxxxxx10
Param_4_Choice3=XT oscillator (01)
Param_4_Choice3_icon=8
Param_4_Choice3_data=xxxxxxxxxxxx01
Param_4_Choice4=LP oscillator (00)
Param_4_Choice4_icon=8
Param_4_Choice4_data=xxxxxxxxxxxx00

Param_5_Content=ID | ID | ID
Param_5_Choice1=0000

Введение:

Данный программатор предназначен для программирования различных микроконтроллеров, а также прошивания микросхем SPI Flash и I2C Eeprom и т.п. Подробный список поддерживаемых микросхем спрашивайте в теме поддержки, так как возможности программатора постоянно расширяются.

Этот программатор является развитием программатора, описанного ранее вот тут. Работа программатора описана там же и сильно не изменилась, добавились лишь поддерживаемые микросхемы, а также функции чтения FLASH и EEPROM.

Также данный программатор может работать как имитатор и анализатор последовательных протоколов — подробно об этом написано в [6].

Программатор очень прост и не требует каких-то дополнительных прошиваний. Спаял – и всё работает, так как основную функцию выполняет компьютер. Программатор основан на микросхеме FT232R, которая позволяет управлять пинами в режиме битбэнг. Для того, чтоб прошивание занимало как можно меньшее время, реализована пакетная передача данных.

Программатор не имеет выходного буфера, потому что FT232R позволяет запитывать свои порты внешним напряжением и переводить их в состояние Z (3тье состояние) после программирования, поэтому он не конфликтует с периферией контроллера.

Внешний вид программатора показан на рисунке 1.

Программатор имеет два разъёма для внутрисхемного программирования: AVR-ISP и PIC-ISP. Из названия уже понятно назначение разъёмов. Также программатор имеет панельку для программирования SPI Flash и I2C Eeprom. С одной стороны платы – под микросхемы в DIP-8, с другой – SO-8 (на прищепку). Также имеется 2 джампера: один для изменения режимов питания программатора и программируемой микросхемы, другой переключает режим выхода 12В (программирование PIC контроллеров или работа в режиме анализатора).

Программная оболочка.

Интерфейс программатора интуитивно понятен, к тому же кнопочки на русском, довольно удобно. Внешний вид программы показан на рисунке 2. Имеется табло с Логом операций (справа) и табло с закладками для программирования различных чипов (слева). Фьюзы подписаны согласно даташитам, галочка означает ‛1“ .

Работа с чипами AVR:

На рисунке 2 показана работа программатора с чипом ATmega48.

Для начала работы необходимо нажать кнопку «Read Signature», чтобы программатор определил чип. После этого в рабочем окне программы активизируются доступные кнопки и названия доступных фъюзов. Совместно с этим программатор производит чтение фьюзов и выставляет галочки.

Чтобы прошить флеш необходимо нажать кнопку «Файл Flash» и выбрать файл. Файл загружается в буфер, и под кнопкой «Файл Flash» будет подписана информация о нём и доступном объёме флэши чипа.

Прошивание Еепром происходит подобным способом.

Прошивка защиты и фьюзы:

Все фьюзы прописаны в соответствии с даташитами на контроллеры. Галочка в поле выбранного фьюза означает «1» — именно то значение «1», которое указано в даташите. Например, на рисунке.2 изображены фьюзы, считанные с контроллера ATmega48 согласно даташиту Tabl.8-1 (см. рисунок 3). Фьюзы CKSEL = 0010. означает, что тактирование чипа происходит от внутреннего RC генератора.

Фъюзы защиты (LockBit) прописываются согласно даташиту. В программной оболочке имеются для задания защиты 3 выпадающих меню. Первые два задают лок биты BLB01,02 второе BLB11,12, а третье лок биты LB.

С третьим окном всё понятно и подписано. Там 3 режима: «нет защиты», «защита от записи» и «защита записи и чтения».

Два других окна дают возможность дополнительной защиты отдельных областей памяти. Для них лучше смотреть назначение в даташите. Каждое окно даёт 4 дополнительных режима.

Если при прошивании контроллера возникла проблема с тактированием чипа, то возможно тактирование его от программатора. Для этого на разъёме AVR-ISP пин.3 выведен сигнал Cbus.4, на который при желании можно вывести тактовую частоту 6,12,24 или 48 Мгц. Это делается в закладке «Настройка». Частота будет выдаваться постоянно, вне зависимости от режимов программирования и работы программы.

Работа с PIC-контроллерами:

Рабочее окно программы при работе с PICами показано на рисунке 4.

В отличие от фирмы Atmel фирма Microchip не ищет лёгких путей, поэтому программирование PICов очень наворочено.

Во-первых, MpLab создаёт при компиляции файл, в котором прописаны и Флэш, и Еепром, и Фъюзы, и ID, и защита. Всё намешано. Работа с такими файлами осуществляется 3мя кнопками: «Файл»-открытие файла дампа; «Считать дамп» — чтение и сохранение дампа; «Прошить дамп» — прошивание всего дампа.

Все загруженные данные (фъюзы и ID и т.п.) отображаются в соответствующих областях. Перед прошивкой их можно подкорректировать.

Также можно прошить каждую область отдельно. Например, прочитать и прошить фъюзы.

Перед работой программатора (если программатор только собран или после замены FT) лучше всего зайти в меню «Настройка» и настроить работу FT на своё усмотрение или по умолчанию.

Кратенько про настройки:

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

1. вывод тактовой частоты Cbus4 – этот выход заведён на разъём XT2-3. Служит, например, для тактирования чипов. Может иметь значение 6,12,24,48 или «выключен».

2. функции красного и зелёного светодиода не изменяются — на данный момент эти функции не реализованы.

3. Ограничение тока портов — тут можно задать ограничение тока, чтобы случайно не испортить программатор или подключаемую к нему схему. Этот параметр устанавливает ограничение тока не отдельных пинов, а всех сразу, то есть это суммарный ток всех портов.

4. Версия USB. Этот параметр больше зависит от вашего компьютера и на работу программатора особо не влияет.

Аппаратная часть

Схема программатора приведена на рисунке 6. Также имеется упрощённая схема программатора: ниже в архиве со схемой лежит версия Lite. Отличается простотой, содержит в себе 5 резисторов и 1 микросхему, но поддерживает исключительно чипы AVR.

Для программирования чипов ATMEL а также микросхем SpiFlash всё просто. FT соединяется с ними через токоограничивающие резисторы 560 Ом. С ними никаких хитростей не требуется, FT после программирования отдаёт ноги и не мешает работе устройства.

Для программирования I2C Eeprom пришлось поставить транзистор, поскольку шина I2C имеет сигнал, направление которого меняется по ходу работы микросхемы, а это сделать на FT232R невозможно — переключение вход/выход требует остановки передачи. Для этого реализовано разделение сигналов на транзисторе VT2 и подтягивающем резисторе 1K. После него BIT3 является выходным, а BIT1 входным (когда BIT3=0). Таким образом, мы можем и передавать данные, и принимать в процессе.

Для программирования PIC контроллеров кроме реализованной уже шины I2C, необходимо было реализовать 12В выход (сигнал MCLR). Для этого реализован DC-DC преобразователь на микросхеме MC34063 — он преобразует 5В от USB в постоянное 12В.

В качестве коммутатора 12В сигнала использован драйвер IR2102, так как он быстродействующий и вполне подходит по току, да и по размерам.

Поскольку MCLR должен меняться не от 0, а от Vcc, соответственно, пришлось разделить питание диодами VD2, VD3.

Как-то раз на нашем форуме возникла темка, чем бы залить чипик ATMEGA32. Темка эта в итоге разрослась и вылилась в схему универсального программатора, которым можно через последовательный порт компьютера программировать не только эту самую атмегу, но и другие контроллеры AVR, и контроллеры PIC, и микросхемы памяти EEPROM. Как всегда в схеме использован различный радиохлам (в данном случае снятый со старых сломанных материнок).

Помимо универсальности, несомненным плюсом этого программатора является оригинальное решение проблемы с питанием. Питание для него требуется внешнее, но в тоже время никаких дополнительных блоков питания изобретать или покупать не надо. Как так? А вот так. Вы же с компьютера будете чипы программировать. То есть комп у Вас будет включен. Тогда у Вас уже есть на каждом 4-х пиновом разъёме Molex отличные, стабильные +5 и +12 Вольт, так зачем же городить что-то ещё? (4-х пиновые Molex — это такие, как на рисунке справа, от которых питаются ваши винчестеры, сидирумы и тому подобное железо внутри компа.) Короче, наш программатор можно запитать от любого такого свободного разъёма.

Ну, закончим на этом со вступлением и перейдём к схеме.

Детали и описание работы:

Две главных детали программатора — микросхема преобразователь уровней порта GD75232 и микросхема логики 74HC14D.

Микруха порта — это фактически две полностью независимые микрухи в одной. Одна — это набор драйверов (из 0/5 вольтовых сигналов делают +-12 вольтовые), вторая — набор приёмников (из +-12 вольтовых сигналов делают 0/5 вольтовые).

Мы используем только приёмники, а входы и выходы драйверов (а так же неиспользуемые входы приёмников) — заземляем.

Микруха логики выполняет две задачи — умощнить выходы микросхемы порта и защитить микросхему порта в случае экстренных ситуаций (всё же микросхемы портов встречаются не так часто, как микросхемы логики). Соответственно, чуть изменив схему, вместо 74hc14 легко можно использовать какую-нибудь другую логику.

Транзисторы подойдут любые маломощные, я брал smd-транзисторы, снятые с материнских плат, с маркировками A1 (npn-транзистор) и A2 (pnp-транзистор). Если Вы так же будете использовать smd-транзисторы, то главное убедиться, что это действительно транзисторы (например, в корпусе sot-23, с маркировкой A1 могут быть не только транзисторы, но и диоды).

Резисторы подписаны на схеме. Кроме этого надо поставить между питанием и землёй возле каждой микрухи керамические конденсаторы по 0,1 мкФ, на схеме они не нарисованы, но это правила хорошего тона.

Готовый девайс (на фото сам программатор и модуль для программирования контроллеров PIC):

Программатор тестировался с программами IC-Prog и Pony Prog, которые можно скачать в разделе «Полезные программы для ПК».

При прошивке выбрать тип программатора JDM. При программировании PIC-контроллеров надо выбрать инверсию сигнала D-IN, при программировании контроллеров AVR — инверсию сигналов D-IN и RESET (MCLR).

Скачать плату (DipTrace 2.0). В архиве печатка программатора, модуля для подключения PIC12, PIC16, PIC18 и модуля для подключения 8-ми и 20-ти ногих AVR. Эта плата разведена под SMD-компоненты (как на фотке), если сделаете свои версии печаток и не пожалеете поделиться с другими — присылайте на почту или
заливайте на форум.

КАК ЗАПРОГРАММИРОВАТЬ МИКРОКОНТРОЛЛЕР PIC

КАК ЗАПРОГРАММИРОВАТЬ МИКРОКОНТРОЛЛЕР PIC, В этом руководстве вы узнаете, как запрограммировать микроконтроллер PIC с помощью компилятора под названием MikroC . Это простое и удобное программное обеспечение, предназначенное для преобразования кода языка C в шестнадцатеричный файл, который затем можно передать микроконтроллеру для выполнения определенных задач. После завершения этого руководства вы сможете сгенерировать шестнадцатеричный файл. код программы на языке C с использованием любого микроконтроллера PIC, а затем имитировать его.

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

  • В верхнем меню выберите Project à New Project .
  •  Mikro c tutorial

    • Появится окно мастера создания нового проекта. Нажмите «Далее», чтобы открыть окно «Настройки проекта». Укажите уникальное имя для проекта, выберите имя устройства как PIC16F877A и просмотрите папку проекта; здесь будет сохранен шестнадцатеричный файл. Выберите часы устройства в соответствии с теми, которые используются в дизайне, а затем нажмите «Далее».
    Mikro c tutorial
    • Шаг 2 позволяет добавить файл в проект, а шаг 3 позволяет включить все или выбранные библиотеки.Нажмите «Далее», не внося никаких изменений в оба окна, а затем нажмите «Готово», чтобы завершить работу мастера. Окно редактора кода будет отображаться с надписью «void main ()» в первой строке. Здесь вы должны написать свою программу. Напишите код и нажмите BUILD на горизонтальной панели инструментов вверху.
    Mikro c tutorial

    Здесь у нас есть двухстрочный код, в котором все выводы порта C установлены на высокий уровень.

    • При успешном завершении процесса сборки в окне «Сообщение» в нижней части экрана появится сообщение о том, что код был скомпилирован без ошибок и шестнадцатеричный файл готов.
    Учебник Mikro c для рис. Для выполнения имитации, необходимые шаги приведены ниже:

    • Выберите Run Start Debugger из строки меню.
    Mikro c for pic tutorial

    Функция отладчика выполняет все инструкции по одной инструкции за раз и отражает пошаговые изменения, вызванные контактами портов, регистрами и т. д.Переменные, которые вы хотите отобразить, можно выбрать в окне «Watch Value» в правой части экрана.

    • Выберите переменную PORTC , нажав «Выбрать переменную из списка», а затем нажмите кнопку «Добавить », чтобы добавить ее в список наблюдения.
    Mikro c for pic
    • Нажмите F8, чтобы переместить синюю линию на следующую инструкцию, синяя линия выделяет инструкцию, которая будет выполняться следующей. В окне «Watch Value» следует отметить, что значение PORTC по-прежнему равно нулю, поскольку третья инструкция еще не выполнена.

     

    • Снова нажмите F8, и теперь значение PORTC изменено на 255, т.е. все максимумы
    Mikro c for pic tutorial

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

    Канда — PIC-KIT | Комплект для программирования микроконтроллеров PIC для изучения микроконтроллеров PIC

    Комплект для программирования микроконтроллеров PIC

    Этот комплект PIC включает в себя все необходимое для изучения программирования микроконтроллеров PIC, в том числе: исчерпывающие учебные пособия по HTML, книга на компакт-диске, программное обеспечение для разработки MPLAB X, включая компилятор XC8 C, аппаратные платы, программатор и отладчик PICKit4.

    PICKit 4 недоступен, но SNAP есть в наличии — см.
    PIC-MICRO-X-SNAP

    Он основан на одном из новых микроконтроллеров PIC от Microchip, PIC16F1789, который намного лучше (и дешевле), чем более старые микроконтроллеры PIC, такие как PIC16F877. Он научит вас программировать микроконтроллер PIC с самого начала и охватывает все, что вам нужно. знать, чтобы создавать свои собственные проекты и изучать встроенное программирование C.

    Курс микроконтроллеров PIC

    Учебники на основе браузера, связанные с книгой и многими примерами проектов, научат вас всему, что вам нужно знать о микроконтроллерах PIC и о том, как писать программы на языке ассемблера и C, используя профессиональную интегрированную среду разработки (IDE) MPLAB X.Вы узнаете, как на самом деле работает микроконтроллер PIC, что поначалу требует больше работы, но вы понимаете, как быть эффективным программистом встраиваемых систем.

    Учебное пособие по PIC охватывает следующие темы

    • Компоновка и структура микроконтроллера PIC
    • Системы нумерации и логика
    • Программное планирование
    • Как правильно использовать MPLAB X IDE
    • Программирование PIC на языке ассемблера
    • Программирование PIC на встроенном C
    • Как загрузить и отладить проект
    • Как настроить и использовать периферийные устройства микроконтроллера PIC
    • Узнайте, как взаимодействовать с UART, ЖК-дисплеем, клавиатурами, датчиками и многим другим
    • Научитесь повторно использовать код и файлы библиотек для создания сложного проекта
    • Создавайте собственные проекты

    Микрочип PICKit4 Этот комплект PIC имеет подлинный отладчик и программатор Microchip PICKit4.PICKit3 может просто загрузить код в PIC16F1789 или можно использовать в качестве внутрисхемного эмулятора (ICE), позволяющего отлаживать код в режиме реального времени. Отладчик является важным инструментом для эффективной разработки кода на C или ассемблере.


    PICKit4 также можно запускать из собственного отдельного программного обеспечения, что делает его идеальным для мелкосерийного производства. должны использовать MPLAB X для программирования. PICKit4 может питать целевую плату, поэтому внешний источник питания не требуется.
    Модульное оборудование
    Этот комплект PIC позволяет подключать дополнительные модули к основной плате, когда они вам нужны, и полный индивидуальный проект может быть собран в один простой стек, готовый поместиться в коробку для проекта. Учебная доска поставляется в комплекте, и ее можно включить в окончательный проект или снять.

    Дополнительные модули, датчики, клавиатура, ЖК-дисплей и макетные платы поставляются с монтажными стойками и кабелями и могут быть просто установлены на основной плате или встроены в другие модули по мере необходимости.

    Основная плата PIC
    Основная плата компактна, но имеет разъемы для всех 8-, 14-, 20-, 28- и 40-контактных микроконтроллеров PIC, так что вы можете перейти на другой устройство, если требуется. В нем установлен 40-контактный PIC16F1789 — преимущества этого устройства см. ниже. Он имеет Кристалл 8 МГц, но байты конфигурации PIC16F1789 могут быть установлены для работы на тактовой частоте 32 МГц. Плата PIC имеет разъемы расширения для всех контактов порта и для подключения других модулей, таких как учебная плата и ЖК-дисплей.Он имеет разъем USB, который отображается как виртуальный последовательный порт на вашем ПК, в отличие от большинства плат микроконтроллеров. которые по-прежнему оснащены стандартным 9-контактным последовательным портом. Плата также может питаться через этот USB-разъем. Он имеет разъемы шины I2C и шины питания 3,3 и 5 В.

    Микроконтроллеры серии PIC18F
    Плата также поддерживает микроконтроллеры серии PIC18F, поскольку они имеют ту же распиновку, что и PIC16F. PICKIT4 также поддерживает PIC18F в режиме программирования и отладки.На компакт-диске есть несколько проектов на ассемблере PIC18 и C, которые охватывают все основы. См. сопутствующие товары для подходящего микроконтроллера PIC18F4221.

    Учебная доска PIC
    Учебная плата PIC монтируется на основной плате с помощью стоек, а порты соединяются с помощью ленточных кабелей, чтобы обеспечить полное гибкость. Он имеет 8 переключателей и светодиодов, аналоговый потенциометр, зуммер, последовательный разъем памяти EEPROM и интерфейсы шины I2C. Образец кода в ассемблере и C охватывает эти и многие другие функции, а учебные пособия описывают их полностью.

    PIC16F1789 Преимущества
    Это один из последних 40-контактных микроконтроллеров Microchip PIC, который имеет примерно такое же сходство с когда-то популярным PIC16F877. как современный автомобиль делает с Фордом Model-T.

    • Быстрее — до 32 МГц
    • Больше памяти для программ — 32 КБ пространства для кода, а не 8 КБ
    • Больше памяти данных SRAM — для более эффективного кода C
    • Более низкое энергопотребление и более широкий диапазон напряжений
    • Дополнительные периферийные устройства, функции защиты и снижения напряжения
    • И намного дешевле

    Он выгодно отличается от линейки AVR и съедает ATmega328P, обычно используемый наборами Arduino на завтрак.
    Модульная конструкция
    Этот комплект PIC является модульным, поэтому после того, как вы использовали учебную плату для изучения программирования микроконтроллера PIC, вы можете просто подключить дополнительные модули, такие как ЖК-дисплей или клавиатура или используйте макетные платы для создания собственных схем. Kanda продает ряд дополнительных плат, включая датчики газа, температура, влажность, влажность почвы и многое другое. Другие модули также могут быть подключены, чтобы вы могли создать свой собственный проект с использованием одного и того же оборудования — комплекта, который растет вместе с вами.

    Программирование 16-битных микроконтроллеров PIC на C [книга]

    • Инсайдер Microchip рассказывает все о новейших и самых мощных PIC!

    • БЕСПЛАТНЫЙ CD-ROM содержит исходный код на языке C, компилятор Microchip C30 и программное обеспечение MPLAB SIM. с большей скоростью, большим объемом памяти и большим количеством периферийных устройств, чем когда-либо прежде, создавая потенциал для более мощных передовых конструкций PIC.Эта книга учит читателей всему, что им нужно знать об этих микросхемах: как их программировать, как их тестировать и как их отлаживать, чтобы в полной мере использовать возможности новой архитектуры микроконтроллера PIC24.

    Автор Лучио Ди Джасио, эксперт по PIC в компании Microchip, предлагает уникальное понимание этой революционной технологии, шаг за шагом проводя читателя от основ 16-битной архитектуры до самых сложных сценариев программирования. Основанный на здравом смысле, практический и практический подход этой книги начинается с простого и переходит в более сложные упражнения с использованием проверенных приемов программирования на C.Как опытные пользователи PIC, так и новички в этой области получат пользу от множества подробных примеров, которые демонстрируют, как ловко обходить распространенные препятствия, эффективно решать реальные проблемы проектирования и оптимизировать код для всех новых функций PIC24.

    Вы узнаете о:
    • основных операциях синхронизации и ввода-вывода,
    • многозадачности с использованием прерываний PIC24,
    • обо всех новых периферийных устройствах
    • о том, как управлять ЖК-дисплеями,
    • о генерации аудио- и видеосигналов,
    • доступ к запоминающим устройствам,
    • как обмениваться файлами на запоминающем устройстве с ПК,
    • эксперименты с демонстрационной платой Explorer 16, методы отладки с помощью инструментов MPLAB-SIM и ICD2 и многое другое!

    · Инсайдер Microchip рассказывает все о новейших и самых мощных PIC!

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

    · Включает удобные контрольные списки, помогающие читателям выполнять наиболее распространенные задачи программирования и отладки

    · БЕСПЛАТНЫЙ компакт-диск -ROM включает исходный код на C, компилятор Microchip C30 и программное обеспечение MPLAB SIM, так что читатели получают практический опыт программирования

    · Посетите веб-сайт автора по адресу http://www.flypic24.com для БЕСПЛАТНЫХ загрузок, часто задаваемых вопросов и обновлений

    Простой C для микроконтроллера PIC

    Изучите встроенное программное обеспечение для PIC Микроконтроллер

    Задачи Требуемые от микроконтроллера PIC с каждым годом усложняясь. Хотя приемлемо получить представление работы ПОС Микроконтроллер путем программирования в язык ассемблера, если более сложные задачи должны быть выполнены, более простой язык необходим.Кроме того, инженер может напился на ПОС, стал владеет языком ассемблера, но тогда будь полным новичком, если ему нужно перейти на процессор от другого производитель, использующий полностью другой набор инструкций. А нужен универсальный язык, которого нет зависит от процессора, что позволяет инженер для написания программного обеспечения независимо от платформе и независимо от сложность поставленной задачи.

    Вот где С язык программирования приходит на помощь и если вы выучить С для микроконтроллера PIC это идеальное место для начала. Он содержит 113 страницы описания архитектуры, пример кода, который использовался в производственные схемы и подробные пояснения к коду.

    Большинство загружаемые книги по программированию на C язык указывает вам на использование дорогих средства разработки и оборудование.

    Это книга объясняет, как использовать

    • Бесплатный Компилятор C микроконтроллера PIC

    • Бесплатный редактор

    • бесплатно Микроконтроллеры PIC от Microchip

    • очень недорогие программисты

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

    читатель свободно владеет основами языка программирования C и быть написание собственных программ за один день.

    Книга объясняет архитектуру PIC, как скачать и использовать бесплатную программное обеспечение, как написать базовое программное обеспечение подпрограммы, включая if, while, do..while, для циклов, операторов переключения, заголовка и C-файлы, биты конфигурации, тип определения, двоичный, шестнадцатеричный, десятичный числа, функции, прерывания, таймеры, Светодиодные режимы вождения, пуленепробиваемый ЖК-дисплей режим вождения, включая трассу диаграммы, а также множество других C Примеры.

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

    Скачать все необходимые файлы из следующих ссылка:

    Простой C для микроконтроллера PIC

    Taillieu.Информация — Запрограммировать микроконтроллер PIC

     

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

    Сегодня мы сожжем микроконтроллер PIC от Microchip — в данном случае Microchip — имя собственное, относящееся к этой компании.«PIC» — это мозг множества проектов — например, этот USB-свет, меняющий цвет, или эти аналоговые датчики.

    Посмотрите видео, чтобы увидеть различные способы программирования PIC, и читайте дальше, чтобы создать свой собственный простой программатор в стиле JDM2.


    Получить все файлы для этого проекта в архиве проекта.

    Основные соединения

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

    Vdd/Vss (питание и земля)
    Vdd и Vss — это метки, которые Microchip использует для обозначения положительного питания и заземления. Vdd обычно имеет положительный источник питания 5 вольт. Другие названия Vdd включают в себя: Vcc, питание, питание, «+», неровная сторона батареи и красный провод. Vss — это «земля», почти всегда 0 вольт. Вы также увидите землю, называемую: минус, земля, «-», земля, плоская сторона батареи и черный провод. В большинстве печатных плат используется заземляющий слой, это означает, что все контакты заземления подключаются к медным областям, оставшимся после прокладки других проводов.Плоскости заземления экономичны и безвредны для окружающей среды — медь должна быть химически вытравлена ​​из любых незаполненных областей на печатной плате, для этого используется больше кислотных травителей и создается больший поток медных отходов. Посмотрите на печатную плату смены цвета RGB справа, большая синяя область — это заземляющий слой.

    Не забудьте соединить контакты с маркировкой Avdd и Avss. Эти контакты позволяют обеспечить чистое питание аналоговых частей микросхемы. Узнайте больше о маршрутизации этих соединений[pdf!], если вы разрабатываете устройство, которое выполняет супер-пупер точные измерения с аналого-цифровым преобразователем.

    Каждая пара контактов Vdd/Vss или Avdd/Avss подключается к конденсатору 0,1 мкФ (C1 на схеме ниже). Их называют «развязывающими» конденсаторами, потому что они изолируют (развязывают) микросхему от помех в источнике питания. Этот шум вызовет дикие колебания в цепи, если его не остановить. Конденсаторы на 0,1 мкФ должны быть очень дешевыми, купите 100+ онлайн, чтобы сэкономить пачку. На практике конденсатор должен быть подключен к каждому контакту питания (Vdd). Если контакты питания и заземления не расположены рядом друг с другом, что раздражает слишком часто, подключите одну сторону конденсатора как можно ближе к выводу питания, а другую — к общей плоскости заземления.



    Очистка и сброс VPP/MCLR/главного устройства

    Всплески напряжения питания могут привести к зависанию PIC или вызвать неустойчивое поведение. Большинство PIC имеют функцию MCLR, которая вызывает полный сброс, когда это происходит. Чтобы использовать эту функцию, поместите резистор 10 кОм (R1) между источником питания и выводом MCLR.

    Примеры минимальных соединений
    В этой галерее показано, как выполнить минимальные соединения для нескольких различных микроконтроллеров PIC.

    Программирование соединений
    PIC в оголенной схеме — это здорово, но нам нужно добавить в него некоторое программное обеспечение, прежде чем оно станет полезным.Я всегда добавляю простое 5-контактное соединение на печатную плату, чтобы чип можно было запрограммировать, не удаляя его из схемы. Это экономит массу времени при использовании микросхем в сокетах, но абсолютно необходимо для микросхем поверхностного монтажа, которые нельзя снять с печатной платы. Этот метод программирования называется внутрисхемным последовательным программированием (ICSP). Даже если вы планируете использовать программатор сокетов, читайте дальше, чтобы понять, какие соединения программатор устанавливает с PIC, когда вы вставляете его в сокет.

    Vdd/Vss
    Мы позаботились об этих соединениях ранее.Программатор ДОЛЖЕН иметь общее заземление с печатной платой, также обычно используется подключение к напряжению питания.

    MCLR/VPP
    Вывод сброса MCLR также используется для перевода PIC в режим программирования. Когда программатор подает на этот вывод «напряжение программирования» (Vpp), микросхема готовится к копированию новой прошивки.

    Vpp зависит от модели PIC, но может достигать 13 вольт. Если мы направим этот контакт на разъем и подключим программатор, напряжение программирования пройдет через резистор MCLR (R1) и войдет в остальную часть схемы.Все на печатной плате может быть испорчено 13 вольтами — нужен односторонний клапан, чтобы поддерживать высокое напряжение Vpp там, где оно должно быть. Небольшой сигнальный диод (D1) делает именно это. Я обычно использую для этой цели обычный 1n4148.

    Часы и данные
    Код поступает в PIC на контакты часов (PGC) и данных (PGD). Обычно они находятся на PORTB, контакты 6 и 7, на микроконтроллерах PIC.

    Вы, наверное, уже знаете, что все на компьютере сводится к 0 и 1.Файлы кода для PIC, обычно с расширением .hex, представлены на диске 0 и 1. Вывод данных PIC переключается между питанием (1) и землей (0) для представления этих битов. Тактовая линия поднимается вверх, а затем снова опускается, когда на выводе данных находится правильное значение. Тактовый импульс запускает PIC для копирования значения на выводе данных (0 или 1) в память.

    Соедините его с VPP, чтобы очень просто посмотреть, как программируется PIC. Во-первых, напряжение программирования повышается (VPP), чтобы перевести PIC в режим программирования.Затем линия данных изменяется, чтобы отразить значение 0 или 1. Тактовый импульс применяется для копирования значения вывода данных в PIC. Когда все данные скопированы, VPP удаляется.

    Примеры подключения ICSP
    В этой галерее показаны подключения ICSP для нескольких микроконтроллеров PIC.

    Программисты
    Программист — это ключ к загрузке программного обеспечения в PIC. Это устройство физически соединяет ваш ПК с микроконтроллером. Они сильно различаются по цене и сложности.

    Виглеры
    Вигглеры — простейшие программаторы. Они лишь помогают деликатным выходам ПК переключать VPP, данные и тактовые напряжения. Эти простые схемы обычно «буферизируют» выводы последовательного или параллельного порта. Программное обеспечение для ПК шевелит штифтами для программирования PIC. Это довольно универсальная концепция — программное обеспечение контролирует все. Вигглеры с портом дешевы, состоят из небольшого количества деталей и просты в изготовлении.

    Некоторыми примерами шевглеров являются NOPPP и знаменитый JDM2.Несколько приложений поддерживают эти программисты. Мне нравится WinPIC800, потому что он обновлен для новейших чипов 18F PIC. Вы также можете проверить старые версии WinPIC и ICPROG.

    Умные программисты
    Умные программисты стоят дороже, чем вертящие булавки. У этих программаторов есть собственный микроконтроллер, который фактически программирует целевой чип. Собственные USB-программаторы Microchip (или Olimexclones) являются примером программатора такого типа. Наборы для экспериментов с микроконтроллерами из магазинов электроники часто поставляются с этим типом программатора — программатор набора обычно программирует только очень узкий диапазон PIC.

    Эти программаторы предназначены для работы со специальным программным обеспечением и обычно не поддерживаются универсальными программами, такими как WINPIC800. Упомянутые ранее программисты работают с приложением для разработки freeMPLAB. MikroElektronika изготавливает программы на заказ, которые работают со своими собственными компиляторами C, Pascal и Basic.

    Отладчики
    Отладчики программ, но они также добавляют в программный код функции воспроизведения и паузы. Это помогает авторам программного обеспечения выявлять досадные проблемы во время разработки прошивки.Подобно интеллектуальным программистам, отладчики работают с конкретными приложениями. ICD2 от Microchip и его точная копия в Olimex работают со средой разработки и компиляторами Microchip MPLAB. Есть несколько USB- и последовательных ICD2-аналогов, которые вы можете собрать самостоятельно. Это не клоны, потому что им не хватает некоторых функций оригинала, таких как регулируемые уровни напряжения.

    Сборка JDM2
    В этом проекте мы создадим программатор на основе зарекомендовавшего себя шевеля штифта JDM2.Он использует не так уж простую схему для генерации напряжения программирования 13 В от последовательного порта ПК. Оригинальный дизайн разработан Йенсом Дайкьяером Мэдсеном.

    Загрузите печатную плату и другие файлы для этого проекта здесь. Печатная плата была разработана с помощью Cadsoft Eagle. Вы можете скачать бесплатную версию.

    Ограничения
    Конструкция JDM2 имеет несколько ограничений:

    • В ней используется отрицательное напряжение земли, чтобы получить полное разделение +13 В между землей и VPP.Перед программированием с помощью JDM2 убедитесь, что вы отключили любой источник питания от схемы.
    • Не работает с большинством ноутбуков, так как напряжение последовательного порта слишком низкое.
    • Скорее всего, он не будет работать с адаптером USB-последовательный порт по той же причине.
    • Линия PIC 16F требует 13 вольт на Vpp, более новые PIC 18F используют 12,5 вольт, а новейшие PIC (24F/32F) используют 6 вольт или меньше. Если вы хотите запрограммировать новый PIC 18F с помощью JDM2, вам следует использовать диод (D1), как показано на схеме.Этот диод снизит напряжение программирования примерно на 0,6 вольта, оставив почти идеальные 12,4 вольта.



    Детали


    Перечень деталей

    Резисторы
    R1 — резистор 10 кОм
    R2 — резистор 1,5 кОм
    Простые 1/1/4.

    Диоды
    D1 — стабилитрон 8,2 В (должен быть мощностью не менее 0,5 Вт)
    D2 — стабилитрон 5,1 В (должен быть мощностью не менее 0,5 Вт)
    D3,4,5,6 — диод 1n4148 (или 1n4448)

    Конденсаторы
    C1 — 100 мкФ/25 В электролитические
    C2 — 22 мкФ/16 В Танталовые или 47 мкФ/6.3 вольта Тантал
    Это быстродействующий конденсатор, и он должен быть танталового типа.

    Транзисторы
    Q1,2 — BC547B
    Эти маленькие транзисторы очень распространены. Убедитесь, что ваш транзистор имеет конфигурацию выводов, показанную на схеме ниже. Дважды проверьте первую страницу таблицы данных производителя, чтобы убедиться, что неправильная ориентация является наиболее распространенной проблемой новых программистов JDM2.


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

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

    1. Сначала припаяйте две перемычки.
    2. Затем добавьте резистор 1,5 кОм и резистор 10 кОм. Ориентация резистора значения не имеет.
    3. Теперь добавьте диоды 1n4148. Черные полосы должны быть ориентированы, как показано на рисунке.
    4. Добавьте стабилитроны на 5,1 В и 8,2 В. Черная полоса должна быть обращена к штекеру последовательного порта.
    5. Добавьте транзисторы. Убедитесь, что транзисторы расположены так, как показано на рисунках и схемах. Плохое расположение транзисторов является причиной большинства проблем с новыми программаторами JDM2.
    6. Добавьте танталовый конденсатор и электролитический конденсатор. Ориентация имеет значение. Убедитесь, что черная полоса электролитического конденсатора обращена к краю платы, а короткая ножка соединяется с большой областью медного заполнения (плоскостью заземления). Точно так же короткая ножка танталового конденсатора должна быть соединена с заземляющей пластиной.
    7. Добавьте заглушку последовательного порта.
    8. Добавьте разъем по вашему выбору (штыревой/гнездовой разъем, провод и т. д.).

    В галерее есть изображения, на которых подробно показан каждый шаг.

    Настройте Winpic800 и протестируйте JDM2
    Для тестирования нашего программатора мы будем использовать Winpic800. Загрузите его здесь и установите. Вероятно, при первом запуске он будет на испанском языке, выберите  Idioma-> English  (или любой другой, который вам подходит).

    Запустить Winpic800.

    1. Перейдите к Настройки->Оборудование .
    2. Настройте Winpic800 для программатора JDM2: нажмите «JDM2 Programmer» в списке и убедитесь, что COM-порт установлен правильно. Большинство ПК имеют один последовательный порт, назначенный COM1.
    3. Нажмите  Применить изменения .
    4. Подключите программатор JDM2 к последовательному порту.
    5. Перейдите к Device->Hardware Test. Если ваш программатор работает, вы получите сообщение «Hardware OK».

    Запись прошивки на PIC

    1. Подключите PIC к программатору, как описано ранее.
    2. Подключите программатор к последовательному порту (ненужного) ПК.
    3. Запустить Winpic800.
    4. Перейдите к Устройство->Проверить устройство (CTRL+D).
    5. Winpic800 обнаружит подключенный PIC, нажмите «Принять».
    6. Перейдите к File->Open и выберите файл микропрограммы, который вы хотите скопировать на PIC.Обычно это файл .hex.
    7. Наконец, выберите Device->Program All для программирования PIC. Winpic800 программирует PIC и проверяет содержимое.

    Дай еще!
    Программатор JDM2 имеет отличный дизайн, потому что его можно сделать всего за несколько долларов. Это хороший способ понять, подходит ли вам программирование микроконтроллеров. Если вам это нравится, вы быстро столкнетесь с ограничениями, налагаемыми простой устаревшей конструкцией JDM2. Если вы дойдете до этого момента, вы можете попробовать один из этих более продвинутых программаторов или отладчиков:

    Программатор USB PIC
    Отладчик последовательного порта
    Отладчик USB
    Несколько копий отладчика USB ICD2
    «Настоящая сделка» ICD2
    Программатор Olimex и клоны отладчика

    Многим удалось собрать JDM2 на макетной плате или на куске перфорированной платы, но ничто не сравнится с печатной платой по удобству.Небольшая печатная плата, включенная в этот проект, представляет собой простую в изготовлении одностороннюю конструкцию. Нужна помощь в изготовлении печатной платы? Нет проблем, ознакомьтесь с некоторыми из этих руководств:

    Печатные платы для фоторезиста
    Печатные платы для переноса тонера
    Заказ профессиональных печатных плат в Интернете

    Теперь, когда у вас есть программатор, вы можете записывать чужое программное обеспечение, но вы также можете разрабатывать твой собственный. Загрузите несколько демонстрационных компиляторов и попробуйте примеры:

    Компиляторы Mikro-Basic, C и Pascal для серий PIC 16 и 18.
    MPLAB от Microchip с бесплатным компоновщиком сборки для всех PIC.
    Демонстрационный компилятор C PIC C18 для серии PIC 18.

    Другие важные ресурсы PIC:
    Форум PIC Microchip
    Список рассылки и архив MIT PIC

    [PDF] ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ PIC — скачать бесплатно в формате PDF

    1 ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ PIC2 Установите ET-PGMPIC USB Установите следующие две программы с компакт-диска..NET Framework…

    ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ PIC

    Установите ET-PGMPIC USB • Установите следующие две программы с компакт-диска.– .NET Framework (dotnetfx). – PICkit2Setup.

    • После установки щелкните значок ниже, чтобы запустить программу.

    ET-PGMPIC USB

    Подключение ET-PGMPIC USB

    Светодиод для отображения состояния работы • BUSY: красный светодиод для отображения состояния работы программатора. Он будет включен, когда программа работает, например, чтение/запись во флэш-память микроконтроллера PIC. • TARGET: желтый светодиод для отображения состояния питания целевой платы. • POWER: зеленый светодиод для отображения состояния питания платы.

    ТЕКСТОВЫЙ ИНСТРУМЕНТ 40PIN • Поддержка микроконтроллера PIC от 28PIN до 40PIN DIP TYPE. • Выровняйте ИС по верхнему краю, как показано на рисунке. • Всегда плотно запирайте IC

    ИНТЕРФЕЙС ЧЕРЕЗ ICD2 — Нажмите для программирования. — Отпустите для запуска

    Интерфейс ICD2

    Интерфейсный сигнал от ETPGMPIC USB и модуля эмуляции через разъем ICD2

    ПЕРЕМЫЧКА T/B Перемычка T/B

    • Установите перемычку на стороне T, если вы программируете IC в TEXT TOOL. • Установите перемычку на стороне B, если вы программируете IC с помощью интерфейса с сигналом от ICD2.

    ПЕРЕМЫЧКА T/B

    • Установите перемычку на стороне T, если вы программируете IC в TEXT TOOL. • Установите перемычку на стороне B, если вы программируете IC с помощью интерфейса с сигналом от ICD2.

    Переключатель ПРОГРАММА • Программирование нажатием переключателя • Эту функцию можно использовать, выбрав [√] Запись на кнопку PICkit в меню программатора — Загрузить соответствующий шестнадцатеричный файл в программу PICkit2 для программирования.• Экспортировать в шестнадцатеричном формате — для экспорта шестнадцатеричного файла, который считывается микроконтроллером, для сохранения в виде файла.

    КОМАНДЫ МЕНЮ • PIC18F- Для программирования микроконтроллеров флэш-памяти PIC18F.

    КОМАНДЫ МЕНЮ • Запись устройства — для записи данных и битов конфигурации в память программы. • Проверка — для проверки данных и битов конфигурации микроконтроллера. • Erase- стереть данные в памяти микроконтроллера.

    МЕТОДЫ ПРОГРАММИРОВАНИЯ 1. Используйте кабель USB для подключения компьютера к программатору (ET-PGMPIC USB).2. Поместите предпочтительный микроконтроллер IC PIC в TEXT TOOL или модули эмулятора для программирования. • При программировании с помощью TEXT TOOL установите перемычку T/B в положение T.

    МЕТОДЫ ПРОГРАММИРОВАНИЯ • При программировании на целевой плате с помощью модуля эмулятора установите перемычку T/B в положение B. Перемычка T/B

    ЦЕЛЕВАЯ плата ET-PGMPIC USB

    МЕТОДЫ ПРОГРАММИРОВАНИЯ 3. Откройте программу PICkit 2, дважды щелкнув значок PICkit2 . 4. Программа PICkit 2 проверяет IC на TEXT TOOL; если этот номер поддерживается PICkit 2 и его соединения правильные, он отобразит найденный номер PIC Micro в пустом устройстве, как показано на рисунке

    МЕТОДЫ ПРОГРАММИРОВАНИЯ 5.Сотрите старые данные в PIC Micro. – –

    Щелкните Стереть. Данные в пустой памяти программ — FF.

    6. При необходимости импортируйте шестнадцатеричный файл, выберите команду меню Файл -> Импорт шестнадцатеричного файла. 7. Данные в пустой памяти программ изменяются в соответствии с загруженными данными шестнадцатеричного файла.

    МЕТОДЫ ПРОГРАММИРОВАНИЯ 8. Нажмите кнопку Command Write, чтобы начать запись шестнадцатеричного файла программы в память PIC Micro.

    9. Нажмите «Проверить», если хотите проверить и определить, верны ли данные, записанные в PIC Micro.

    PicDem ™ 2 плюс демонстрационная доска пользователя руководство пользователя

    Picdem 2 Plus демонстрационная доска

    PicDEM 2 плюс демонстрационная доска 1. 2.

    3. 4. 5. 6. 7. 8. 9.

    8, 28 и 40-контактные DIP-разъемы. (Несмотря на наличие трех розеток, одновременно можно использовать только одно устройство.) Встроенный регулятор +5 В для прямого ввода от настенного адаптера переменного/постоянного тока 9 В, 100 мА или батареи 9 В, или крючки для +5 В, 100 мА регулируемый источник постоянного тока. Гнездо RS-232 и соответствующее оборудование для прямого подключения к интерфейсу RS-232.Разъем внутрисхемного отладчика (ICD). Потенциометр 5 кОм для устройств с аналоговыми входами. Три кнопочных переключателя для внешнего воздействия и сброса. Светодиодный индикатор включения. Четыре светодиода подключены к PORTB. Перемычка J6 для отключения светодиодов от PORTB.

    PICDEM 2 PLUS DEMONSTRATION BOARD 10. Стационарный кварцевый генератор с частотой 4 МГц. 11. Для соединения кристалла предусмотрены незаполненные отверстия. 12. Кристалл 32,768 кГц для работы часов Timer1. 13. Перемычка J7 для отключения бортового RC-генератора (приблизительно 2 МГц).14. Последовательная ЭСППЗУ 32K x 8. 15. ЖК-дисплей. 16. Пьезо-зуммер. 17. Зона прототипов пользовательского оборудования. 18. Термодатчик Microchip TC74.

    Порт-соединения 18 — PIN-код

    28-контактный

    Светодиоды (D2-D5) USART

    40-контактный RB3: RB0

    N / A

    RC6: RC7

    MASTER RESET (S1)

    MCLR

    , определенный пользователем (S2)

    RA4

    , определенный пользователем (S3)

    RB0

    потенциометр (R16)

    RA0

    LCD1

    N / A

    EEPROM (UX)

    N / A

    RC3 / RC4

    зуммер (P1)

    N / A

    RC2

    RC2

    ICD Connector (J5)

    RB6: RB7

    RB6: RB7

    Датчик температуры (UX)

    N / A

    RC3 : RC4

    RA3: RA1

    RA3: RA1

    RA3: RA1 и RD3: RD0

    Кристалл Осциллятор (Y1)

    OSC1 и OSC2

    Внешний осциллятор (Y2)

    OSC1

    Топ 15 популярных микроконтроллеров на рынке на рынке Производство печатных плат и сборка печатных плат

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

    Микроконтроллеры PIC являются программируемыми и самыми маленькими в мире. Он способен выполнять разнообразный спектр задач. Поэтому вы найдете их в системах сигнализации, компьютерных системах управления, телефонах, системах сигнализации и т. д. Понимание различных типов микроконтроллеров PIC дает информацию для процесса проектирования и программирования микроконтроллеров PIC.Хотите узнать больше? Продолжить чтение.

    О микроконтроллерах PIC

    Микроконтроллеры PIC , также называемые контроллерами с программируемым интерфейсом, появились в 1993 году. Первоначально разработанные и разработанные для поддержки компьютеров PDP в управлении их вспомогательными устройствами, в настоящее время они имеют расширенную область применения.

    Микроконтроллеры PIC основаны на гарвардской архитектуре, что делает их популярными. Это связано с простотой программирования, низкой стоимостью, широкой доступностью и простотой взаимодействия с другими вспомогательными компонентами.Кроме того, он обладает огромной пользовательской базой, помимо возможности последовательного программирования.

    В качестве интегрированного чипа микроконтроллер PIC состоит из ПЗУ, ОЗУ, таймеров, ЦП и счетчиков, которые поддерживают такие протоколы, как CAN, UART и SPI для взаимодействия. Он также имеет флэш-память, порты ввода-вывода, EEPROM, UART, SSP, ADC и PSP, помимо ICSP и LCD. Такие компоненты составляют фундаментальный аспект архитектуры микроконтроллера PIC.

    Архитектура микроконтроллера PIC определяет его функциональные возможности.Помимо рассмотрения четырех классификаций микроконтроллеров PIC, основанных на внутренней архитектуре, понимание различных типов микроконтроллеров PIC становится идеальным перед процессом проектирования. Классификации включают базовую PIC, улучшенную PIC среднего уровня, PIC среднего уровня и PIC18.

    Микроконтроллеры

    PIC также нуждаются в программировании, чтобы адаптировать их к конкретным приложениям. Как разработчику, вам необходимо учитывать программное обеспечение для программирования микроконтроллера PIC, которое необходимо развернуть перед разработкой.Это позволяет ему нормально функционировать после завершения. В большинстве случаев типичный язык программирования часто содержит встроенный язык C. Давайте теперь рассмотрим архитектуру и процесс программирования микроконтроллера PIC.

    Программирование микроконтроллера PIC

    Архитектура микроконтроллеров PIC

    Разработка и программирование микроконтроллера PIC становится возможным только после понимания его архитектуры. Архитектура включает в себя порты ввода-вывода, ЦП, аналого-цифровой преобразователь, прерывания, осциллятор, счетчики/таймеры, модуль организации памяти CPP и последовательную связь.

    Центральный процессор

    Аналогично другим ЦП микроконтроллера. Он имеет CU, AC, ALU, аккумулятор и MU, среди других компонентов. Каждый аспект имеет свое применение. Например, блок управления (CU) управляет всем, что связано с CPU. Арифметико-логическое устройство (АЛУ) выполняет арифметические операции помимо принятия логических решений. Блок памяти (MU) хранит инструкции и т. д.

    Организация памяти

    MU или модуль организации памяти состоит из ROM, RAM и STACK.Оперативная память работает нестабильно и мгновенно сохраняет данные в своих регистрах. Регистры RAM классифицируются либо как регистры общего назначения (GPR), либо как регистры специального назначения (SFR). С другой стороны, в ПЗУ постоянно хранятся данные, а в случае микроконтроллера — программа. Все это функционирует за счет выполнения инструкций процессором. EEPROM позволяет многократно программировать ПЗУ вместо того, что происходит в обычном постоянном запоминающем устройстве (ПЗУ). Флэш-память также является ППЗУ и, таким образом, может многократно записывать, читать и стирать программы.Наконец, STACK хранит и выполняет информацию о завершении выполнения прерывания.

    Порты ввода/вывода

    Все PIC16 содержат пять портов, включая порт A, B, C, D и E. Порт A — это 16-битный порт для вывода и ввода на основе регистра TRISA. Следующим является порт B, который представляет собой 8-битный порт для функций вывода или ввода, а порт C аналогичен порту B, но его работа определяется регистром TRISC. Порт D выступает в качестве ведомого порта для подключения к шине, а порт E выступает в качестве 3-битного порта, который управляет сигналами цифрового или аналогового преобразователя.

    Автобус

    Его основной функцией является прием и передача данных с одного периферийного устройства на другое. Шина имеет две классификации: шина адреса и шина данных. Шина данных только принимает и передает данные, в то время как адресная шина передает адрес памяти в ЦП от периферийных устройств.

    АЦП

    Он работает путем преобразования аналоговых значений напряжения в цифровые значения напряжения; он имеет пять входов для устройств с двадцатью восемью выводами и восемь входов для устройств с сорока выводами.Такая операция управляется специальными регистрами ADCON1 и ADCON0.

    Счетчики/таймеры Микроконтроллеры

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

    Последовательная связь

    Подразумевается последовательная передача данных бит за битом по определенному каналу связи.Он включает в себя USART, который использует один провод для передачи данных (о тактовых импульсах). Последовательная связь также включает в себя протокол SPI, который поддерживает трехпроводную связь SPI, и протокол I2C, который соединяет низкоскоростные устройства.

    Осцилляторы

    В основном используется для генерации времени. Микроконтроллер PIC имеет внешние генераторы, такие как кварцевые генераторы и RC-генераторы.

    Модуль CCP

    Работает в режимах «захват», «сравнение» или «PMW».Capture захватывает время поступления сигнала, а режим сравнения работает при сравнении захвата сигнала в аналоговом режиме. С другой стороны, режим PWM предлагает выходной сигнал с регулируемой шириной импульса с программируемым рабочим циклом и 10-битным разрешением.

    Программирование микроконтроллеров PIC Для микроконтроллеров PIC

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

    Соображения

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

    Процесс программирования

    Программирование микроконтроллеров PIC часто осуществляется через программу «MP-Lab». Перед установкой компилятора требуется установка. Компиляторы включают компилятор GCC, компилятор CCS и т. д. После завершения процесса установки все, что вам нужно, это выполнить описанный ниже процесс.

    • Откройте программу (программное обеспечение MPLAB). Он отобразит строку меню с различными параметрами, такими как инструменты, файл, редактирование, проект и параметры просмотра.
    • Выберите вариант, названный «проект», и перейдите к параметру «проект проводной» в раскрывающемся меню. Это откроет окно, которое будет способствовать вашему программированию.
    • Выберите подходящий тип микроконтроллера для вашего проекта
    • Выберите подходящий компилятор в зависимости от ваших потребностей, помимо пути к местоположению вашего проекта. Вы можете выбрать компилятор CCS или GCC в зависимости от потребностей вашего микроконтроллера PIC. После этого выберите параметр обзора, а затем «ccsloader» в папке PICC из программных файлов.На этом этапе папка исходной группы создается в предполагаемой папке.
    • На этом этапе очень важно присвоить вашему проекту подходящее имя, прежде чем нажимать «Далее», чтобы сохранить проект. В целевой папке создается папка исходной группы, которую вы выбираете в меню «Файл» и выбираете новый файл из раскрывающегося списка.

    Загрузка кода в PIC-контроллер

    После создания кода микроконтроллера PIC вы должны загрузить его в микроконтроллер в процессе, который считается дампом.Микроконтроллеры понимают исключительно язык машинного уровня, состоящий из 0 и 1. Таким образом, процесс дампа требует специального программного обеспечения для загрузки кода.

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

    • Соедините комплект программатора или аппаратное обеспечение с компьютером с помощью последовательного кабеля
    • Разместите микроконтроллер PIC и зафиксируйте его на плате через гнездо
    • Откройте установленную программу.Он отобразит строку меню с различными параметрами, такими как открытие, функции, файл, настройка, параметры сохранения.
    • Перейдите к «открыть» и перейдите к «загрузке файла».
    • Выберите опцию загрузки, чтобы загрузить шестнадцатеричный файл в микроконтроллер PIC

    Как правильно выбрать микроконтроллеры PIC программист

    На рынке существует множество микроконтроллеров PIC. Поэтому всегда трудно выбрать правильный тип и размер микроконтроллера PIC при разговоре с вашей компанией по сборке печатных плат или схем.Однако, исходя из ваших потребностей, мы из RayMing PCB and Assembly сообщим вам об этом. Что еще? Вы получите высококачественные услуги по сборке микроконтроллера PIC по разумным ценам.

    Но прежде чем остановиться на конкретном типе микроконтроллера PIC, учтите следующее.

    • Доступен ли он в различных частях мира?
    • Имеет ли он низкую стоимость?
    • Насколько прост процесс программирования микроконтроллера PIC, особенно с EEPROM?

    Лучшие и популярные микроконтроллеры PIC

    Если вам нужен первоклассный микроконтроллер PIC, крайне важно рассмотреть следующие популярные и высококлассные микроконтроллеры PIC на рынке.

    PIC16f877a / PIC16f877

    PIC16f877a/PIC16f877 имеет простой процесс программирования, помимо удобства использования. Из-за этого он оказался популярным вариантом микроконтроллера в отрасли. Он бывает 8-битным или 16-битным и имеет технологию флэш-памяти, позволяющую выполнять многочисленные процессы записи-стирания. Хотя это идеально, потому что общее количество контактов (всего 40 и 33 для вывода и ввода) в основном применяется в цифровых электронных схемах и проектах микроконтроллеров PIC.Он играет важную роль в устройствах и системах домашней автоматизации, промышленных инструментах, дистанционных датчиках и устройствах безопасности.

    Ключевые атрибуты

    • Меньший набор из 35 инструкций
    • Может работать на частоте до 20 МГц
    • Рабочее напряжение от 4,2 до 5,5 вольт. Все, что выше 5,5 вольт, может привести к необратимому повреждению.
    • В микроконтроллере PIC отсутствует внутренний генератор по сравнению с другими микроконтроллерами, такими как PIC18F4550 и PIC18F46K22.
    • Максимальное ограничение тока в 10 мА для каждого контакта GPIO в качестве источника или приемника может выдержать только приблизительно 100 мА.
    • Он поставляется в корпусе из четырех интегральных схем: 40-контактный PDIP, 44-контактный TQFP, 44-контактный PLCC и 44-контактный QFN.

    PIC12f675

    Представляет собой 8-битный CMOS-микроконтроллер, разработанный на основе высокопроизводительной RISC-архитектуры. PIC12f675 отличается небольшими размерами и экономичностью, что делает его популярным среди инженеров и любителей.Дизайн идеально подходит для недорогих систем и приложений благодаря флэш-памяти объемом 2 Кбайт. Он также содержит 6 контактов GPIO, которые могут обрабатывать ток не более 25 мА, что соответствует порогу многих датчиков и периферийных устройств.

    Ключевые атрибуты

    • 8-разрядный ЦП
    • Восемь контактов, шесть из которых программируются
    • Интерфейс ICSP для связи
    • Имеет 8-разрядный счетчик и 16-разрядный счетчик
    • Внешний генератор с частотой до 20 МГц и внутренний генератор с частотой 4 МГц
    • EEPROM 128 байт
    • Рабочее напряжение 2.0В-5.5В

    16f84 ПОС

    Это известный и наиболее часто используемый тип микроконтроллера PIC, основанный на его новаторском статусе. PIC16f84 представляет собой 8-разрядный микроконтроллер среднего класса с памятью программ на 1024 слова. Он также имеет оперативную память 68 байт и постоянное хранилище EPROM 64 байта. Поразительным фактором PIC 16f84 является то, что его можно перепрограммировать с помощью встроенного ICSP.

    Ключевые атрибуты

    • A 1,75 КБ памяти программ
    • EEPROM 64 байта
    • Один 8-битный цифровой таймер
    • Флэш-память программ
    • 85 °C

    PIC12f629

    Это 8-битный CMOS-микроконтроллер на базе флэш-памяти, который легко программируется.Микроконтроллер PIC сочетает в себе мощную архитектуру микроконтроллера PIC® в 8-контактном корпусе. Он имеет различные функции, которые делают его популярным, например, одноканальный компаратор помимо 128-байтовой EEPROM. Он идеально подходит для применения в промышленной, автомобильной и бытовой электронике.

    Ключевые атрибуты

    • EEPROM 128 байт
    • Поддержка отладки или программирования MPLAB® ICD-2 с бесплатным адаптером заголовка
    • Программируемые подтягивающие резисторы
    • Четыре варианта выбора генератора, включая 4 МГц RC в комплекте с программируемой калибровкой и сбросом при включении питания
    • Возможность прерывания
    • 8-уровневый стек (аппаратное обеспечение)
    • Режимы косвенной, относительной и прямой адресации
    • Расширенный диапазон температур
    • Энергосберегающий спящий режим
    • Маломощный POR
    • Таймер включения и OST (таймер запуска генератора)
    • Сторожевой таймер

    PIC16f886

    Это мощный и простой в программировании микроконтроллер PIC, основанный на 8-разрядном микроконтроллере PIC на базе флэш-памяти CMOS.Кроме того, он содержит архитектуру PIC® в 28-контактном корпусе. PIC16f886 имеет EEPROM объемом 256 байт, является самопрограммируемым и имеет два компаратора, помимо других важных функций. Это делает его популярным выбором для приложений в таких секторах, как промышленность, автомобилестроение, бытовая техника и бытовая техника.

    Ключевые атрибуты

    • Диапазон частот 8–32 МГц
    • POR и режимы энергосбережения
    • Расширенный WDT (сторожевой таймер) со встроенным RC-генератором для обеспечения надежной работы
    • ICSP через два контакта
    • Улучшенная программа flash память с сотней тысяч циклов записи/стирания.
    • Емкость хранения EEPROM данных, превышающая сорок лет
    • Альтернативный вариант прерывания при смене контакта
    • 8-битный таймер с 8-битным предварительным делителем TMRO
    • Поддерживает LIN, RS-232, RS-485 совместимость
    • 10-битный одиннадцатиканальный аналого-цифровой преобразователь

    PIC18f4520

    Популярный микроконтроллер PIC в основном используется во встроенных системах и системах автоматизации. Он поставляется как TQFP, PDIP или QFN. PDIP имеет 40 контактов, а остальные содержат 44-контактный интерфейс.Он содержит 10-разрядный АЦП, память данных EEPROM объемом 256 байт и ОЗУ объемом 1536 байт.

    Ключевые атрибуты

    • Два компаратора
    • 10-разрядный аналого-цифровой преобразователь с тринадцатью каналами
    • Хорошая выносливость памяти 1000000 и 100000 для EEPROM и памяти программ соответственно
    • Расширенная функция EUSART, полезная для установления последовательной связи с периферийными устройствами
    • 10- бит АЦП
    • Широкий диапазон рабочего напряжения 2.0В-5.5V
    • POR (сброс при включении)
    • Таймер включения (PWRT) и OST (таймер запуска генератора)
    • ICD через два контакта  

    PIC16f88 1 1

    Это популярный 8-разрядный микроконтроллер PIC с улучшенной технологией NanoWatt и флэш-процессором. Микроконтроллер PIC имеет три различных пакета: SSOP, PDIP и QFN. SSOP имеет 20-контактный корпус, а PDIP и QFN — 18-контактный и 28-контактный корпуса соответственно.

    Ключевые атрибуты

    • Объем программной памяти 7 КБ для хранения инструкций
    • 10-разрядный АЦП для преобразования аналогово-цифровых сигналов
    • Кварцевый генератор с частотой не более 20 МГц для взаимодействия с микросхемой, кроме генерации тактовых импульсов
    • 18 общее количество контактов PDIP
    • 2-5,5 В рабочего напряжения
    • Флэш-память программ
    • 256 байт EEPROM
    • 2 порта ввода/вывода и 16 контактов ввода/вывода
    • Два компаратора

    PIC16f676 / PIC16f8025 905 804a

    Это мощный и простой в программировании 8-разрядный микроконтроллер PIC на основе CMOS и флэш-памяти.PIC16f676 содержит мощную архитектуру микроконтроллера PIC® в 14-контактном корпусе. Это 10-битный аналого-цифровой преобразователь с восемью каналами, одним компаратором и памятью данных EEPROM. Он применяется в промышленных, автомобильных, потребительских и бытовых продуктах начального уровня, особенно в тех, которые требуют перепрограммирования на месте.

    Ключевые атрибуты

    • Память данных 128 байт EEPROM
    • Независимо выбираемые аналоговые каналы
    • Программируемые подтягивающие резисторы
    • Поддержка отладки или программирования ICD2 с дискретным адаптером заголовка сброс при включении питания

    PIC12f683

    8-контактный микроконтроллер CMOS PIC с флэш-памятью поставляется с технологией nanoWatt.Он предлагает преимущества, связанные с архитектурой x14 среднего уровня, включая стандартные функции. Такие функции делают его популярным микроконтроллером PIC для автомобильных и промышленных приложений.

    Ключевые атрибуты

    • Расширенный WDT
    • EEPROM 256 байт
    • Поддержка программирования или отладки MPLAB® ICD-2 в комплекте с адаптером бесплатного заголовка режимы
    • Энергосберегающий спящий режим
    • Сброс при включении питания
    • PWRT и OST
    • Программируемая кодовая защита
    • 1 мкА при 2.0 В Типовой ток сторожевого таймера

    PIC18f452

    Популярный и мощный микроконтроллер PIC представляет собой 8-разрядный микроконтроллер CMPS FLASH. Он содержит 34 контакта ввода-вывода и поставляется с одним 16-битным и 8-битным таймером, 10-битным аналого-цифровым преобразователем, периферийными устройствами SPI, I2C и USART.

    Ключевые атрибуты

    • 8-разрядный ЦП
    • Всего 34 контакта ввода-вывода
    • Модуль АЦП с одним 8-канальным и 10-разрядным
    • Нулевые компараторы
    • Один 8-разрядный и три 16-разрядных временных модуля
    • 2

      Это популярный и относительно новый тип микроконтроллера PIC, который не может работать на старых моделях устройств.PIC16f628 основан на программной памяти FLASH 3.5, 2 компараторах и одном CCP. Что делает его отличным вариантом, так это программирование низкого напряжения, программируемый BOR, встроенное опорное напряжение и другие функции.

      Ключевые атрибуты

      • 3.5kb Программа памяти
      • 1 CCP
      • Две максимальные 8-битные цифровые таймеры
      • -40 до 85 градусов
      • -40 до 85 градусов Гребень Cell Pins
      • 18 контактов в общей сложности
      • 1 USART

      PIC16F690

      8-битный микроконтроллер PIC от Microchip имеет 20-контактный интерфейс.Он включает в себя высокопроизводительный процессор RISC, который помогает в выполнении инструкций. Микропроцессор также имеет кварцевый генератор 20 МГц для интерфейсных целей и создания тактовых импульсов.

      Ключевые атрибуты

      • Всего 20 контактов
      • 2-5.5V Рабочее напряжение
      • 18 ввода / вывода Pins
      • 7K Program Program
      • 256 байтов EEPROM
      • 256 BYTE RAM
      • 10-битный ADC до 12 каналов
      • Макс. частота генератора 20 МГц
      • 1 USART
      • Два компаратора  

      PIC18f458

      Популярный микроконтроллер PIC поставляется с флэш-памятью объемом 32 КБ и совместим с наборами инструкций PIC17 и PIC16.Он использует передовую технологию CAN и применяется в автомобильном и промышленном секторах.

      Ключевые атрибуты

      • Высокопроизводительный RISC-процессор, совместимый с памятью линейных данных и программ объемом 1536 и 32 байт соответственно
      • Сильноточный источник/приемник 25 мА/25 мА
      • Один 16-битный или 8-битный счетчик с предделителем
      • 3-проводные SPI с битом IOA
      • POR и PWRT
      • 1000000 стандартные циклы записи / стирания WDT EEPROM
      • WDT в комплекте с On-Chip RC осциллятор
      • 33 ввода / вывода Pins и 40-контактный DIP

      PIC18F4620

      Микроконтроллер PIC оптимизирован и оснащен архитектурой RISC.Он работает на флэш-памяти и имеет скорость процессора 10 DMIPS/MIPS, что делает его тостом для некоторых людей. Его максимальный АЦП составляет 10 бит с CCP 1,

      .

      Ключевые атрибуты

      • 1 ADC
      • 64KB Программа памяти
      • 1 CCP
      • Два компаратора
      • один I2C
      • 2-5.5V Рабочее напряжение
      • 40 контактов в общей сложности
      • 1 USART
      • Диапазон температуры от -40 до 125 градусов Цельсия

      PIC 12f508   

      Популярный микроконтроллер PIC является высокопроизводительным, недорогим и 8-разрядным статическим микроконтроллером.Он использует флэш-технологию CMO с 8 контактами. Он также имеет DRT (таймер сброса устройства), который устраняет необходимость во внешней схеме сброса.

      Ключевые атрибуты

      • Базовый 8-битный CPU
      • в общей сложности 8 Pins
      • 6 ввода / вывода
      • один 8-битный модуль времени
      • один 8-битный модуль времени
      • 4 МГц внутренний осциллятор
      • 0.75KB-память
      • 25 байт данных EEPROM

      Заключительные мысли

      Всегда важно знать все о микроконтроллерах PIC, в том числе о различных типах, программировать их и т. д.Такая информация становится полезной при проектировании интегральных схем и электроники в целом.

    Добавить комментарий

    Ваш адрес email не будет опубликован.