Программаторы На Usb
Проекты: Программаторы и отладочные платы. Анастасия Попкова gtp-usb программатор pic. Какую скорость выставлять в настройках usb порта, чтобы программатор работал корректно?
Узнаем что такое ISP-интерфейс, разберемся с недорогим и удобным программатором USB ISP. Рассмотрим принципиальные схемы простейших программаторов для AVR микроконтроллеров с использованием COM и LPT портов компьютера. Данной информации вполне хватит чтобы прошить большинство моделей AVR микроконтроллеров не только в Linux, но и в других ОС.
Содержание:. Интерфейс внутрисистемного программирования ISP Для того чтобы записать программу в AVR микроконтроллер вам понадобится программатор. Программатор - это небольшая электронная схема, которая позволяет подключить микроконтроллер к одному из портов компьютера (COM, LPT, USB) для последующего считывания и записи прошивки (программирования). Существует достаточно много разнообразных конструкций программаторов для AVR микроконтроллеров, которые подключаются к разным портам компьютера. Наиболее надежный и удобный вариант - это программатор что подключается к USB-порту, поскольку в новых настольных компьютерах и ноутбуках уже не устанавливают COM и LPT порты.
В готовых устройствах программатор подключается к микроконтроллеру посредством интерфейса ISP (In System Programming) - интерфейс внутрисистемного программирования. ISP интерфейс представляет собою несколько проводников по которым поступает тактовый сигнал и данные для связки программатора с микроконтроллером. Как правило ISP интерфейс размещают на платах в виде десяти или шести штырьков, к которым посредством подходящего коннектора через шлейф подключается программатор. ISP интерфейс на плате. Назначение пинов в ISP интерфейсе:. VCC - плюс питания, как правило +5В;. GND - минус питания, земля (Ground);.
MOSI - вход данных (Master Out Slave In);. MISO - выход данных (Master In Slave Out);. SCK - тактовый сигнал (Serial Clock);. RST - дла подачи сигнала сброса (Reset).
Для внутрисхемного программирования микроконтроллера достаточно всего 4 пина, поскольку питание микроконтроллера может осуществляться от самой схемы где он установлен. Как подключить программатор к микросхеме-микроконтроллеру AVR если он не впаян в схему? - очень просто, используя те же пины ISP интерфейса, при необходимости запитав при этом микроконтроллер от источника питания. Программатор USB ISP ASP Для работы с AVR чипами я приобрел недорогой USB ISP программатор по цене примерно 10$. Такое устройство есть сейчас в продаже во многих отечественных и зарубежных интернет-магазинах, так что с покупкой проблем не должно возникнуть.
USB ISP - программатор со шлейфом для внутрисхемного программирования AVR микроконтроллеров фирмы ATMEL. Данный программатор безопасен в использовании, имеет небольшие размеры и поддерживается большинством программ для прошивки микроконтроллеров AVR. USB ISP работает под операционными системами Linux, Mac OS X и Windows. Для Linux никаких драйверов устанавливать не нужно, после подключения программатора к USB порту устройство сразу же определится и будет готово к использованию. Ниже приведу распиновку коннекторов программатора USB ISP - она нам потом пригодится при подключении к микроконтроллеру.
Расположение пинов на разъеме USB ISP (распиновка). Расположение контактов в гнездах коннектора подключенного к программатору USB ISP. Что делать если нет возможности купить программатор USB ISP? - можно программировать микроконтроллеры используя несложные самодельные программаторы что подключаются к COM или LPT порту, но лучше самому изготовить USB ISP при этом один раз запрограммировав микросхему-микроконтроллер для него простым самодельным программатором через COM или LPT порт. Принципиальная схема самодельного программатора USB ASP ISP.
Подробную информацию по изготовлению USB ASP, а также печатные платы, драйвера и прошивку для микроконтроллера можно найти на официальном сайте: К тому же в интернете достаточно много ресурсов по данному свободному программатору, есть много готовых разводок печатных плат, в том числе и в программе SprintLayout, поэтому подробно в данной статье останавливаться на этом не будем. Программатор с использованием COM-порта Этот программатор еще называют 'программатором Громова', в честь того кто придумал эту схему, создателя программы Algorithm Builder (графическая среда для программирования AVR под Windows используя алгоритмический язык) - Г.Л. Данный программатор позволяет программировать AVR чипы используя COM порт компьютера - интерфейс RS232. Для сборки такого программатора потребуется минимум деталей - 3 диода, 7 резисторов, разъем DB-9 или DB-25(в зависимости от того какой ответный разъем установлен у вас в компьютере) и коннектор ISP для подключения к микроконтроллеру (или же просто несколько проводников к чипу).
Диоды в схеме можно использовать любые маломощные. Принципиальная схема программатора AVR микроконтроллеров через COM порт компьютера. Для полноты информации ниже приведу распиновку портов RS-232 для вариантов DB-9 и DB-25. RS232 - COM Port, DB-9 расположение выводов.
RS232 COM Port DB-25 - расположение выводов на разъемах. Программатор с использованием LPT-порта Как мы знаем, LPT порт компьютера предназначен для подключения локального принтера (Local Printer Port), но тем не менее его часто используют для подключения различных устройств и самоделок. В данном случаем мы можем его использовать для программирования AVR микроконтроллеров, собрав для данной цели очень простую схему что приведена ниже. Принципиальная схема программатора для AVR микроконтроллеров с использованием LPT порта компьютера.
Как видим, схема еще проще чем в варианте с, здесь нам нужны всего лишь 4 маломощных резистора и разъем (папа, со штырьками) для подключения к LPT порту компьютера. Расположение пинов для разъемов LPT-порта. Все детали и соединения можно разместить в корпусе LPT-разъема, а для подключения к микроконтроллеру вывести шлейф с коннектором под ISP-интерфейс или же просто необходимые проводники для подключения к микро-чипу. Программное обеспечение и заметки Подключив COM или LPT программатор к микроконтроллеру нужно не забыть подать питание на сам микрочип.
В качестве источника питания микроконтроллера можно использовать батарейки или блок питания со стабилизатором, это будет наиболее безопасно как для порта компьютера, так и для чипа. О том как использовать мы уже рассматривали.
Под Linux есть очень мощная программа которая умеет работать с USB ASP, COM и LPT программаторами - это программа AVRDUDE, о ней будет идти речь в следующих разделах. Для прошивки AVR чипов под Windows с использованием данных COM и LPT программаторов нужна программа UniРrof от Николаева, которая представляет собою универсальный программатор для AVR (avr.nikolaew.org). Программа UniProf (Windows) - (400кБ). Будьте предельно внимательны и осторожны при сборке и использовании программаторов с использованием COM или LPT порта компьютера, простой ошибкой можно запросто подпалить эти порты. Для нормальной работы таких программаторов нужно стараться использовать по возможности максимально короткие проводники от разъема к схеме программатора и микроконтроллеру. Микропроцессор компьютера желательно чтобы имел частоту не более 1-2 ГГц, а в качестве ОС для программирования чипов желательно использовать Win2000 или WinXP.
Также важно знать что переходники USB-RS232 (USB-COM Port) скорее всего не будут работать с программатором Громова, заработают возможно только те у которых стоят более новые микросхемы, так что лучше искать машину с родным COM-портом. Заключение Программаторы что рассмотрены в статье - это всего лишь несколько наиболее доступных и простых решений из большого списка программаторов для AVR: USBTinyISP, AVR-Doper, AVR vusbtiny, AVRISP-MkII, программаторы на FTDI и другие. Теперь в любом случае вы сможете собрать доступный вам программатор и прошить хотя бы одну микросхему, на основе которой можно собрать другой более удобный программатор или же какое-то устройство. Интеллигентный торрент трекер.
В следующей статье мы разберемся как подключить разные модели AVR микроконтроллеров к программатору, узнаем где брать информацию о распиновке микроконтроллеров. Начало цикла статей:.
Цена готовых USB-программаторов довольно высока и лучшим решением будет собрать его самостоятельно. Вот схема предлагаемого устройства (картинки кликабельны). Основная часть. Панель установки МК. Исходная схема взята с сайта с разрешения автора, за что ему большое спасибо. Это так называемый клон фирменного программатора 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 и др.) широко используются в бытовой радиоаппаратуре, и их иногда приходится прошивать при ремонте, например, телевизоров. В связи с этим мне и пришлось 'допиливать' программатор.
Программатор На Usb
Травить новую печатную плату я не стал, просто добавил необходимые элементы на печатной плате. Вот что получилось. Ядром устройства является микроконтроллер PIC18F2550-I/SP. Это единственная микросхема в устройстве.
МК PIC18F2550 необходимо 'прошить'. Эта простая операция у многих вызывает ступор, так как возникает так называемая проблема 'курицы и яйца'. Как её решил я, расскажу чуть позднее. Список деталей для сборки программатора. Напряжение для высоковольтного программирования (Vpp) от +8,5 до 14 вольт создаётся ключевым стабилизатором. В него входят элементы VT1, VD1, L1, C4, R4, R10, R11. С 12 вывода PIC18F2550 на базу VT1 поступают импульсы ШИМ.
Обратная связь осуществляется делителем R10, R11. Чтобы защитить элементы схемы от обратного напряжения с линий программирования в случае использования USB-программатора в режиме внутрисхемного программирования ICSP (In-Circuit Serial Programming) применён диод 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. Ссылка на файл PK2V023200.hex, запакованный в архив rar, дана в конце статьи. Залить 'прошивку' в МК 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, я рассказал в отдельной статье. Необходимые файлы:.
Описание Программатора
(PK2V023200.hex);. в формате.lay;. Программа;. Руководство пользователя PICkit2 (рус.) берём.