Как сделать USB-программатор для AVR микроконтроллеров самостоятельно. Какие детали нужны для сборки. Как прошить и настроить программатор. Какое программное обеспечение использовать для работы с AVR.
Зачем нужен USB-программатор для AVR
USB-программатор — это важный инструмент для работы с микроконтроллерами AVR от компании Atmel. Он позволяет загружать прошивку в микроконтроллер и менять настройки его фьюз-битов. Без программатора невозможно запустить свою программу на AVR микроконтроллере.
Готовые фирменные программаторы часто стоят дорого. Поэтому многие радиолюбители предпочитают собирать программаторы самостоятельно. Это позволяет сэкономить и получить устройство с нужными характеристиками.
Какую схему выбрать для самодельного программатора
Одной из самых популярных и проверенных схем является USBasp. Это простой программатор на основе микроконтроллера ATmega8. Он имеет следующие преимущества:
- Простая схема с минимумом деталей
- Работает через USB без дополнительного питания
- Поддерживает большинство популярных микроконтроллеров AVR
- Имеет открытую прошивку с возможностью модификации
- Совместим со многими программами для работы с AVR
Схема USBasp была разработана Томасом Фишлем и хорошо себя зарекомендовала. Ее можно рекомендовать для самостоятельной сборки.
Какие детали нужны для сборки USBasp программатора
Для сборки программатора USBasp потребуются следующие компоненты:
- Микроконтроллер ATmega8 в корпусе TQFP32
- Кварцевый резонатор на 12 МГц
- Два конденсатора по 22 пФ
- Резисторы: 2 x 68 Ом, 2 x 2.2 кОм
- Два стабилитрона на 3.6В
- Два светодиода
- Разъем USB тип B
- Разъем IDC-6 для подключения к программируемому МК
- Печатная плата
Все детали широко доступны и недороги. Общая стоимость комплектующих обычно не превышает 300-400 рублей.
Как изготовить печатную плату для программатора
Печатную плату для USBasp программатора можно изготовить одним из следующих способов:
- Методом лазерно-утюжной технологии (ЛУТ)
- Рисованием токопроводящим маркером
- Фрезеровкой на ЧПУ-станке
- Травлением через фоторезист
Самый простой способ для домашних условий — это ЛУТ. Рисунок платы печатается на глянцевой бумаге и переносится на текстолит с помощью утюга. Затем плата травится в растворе хлорного железа.
Готовую плату необходимо тщательно зачистить от остатков тонера и облудить все дорожки. Это обеспечит надежность соединений.
Как прошить управляющий микроконтроллер программатора
Чтобы программатор заработал, необходимо записать в его микроконтроллер ATmega8 специальную прошивку. Сделать это можно несколькими способами:
- С помощью другого программатора (например, через LPT-порт)
- Через Arduino в режиме ISP-программатора
- С помощью готового USBasp-программатора
Прошивку для USBasp можно скачать с официального сайта проекта. Ее нужно загрузить во Flash-память и правильно настроить фьюз-биты ATmega8.
Для программирования удобно использовать программу AVRDUDE или графическую оболочку к ней — AVRDUDESS.
Как подключить и настроить драйвер программатора
После сборки и прошивки программатор нужно подключить к компьютеру через USB-кабель. При первом подключении Windows предложит установить драйвер устройства.
Для USBasp программатора используется стандартный драйвер libusb-win32. Его можно скачать с официального сайта проекта USBasp.
Порядок установки драйвера:
- Скачать и распаковать архив с драйвером
- Подключить программатор к USB
- В диспетчере устройств найти «Unknown Device»
- Обновить драйвер, указав путь к распакованным файлам
- Согласиться с установкой неподписанного драйвера
После успешной установки драйвера программатор будет определяться в системе как «USBasp».
Какие программы использовать для работы с AVR через USB-программатор
Для программирования AVR микроконтроллеров через USBasp можно использовать следующее ПО:
- AVRDUDE — консольная утилита для прошивки AVR
- AVRDUDESS — графический интерфейс для AVRDUDE
- Khazama AVR Programmer — удобная программа с GUI
- Atmel Studio — полноценная среда разработки для AVR
- AVR8 Burn-O-Mat — простая утилита для новичков
Для начала работы рекомендуется использовать Khazama AVR Programmer. Эта программа имеет простой интерфейс и позволяет прошивать микроконтроллеры, настраивать фьюзы и работать с EEPROM.
Как проверить работоспособность собранного программатора
Чтобы убедиться, что самодельный программатор работает корректно, можно выполнить следующие тесты:
- Подключить программатор к компьютеру — должны загореться светодиоды
- Запустить Khazama AVR Programmer и проверить подключение
- Попробовать считать сигнатуру подключенного AVR микроконтроллера
- Записать тестовую прошивку в микроконтроллер и проверить ее работу
Если все тесты пройдены успешно, значит программатор полностью работоспособен и готов к использованию в проектах с AVR микроконтроллерами.
Преимущества самодельного USB-программатора
Сборка USB-программатора для AVR своими руками имеет ряд преимуществ:
- Низкая стоимость по сравнению с готовыми решениями
- Возможность модификации под свои нужды
- Компактные размеры устройства
- Получение опыта работы с AVR микроконтроллерами
- Понимание принципов работы программатора
Самодельный программатор позволяет сэкономить средства и получить полезный инструмент для разработки устройств на базе AVR.
Заключение
Сборка USB-программатора для AVR своими руками — это интересный и полезный проект для радиолюбителей. Он позволяет получить недорогое устройство для работы с микроконтроллерами и приобрести ценный опыт. При правильном подходе самодельный программатор не уступает по функциональности готовым решениям.
Программатор из флешки своими руками. Миниатюрный USB программатор для AVR микроконтроллеров. Интерфейс внутрисистемного программирования ISP
Данный программатор не нуждается в первичном программировании — протравил печатную плату, спаял и пользуйся. Автор данного устройства указан в конце статьи, а здесь приведу небольшую выдержку из руководства, чтоб было понятнее, о чём речь: правильный USB-программатор – вещь, фактически, универсальная. Его можно воткнуть в любой современный компьютер и без проблем перешить нужный микроконтроллер с любым объемом FLASH-памяти на довольно высокой скорости. Но ключевое слово здесь – «правильный», который нормально работает без настройки и танцев с бубном над ним сразу же после установки и монтажа деталей. Который не глючит при переходе от одного ПК к другому или смене ОС. Правильный – это такой, драйвера на который есть для любой современной широко используемой версии ОС, и эти дрова неглючные. Каждый определит еще с десяток критериев правильности для себя лично, но вышеперечисленные – основные, без соблюдения которых нормально работать с микроконтроллером невозможно будет в принципе.
В настоящее время в Интернете полно различных схем USB-программаторов для AVR . Условно их можно разделить на две большие группы.
Первая группа включает в себя программаторы, построенные на основе микроконтроллеров (в частности, AVR). Собирал несколько штук программаторов от Prottoss’а (AVR910), себе и своим знакомым, а также несколько штук USBasp. Двое из знакомых, одаренных сиими дывайсами, в восторге. Удачно шьют камни в течение уже нескольких лет. У остальных (в частности – у меня лично) собранные программаторы особой радости не вызвали. Не говорю, что они плохие, просто вот так складывались обстоятельства: на одном компьютере работает, на другом нет. Или, проработав пару часов, оказывались невидимыми для софта, через который шьется камень. И много еще чего. Сразу оговорю – я не разбирался с прошивкой контроллеров, на которых данные программаторы собраны. Правда, перепробовал кучу программ-прошивальщиков, через которые данные программаторы, вроде как без проблем должны шить камни.
Однако, результат в виде частых глюков меня не особо удовлетворил. Исключение составила только программа AVRDUDE в комплексе с графической оболочкой SinaProg, но о ней я узнал слишком поздно. Кстати, заметил такую тенденцию: чем древнее железо ПК, тем лучше работают данные программаторы. Ну и самый неприятный момент для тех, кто выбрал второй вариант знакомства с микроконтроллерами AVR – чтобы программатор заработал, нужно чем-то прошить входящий в его состав камень. То есть получается так: чтобы пользоваться программатором нужно сделать/найти программатор, чтобы прошить мозги этого программатора. Вот такой вот замкнутый круг.И вторая группа USB-программаторов включает в себя решение на базе специализированной микросхемы FT232Rx. В свое время данная микросхема стала своего рода революцией. Мало того, что она без особых заморочек для разработчика преобразует USB в UART (и, наверное, 95% разработчиков используют ее именно в этих целях). Она еще умеет эмулировать полноценный COM-порт, причем состояние «второстепенных» линий (таких, как RTS, CTS, DTR и т. д.) можно задать/считать не из виртуального COM-порта, а напрямую через драйвер FTDI (разработчика FT232Rx). Таким образом, появилось новое, без необходимости первичной прошивки мозгов программатора, решение, для прошивки микроконтроллеров, причем, довольно быстрое.
Данная схема просто направляет сигналы MOSI, MISO, SCK и RESET, которые формируются на выводах DCD, DTR, RTS и DSR микросхемы DD1 (FT232RL) соответственно, на нужные выводы прошиваемого микроконтроллера (т.е., фактически является аналогом «древних» программаторов). Причем, делает это только в момент программирования камня, в остальные моменты времени программатор отключен от прошиваемой платы за счет 4-х буферных элементов микросхемы DD2 (74HC125D). Состояние линий MOSI, MISO, SCK и RESET устанавливается/считывается прошивающим софтом на компьютере. Передача данных между ПК и микросхемой FT232RL идет по шине USB (от которой еще и получает питание программатор).
Светодиод HL2 («PWR») сигнализирует о подаче на программатор
напряжения питания с шины USB. Светодиод HL1 («PROG») индицирует процесс
прошивки микроконтроллера (горит только во время прошивки). Вот, в
принципе, и все описание собственно схемы электрической принципиальной.
Единственное что хотелось бы отметить: во-первых, для подключения
программатора к прошиваемой плате используется разъем IDC-10MR (XP2
«ISP»), распиновка которого совпадает с широко распространенной
распиновкой разъема программатора
XP2 «ISP» разъем для подключения устройства к программируемому микроконтроллеру
XP3 «MISC» разъем для использования дополнительных функций программатора
В общем микросхема FT232RL имеет довольно серьёзный потенциал для разработчика (например, линии шины CBUS можно использовать как обычные линии ввода-вывода микроконтроллера), поэтому неплохо бы иметь доступ ко всем ее выводам. Ну и доступ к напряжениям +5,0 В и +3,3 В тоже лишним никогда не будет. В приклеплении печатная плата и полное подробное описание. Разработка и мануал — [email protected] , испытание — SssaHeKkk .
Какие первые шаги должен сделать радиолюбитель, решивший собрать схему на микроконтроллере? Естественно, необходима управляющая программа — «прошивка», а также программатор.
И если с первым пунктом нет проблем — готовую «прошивку» обычно выкладывают авторы схем, то вот с программатором дела обстоят сложнее.
Цена готовых 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, я рассказал в отдельной статье. Следующий шаг .
Необходимые файлы:
Как театр начинается с вешалки, так программирование микроконтроллеров начинается с выбора хорошего программатора. Так как начинаю осваивать микроконтроллеры фирмы ATMEL, то досконально пришлось ознакомится с тем что предлагают производители. Предлагают они много всего интересного и вкусного, только совсем по заоблачным ценам. К примеру, платка с одним двадцатиногим микроконтроллером с парой резисторов и диодов в качестве обвязки, стоит как «самолет». Поэтому остро встал вопрос о самостоятельной сборке программатора. После долгого изучения наработок радиолюбителей со стажем, было решено собрать хорошо зарекомендовавший себя программатор USBASP, мозгом которого служит микроконтроллер Atmega8 (так же есть варианты прошивки под atmega88 и atmega48). Минимальная обвязка микроконтроллера позволяет собрать достаточно миниатюрный программатор, который всегда можно взять с собой, как флэшку.
Автором данного программатора является немец Thomas Fichl, страничка его разработки со схемами, файлами печатных плат и драйверами.
Раз решено было собрать миниатюрный программатор, то перерисовал схему под микроконтроллер Atmega8 в корпусе TQFP32 (распиновка микроконтроллера отличается от распиновки в корпусе DIP):
Перемычка J1 применяется, в случае если необходимо прошить микроконтроллер с тактовой частотой ниже 1,5МГц. Кстати, эту перемычку вообще можно исключить, посадив 25 ногу МК на землю. Тогда программатор будет всегда работать на пониженной частоте. Лично для себя отметил, что программирование на пониженной скорости на доли секунды дольше, и поэтому теперь перемычку не дёргаю, а постоянно шью с ней.
Стабилитроны D1 и D2 служат для согласования уровней между программатором и USB шиной, без них работать будет, но далеко не на всех компьютерах.
Светодиод blue показывает наличие готовности к программированию схемы, red загорается во время программирования. Контакты для программирования выведены на разъем IDC-06, распиновка соответствует стандарту ATMEL для 6-ти пинового ISP разъема:
На этот разъем выведены контакты для питания программируемых устройств, здесь оно берется напрямую с USB порта компьютера, поэтому нужно быть внимательным и не допускать кз. Этот же разъем применяется и для программирования управляющего микроконтроллера, для этого достаточно соединить выводы Reset на разъеме и на мк (см. красный пунктир на схеме). В авторской схеме это делается джампером, но я не стал загромождать плату и убрал его. Для единичной прошивки хватит и простой проволочной перемычки. Плата получилась двухсторонняя, размерами 45х18 мм.
Разъем для программирования и перемычка для снижения скорости работы программатора вынесены на торец устройства, это очень удобно
Прошивка управляющего микроконтроллера
Итак, после сборки устройства осталось самое важное — прошить управляющий микроконтроллер. Для этих целей хорошо подходят друзья у которых остались компьютеры с LPT портом:) Простейший программатор на пяти проводках для AVR
Микроконтроллер можно прошивать с разъема программирования, соединив выводы Reset микроконтроллера (29 нога) и разъема. Прошивка существует для моделей Atmega48, Atmega8 и Atmega88. Желательно использовать один из двух последних камней, так как поддержка версии под Atmega48 прекращена и последняя версия прошивки датируется 2009 годом. А версии под 8-й и 88-й камни постоянно обновляются, и автор вроде как планирует добавить в функционал внутрисхемный отладчик. Прошивку берем на странице немца. Для заливки управляющей программы в микроконтроллер я использовал программу PonyProg. При программировании необходимо завести кристалл на работу от внешнего источника тактирования на 12 МГц. Скрин программы с настройками fuse перемычек в PonyProg:
После прошивки должен загореться светодиод подключенный к 23 ноге микроконтроллера. Это будет верный признак того, что программатор прошит удачно и готов к работе.
Установка драйвера
Установка велась на машину с системой Windows 7 и никаких проблем не возникло. При первом подключении к компьютеру выйдет сообщение об обнаружении нового устройства, с предложением установки драйвера. Выбираем установку из указанного места:
Мигом появится окно с предупреждением о том, что устанавливаемый драйвер не имеет цифровой подписи у мелкомягких:
Забиваем на предупреждение и продолжаем установку, после небольшой паузы появится окно, сообщающее об успешном окончании операции установки драйвера
Все, теперь программатор готов к работе.
Khazama AVR Programmer
Для работы c программатором я выбрал прошивальщик Khazama AVR Programmer . Замечательная программка, с минималистичным интерфейсом.
Она работает со всеми ходовыми микроконтроллерами AVR, позволяет прошивать flash и eeprom, смотреть содержимое памяти, стирать чип, а также менять конфигурацию фьюз-битов. В общем, вполне стандартный набор. Настройка фьюзов осуществляется выбором источника тактирования из выпадающего списка, таким образом, вероятность залочить кристалл по ошибке резко снижается. Фьюзы можно менять и расстановкой галок в нижнем поле, при этом нельзя расставить галки на несуществующую конфигурацию, и это тоже большой плюс в плане безопасности.
Запись фьюзов в память мк, как можно догадаться, осуществляется при нажатии кнопки Write All. Кнопка Save сохраняет текущую конфигурацию, а Load возвращает сохраненную. Правда я так и не смог придумать практического применения этих кнопок. Кнопка Default предназначена для записи стандартной конфигурации фьюзов, такой, с какой микроконтроллеры идут с завода (обычно это 1МГц от внутреннего RC).
В общем, за все время пользования этим программатором, он показал себя с наилучшей стороны в плане стабильности и скорости работы. Он без проблем заработал как на древнем стационарном пк так и на новом ноутбуке.
Скачать файл печатной платы в SprintLayout можно по
06-01-2011
Описание
Этот простой AVR программатор позволит вам безболезненно загружать программы в формате hex в большинство AVR микроконтроллеров от ATMEL, не жертвуя своим бюджетом и временем. Он более надежен, чем большинство других простых доступных AVR программаторов, и на его сборку уйдет гораздо меньше времени.
AVR программатор состоит из внутрисхемного последовательного программатора (с разъемом) и маленькой печатной платы с DIP панелькой, в которую вы можете поместить свой микроконтроллер и быстро его запрограммировать.
Вы также можете использовать этот программатор только как внутрисхемный, с помощью которого можно легко программировать AVR микроконтроллер, не извлекая его из устройства.
Весь AVR программатор собирается из широко распространенных компонентов и умещается в корпусе разъема COM порта. Печатная плата с DIP панелькой позволяет вставлять в нее 28-выводной AVR микроконтроллер ATmega8 в корпусе DIP, но вы можете изготовить печатные платы для микроконтроллеров в любых других корпусах. Этот программатор совместим с популярным ПО PonyProg, которое показывает вам ход процесса прошивки в виде шкального индикатора статуса.
Внутрисхемный последовательный программатор AVR
Плата с панелькой для AVR
Плата имеет минимальное количество компонентов и используется для программирования микроконтроллеров вне целевого устройства.
Плата включает в себя 28 выводную DIP панельку, кварцевый резонатор на 4 МГц или резонатор с двумя конденсаторами по 22 пФ, и два разъема. Двухконтактный разъем служит для подключения к AVR микроконтроллеру питания +5 В, а 6-контактный — для подключения программатора.
Питание микроконтроллера от внешнего источника напряжения, а не непосредственно от последовательного порта, гарантирует, что контроллер получит именно 5 В и обеспечит надежную и безошибочную прошивку.
ПО PonyProg
Чтобы иметь возможность загружать hex файлы из компьютера в микроконтроллер, вам потребуется скачать и установить ПО . После установки, первое, что предстоит сделать, это сконфигурировать PonyProg для работы с AVR программатором. Для того, чтобы сделать это, войдите в меню «Setup» и выберите пункт «Interface Setup». Ниже на рисунке подсвечены именно те опции, которые вам следует выбрать.
Следующим шагом выберите «AVR micro» и тип микроконтроллера, который хотите запрограммировать (например ATmega8).
Теперь конфигурирование PonyProg завершено, и мы можем открыть hex файл с программой, которая будет зашита в микроконтроллер. Перейдите в меню «File», выберите «Open Program (FLASH) File …» и укажите на hex файл, который надо зашить. Вы должны увидеть шестнадцатеричные значения, примерно такие, как показаны на рисунке ниже. Если вы все еще не подключили программатор к последовательному порту компьютера, то сейчас самое время это сделать. Убедитесь, что ваш программатор физически подключен к AVR микроконтроллеру через плату с панелькой или 6 контактный разъем ICSP. Наконец, кликните на подсвеченной иконке «Write Program Memory (FLASH)» или идите в меню «Command» и выберите «Write Program (FLASH)».
Кликните на кнопке «Yes», чтобы подтвердить запись.
Теперь сядьте поудобнее, расслабьтесь и наблюдайте за процессом программирования по индикатору состояния. PonyProg прошьет AVR микроконтроллер и проверит, загрузился ли hex файл без ошибок. Этот процесс обычно занимает от 10 до 30 секунд, в зависимости от размера программы, которую вы будете зашивать в микроконтроллер.
После программирования появится окно «Write successful», показывающее, что AVR микроконтроллер был запрограммирован и теперь готов к использованию.
- Проверяйте монтаж и подключение к целевому микроконтроллеру.
- ну в этой схеме нет ничего военного и изготовлять ее не надо а включил ком порт лоника в комп и вперед,правда в моем еще по ком порту стоит буфер чтобы случайно не сжечь.А что касаеться по пользованию прогой пони -забыли про одно из главного сказать-про фьюзы.ведь неправильно установишь и микросхема залочиться
- ком порт устарел. если есть только usb то работу с контроллерами можно считать оконченой даже не начав???? usb-com ни кто в сети не предлогает.а если и предлогают то в схеме как раз стоит контроллер. если уж собирать самому то с нуля. а не так как сейчас многие делают, заказал конструктор, напихал в дырки элементов,запаял,и всё.таких гениев на службе хватает. а подойдёш к такиму с вопросом он и толком знать не знает. а ведь хочется знать подробно.
- Ну конечно никто (пишется слитно!) не предлАгает. Поскольку куча готовых микросхем есть в типовом включении — мостов USB-COM на 5В и 3. 3В питания. Но шибко грамотные граждане естественно об этом не знают. Про AVR910-аналог от Проттоса тоже не знают, в котором МК по USB виртуальный COM-порт изображает и программирует по ISP. Например. У буржуев тоже куча аналогичных конструкций. И описаний подробных конечно нет — это же искать надо. А хочется сразу готовенького — нажал на одну кнопку и все-все на блюдечке с голубой каемочкой. А может лучше уроки учить?
- много уважаемый SergeBS этот форум не для орфографических ошибок и тем более не для поучений о том что оно есть. тут помощи и совета просят у людей которые знают и сталкивались с той или иной проблеммой. а то что есть готовое и можно купить и не напрягаться это конечно круто. P.S тем не менее спасибо ВАМ за участие в проблемме. И ОТДЕЛЬНОЕ ЗА ОЧЕНЬ ПРИГОДИВШИЕСЯ ПОУЧЕНИЯ. буржуям привет, а то что у них до?рена чего есть этого то я и знать не мог. куда нам крестьянам.
- Угу. Типа «крютые», которые как хотят так и пишут. Причем «проблемму» и сформулировать не могут. Сопли типа:»хачу чавой-то знать, а чаво — ня знаю самм» — не в счет.:)
- Вы ещё не знаете из чего всё это делается… На китайской барахолке детали для ваших схем продают на вес килограммами и никакие стандарты качества к таким деталям не имеют отношения. Покупайте только фирменные товары в соответствующих фирмах.
- Заказываю в Интернет-магазинах (российских). Пока (тьфу * 3) на брак/халтуру и т.п. не налетал.
- Здравствуйте! Всех с наступающим Новым Годом! 🙂 Собрал программатор для AVR по указанной схеме (проверял 3 раза все). Но понипрог 2000 отказывается видеть и программировать контроллер ATMega168-20PU — выдает ошибку device missing or unknown device (-24). Использовал стабилитроны КС407Г, Транзистор КТ3102АМ и диод КД522Б. Кварц у меня был на 4.032 МГц. Питание от L7805. Перед возникновением ошибки успевают придти сервисные сообщения, которые я мониторю с помощью Advanced Serial Port Monitor, но там только включение и выключение Break в процессе записи. Никакие данные не уходят. Настраивал ПониПрог2000 все по инструкции. Шаг за шагом. С чем эта ошибка может быть связана? Нужно ли подсоединять 22 ножку к земле и 20 к питанию (аналоговые земля и питание)? Почему не используется чип-селект (SS ножка 16 контроллера)? Спасибо за помощь!
- Я собрал этот программатор и использовал: Резисторы — указанных номиналов Транзистор — KT3102ГМ Диод h58 это аналог 1N4148 Стабилитроны — BZX55C 5.1 вольта Также кварц на 4Мгц и 2 керамических конденсатора на 22 пФ, но я не думаю что они обязательны т.к. использование кварца внутренний/внешний мы устанавливаем программируемыми битами, с завода микрухи запрограммированы использовать внутрений кварц(если я не ошибся) Внешнее питание от +5В обязательно.Я подключил от БП того же ПК с которого заливал прошивку. Диод h58 (такая маркировка на присутствует на корпусе этого диода) на просторах интернета говорят что это аналог 1N4148. У меня всё работает, ПониПрог 2000 успешно залила прошивку в ATmega8. Фото http://i.imgur.com/34GhDcN. jpg http://i.imgur.com/gCzAuzA.jpg
- Посоветую один из проектов avr mk ii clone, на базе либы и примера от lufa. Контроллер at90usb168 обычно идет с бутлоадером, позволяющим после сборки залить прошивку через usb без внешнего программатора. Поддерживает все нынешние avr, включая xmega и новые тиньки, pdi/tpi протокол. Работает с avrstudio и dude, разные прошивки для них. Исходники открыты, шишки отработаны. Например, для новых студий достаточно инкрементить версию fw в настройках прошивки. Собирается прошивка под winavr. Мой вариант в этой теме, от 12 года. С фоточкой. http://m.radiokot.ru/forum/viewtopic…rt=700&t=26417
- Здраствуйте.собрал этот прогроматор для прошивки ATtiny 2313 все работае прог.читаем МК без проблем но вот такая проблема атор схемы для которой я прошиваю МК написал что первый раз можно прошивать без внешнего кварца,но при этом сперва заливать прошивку МК,а потом менять Fuse короче я залил прошивку,встала нормально,потом поменял Fuse и нажал Write но после таго как я нажал Write вылезла вот это Device missing or unknown device (-24) и после этого больше МК не читаеться в чом может быть проблема
- это обратно я подскажите пожалуста попробывал прошить ATtiny 2313 с внешним
кварцем ипоставил 2 конденсатора,кварц на 8 МГц,подк. прогром.он прочитал МК
открыл прошивку в пони выставил Fuse какие надо вот это заводские
View post on imgur.com
а вот такие надо прошитьView post on imgur.com
но еще что я заметил в заводских стоит одна галочка которую нельзя убрать называеться SPIEN ,а какие надо прошить там нет этой галочки ну ладно дальше продолжу свою проблему после таго как я откры прошивку и выставил Fuse как на второй картинке я нажал READ DEVICE пошол процес прошивки и в завершении вышло вот этоView post on imgur.com
потом я закрыл пони и открыл снова и нажал прочитать МК и получил вот это Device missing or unknown device (-24) такое же что я прошивал без внешнего кварца,выше описанное,и после этого этот МК больше не читался кто может сказать в чом дело,что я зделал не так Просто уже 3 МК убил большое спасибо прото я в этом новичок - У меня эта ошибка вылазила только когда я внешнее питанее не подключал, ну естественно у тебя в схеме могут быть ошбки, может ты не на ту микруху пони прог настроил(но маловероятно ведь прошивка залилась я сам новичёк. ) SPIEN – фьюз, который разрешает работу МК по интерфейсу SPI. Все микроконтроллеры выпускаются с уже установленным битом SPIEN. Считается опасным фьюзом…
- Fuse-бит SPIEN установлен по умолчанию в микроконтроллерах AVR (режим внутрисхемного программирования) и с помощью PonyProg его убрать не получится. Да и вообще его лучше не трогать… Установив и запрограммировав Fuse-биты как на последней картинке, вы настроили мк на работу от внешнего кварца 8 Мгц, отключили внутренний делитетель тактовой частоты на 8 и включили Brown-Out Detector (модуль контроля питания) с уровнем 2.7 В. И после этого программатор микроконтроллер не увидел, поэтому логично было бы подать на микроконтроллер внешнее питание (не от PonyProg) и попробовать прочитать его снова. PS: Конечно, если изначально все было сделано корректно (тип микроконтроллера в программаторе ри программировании был выбран правильно и Fuse-биты были правильно установлены)
- спасибо за ответ просто я прошил на 3 МК нету прошивку и теперь прогром. не видет их и мне надо их перешить и я всегда подовал внешние питание при прошивки но пони всеравно его не видит,но МК работает,я вставлял ее на прибор для кокого я ее прошивал все три рабочие,но мне надо туда другие залить Я спросил у автора схемы для которой я их прошивал как их перешить он мне сказал что если с внешним кварцем неопределяеться то надо еще внешний генератор тактовой частоты делать и подовать сигнал на МК XTAL 1 и тогда прогром. увидет МК если кто может кинте не сложную схемку внешний генератор тактовой частоты сколько гуглил не чего чот не нашол или может кто другой способ а Fuse мне обезателно надо было помннять как на второй картинке потомучто с заводскими работать не будет спасибки за помощь
- Спасибо за статью! Отличный адаптер. Работает шустро, без ошибок. Я первым делом под LPT порт спаял, не было под рукой COM штекера. Дак LPT порт сгорел на первой же заливке. Пришлось бежать за COM штекером в магаз. Так же рекомендую спаять фьюз доктора — очень полезная штука. Я первый-же кристал так отфьюзил, казалось что он выпустил свою душу (синий дымок), а нннет! — Дохдур фьюз его моментально вернул к жизни. Вот и выходит: этот адаптер + док фьюз = полноценный параллельный программатор.
- После «синего дымка» ни один доктор его бы к жизни не вернул. А «Доктор фьюз» — да, наверное, иногда может быть полезным. Но почти всегда удается обойтись и без него, нужно только затактировать МК не от кварца, а от внешнего генератора…
- А вот мне посчастливилось, при первом же конфигурировании фьюзов, захлопнуть так, что ни один генератор не спасёт. Я не знал, что бывают 2 варианта отображения фьюзов: Прямой (исторический, канонический) и инвертированный (интуитивно удобный). Вот я и выставил в каноническом галки с фото инвертированного. Кстати, PonyProg, оперирует фьюзами в инвертированном представлении.
- Читать всем:
Ну вот и пришло время нам соорудить USB программатор. Я долго не мог определиться какой бы программатор нам собрать. Выбирал по критериям простоты конструкции и удобства работы с ними, но ничего не нравилось. Выбрать программатор помог случай. Вернее я его не выбирал вообще – я его случайно собрал сам того не подозревая!
А дело было так. Некоторое количество постов назад мы собрали преобразователь USB to UART на ATtiny2313 (а в мы даже улучшили печатную плату). Еще при выборе схемы преобразователя я планировал на его базе (при помощи заливки различных прошивок) получать устройства различного назначения. Тогда я не подозревал, что данный преобразователь можно использовать шире, чем я планировал. Увидев схему USB программатора — USBtiny на ATtiny2313 я понял, что я уже имею готовый программатор!
Посмотрев на схему, сделанного ранее, преобразователя USB to UART (домашняя страничка)
и схему USB программатора USBTiny (домашняя страница)
можно увидеть, что это одна и та-же схема . Различия незначительны – отсутствуют сигнальные светодиоды и несколько резисторов. Для того, чтобы преобразователь стал USB программатором нужно просто прошить микроконтроллер новой прошивкой и сделать кабель для подключения.
Теперь все по порядку.
1 Для начала нужно собрать преобразователь (это если Вы его еще не собрали).
Вот рисунок печатной платы преобразователя:
Если интересно — вот .
В собранном виде преобразователь выглядит так:
2 Немного модифицируем плату
Для того, чтобы обеспечить все необходимые сигналы для программирования впаиваем защитные резисторы номиналом по 100 Ом в линии ножек 12, 16, 17, 18, 19 (номинал не критичен — можно варьировать).
3 Теперь нужно прошить микроконтроллер.
Линии для программатора выведены на общий разъем платы (кроме сброса — стоит отдельно).
Наверно не нужно говорить о том, что для прошивки микроконтроллера Вам понадобится программатор. На скорую руку можно собрать и прошить при помощи .
Схема шлейфа проста.
Из особенностей — я вынес индикаторный светодиод и балластный резистор для него за плату на разъем — это для того, чтобы плату без перепайки можно было использовать для других устройств (ну и так прикольней — светодиод мигает прямо в разъеме:)). Кроме того, линия Vcc отделена от общего разъема — это на случай если программируемое устройство запитывается не от USB, а от своего источника (что, в принципе, желательно). Сигнальные линии (SCK, MISO, MOSI) желательно экранировать (например чередованием сигнальных и земляных линий в шлейфе). Длину шлейфа не стоит делать большой — до 50 см, не больше. Если нужно программировать удаленное устройство всегда можно применить USB удлинитель — так надежней. Вот мой готовый шнурок:
5 Сам программатор готов, теперь нужно установить драйвер для того, чтобы Винда смогла с ним работать (для Mac OS X & Linux, вродь-как, драйвера вообще не нужно). Тут все просто:
5.1 Скачиваем драйвер, разархивируем его.
Страничка с драйверами
5.2 Вставляем наш программатор в USB порт.
5.3 В трее появится сообщение о том, что найдено новое устройство.
5.4 Запустится мастер нового оборудования.
5.5 Указываем в окошке «место поиска» папку с драйвером.
5.6 Пройдет процесс установки драйвера. Появится окошко сообщающее о том, что драйвер установлен. Чтобы проверить, что мы там наустанавливали— заходим в «Мой компьютер/Свойства/Оборудование/Диспетчер устройств» и находим там наш программатор
Винда увидела новое устройство и готова с ним работать.
USBtiny программатор поддерживается AVRDude , а это значит, что многие среды программирования будут с ним работать без проблем. Еще одним достоинством работы с AVRDude является то, что для работы с AVRDude существует множество оболочек GUI из которых можно выбрать подходящую именно для Вас (но об этом в следующей статье).
Я с USBTiny до этого не работал, но отзывы о нем в сети положительные (отличается надежностью и быстротой программирования) — мои тестовый прошивки это подтвердили. ATtiny2313 прошивается за 10 секунд (это вместе с проверкой). Микроконтроллер определяется и программируется надежно — не было ни одной ошибки во время моих тестов. Приятный в использовании программатор!
Файлы к статье:
— Рисунок печатной платы UART-USB на ATtiny2313
— Прошивка USBtiny программатора для ATtiny2313
— Фьюз-биты ATtiny2313 для USBtiny
— Схема кабеля для USBtiny программатора
USB ПРОГРАММАТОР
Данный программатор не нуждается в первичном программировании – протравил печатную плату, спаял и пользуйся. Автор данного устройства указан в конце статьи, а здесь приведу небольшую выдержку из руководства, чтоб было понятнее, о чём речь: правильный USB-программатор – вещь, фактически, универсальная. Его можно воткнуть в любой современный компьютер и без проблем перешить нужный микроконтроллер с любым объемом FLASH-памяти на довольно высокой скорости. Но ключевое слово здесь – «правильный», который нормально работает без настройки и танцев с бубном над ним сразу же после установки и монтажа деталей. Который не глючит при переходе от одного ПК к другому или смене ОС. Правильный – это такой, драйвера на который есть для любой современной широко используемой версии ОС, и эти дрова неглючные. Каждый определит еще с десяток критериев правильности для себя лично, но вышеперечисленные – основные, без соблюдения которых нормально работать с микроконтроллером невозможно будет в принципе.
В настоящее время в Интернете полно различных схем USB-программаторов для AVR. Условно их можно разделить на две большие группы.
Первая группа включает в себя программаторы, построенные на основе микроконтроллеров (в частности, AVR). Собирал несколько штук программаторов от Prottoss’а (AVR910), себе и своим знакомым, а также несколько штук USBasp. Двое из знакомых, одаренных сиими дывайсами, в восторге. Удачно шьют камни в течение уже нескольких лет. У остальных (в частности – у меня лично) собранные программаторы особой радости не вызвали. Не говорю, что они плохие, просто вот так складывались обстоятельства: на одном компьютере работает, на другом нет. Или, проработав пару часов, оказывались невидимыми для софта, через который шьется камень. И много еще чего. Сразу оговорю – я не разбирался с прошивкой контроллеров, на которых данные программаторы собраны. Правда, перепробовал кучу программ-прошивальщиков, через которые данные программаторы, вроде как без проблем должны шить камни. Однако, результат в виде частых глюков меня не особо удовлетворил. Исключение составила только программа AVRDUDE в комплексе с графической оболочкой SinaProg, но о ней я узнал слишком поздно. Кстати, заметил такую тенденцию: чем древнее железо ПК, тем лучше работают данные программаторы. Ну и самый неприятный момент для тех, кто выбрал второй вариант знакомства с микроконтроллерами AVR – чтобы программатор заработал, нужно чем-то прошить входящий в его состав камень. То есть получается так: чтобы пользоваться программатором нужно сделать/найти программатор, чтобы прошить мозги этого программатора. Вот такой вот замкнутый круг.
И вторая группа USB-программаторов включает в себя решение на базе специализированной микросхемы FT232Rx. В свое время данная микросхема стала своего рода революцией. Мало того, что она без особых заморочек для разработчика преобразует USB в UART (и, наверное, 95% разработчиков используют ее именно в этих целях). Она еще умеет эмулировать полноценный COM-порт, причем состояние «второстепенных» линий (таких, как RTS, CTS, DTR и т.д.) можно задать/считать не из виртуального COM-порта, а напрямую через драйвер FTDI (разработчика FT232Rx). Таким образом, появилось новое, без необходимости первичной прошивки мозгов программатора, решение, для прошивки микроконтроллеров, причем, довольно быстрое.
Данная схема просто направляет сигналы MOSI, MISO, SCK и RESET, которые формируются на выводах DCD, DTR, RTS и DSR микросхемы DD1 (FT232RL) соответственно, на нужные выводы прошиваемого микроконтроллера (т.е., фактически является аналогом «древних» программаторов). Причем, делает это только в момент программирования камня, в остальные моменты времени программатор отключен от прошиваемой платы за счет 4-х буферных элементов микросхемы DD2 (74HC125D). Состояние линий MOSI, MISO, SCK и RESET устанавливается/считывается прошивающим софтом на компьютере. Передача данных между ПК и микросхемой FT232RL идет по шине USB (от которой еще и получает питание программатор).
Светодиод HL2 («PWR») сигнализирует о подаче на программатор напряжения питания с шины USB. Светодиод HL1 («PROG») индицирует процесс прошивки микроконтроллера (горит только во время прошивки). Вот, в принципе, и все описание собственно схемы электрической принципиальной. Единственное что хотелось бы отметить: во-первых, для подключения программатора к прошиваемой плате используется разъем IDC-10MR (XP2 «ISP»), распиновка которого совпадает с широко распространенной распиновкой разъема программатора
STK200/STK300:
XP2 «ISP» разъем для подключения устройства к программируемому микроконтроллеру
XP3 «MISC» разъем для использования дополнительных функций программатора
В общем микросхема FT232RL имеет довольно серьёзный потенциал для разработчика (например, линии шины CBUS можно использовать как обычные линии ввода-вывода микроконтроллера), поэтому неплохо бы иметь доступ ко всем ее выводам. Ну и доступ к напряжениям +5,0 В и +3,3 В тоже лишним никогда не будет. В приклеплении печатная плата и полное подробное описание. Разработка и мануал – [email protected], испытание – SssaHeKkk.
Форум по программаторам
Программатор Spi Flash своими руками — ABC IMPORT
Содержание статьи:
- Выбор: SF & SD
- Флэш-память SPI
- Утилита для идентификации
- DIY: универсальные программы создания
- Микроконтроллер PIC18F2550
- Программирование через OpenProg
- Дизайн печатной платы
- Завершение процесса создания
- Последовательная SPI AT45DB161D
- USB- накопитель EEPROM
- Устранение сбоев работы микроконтроллеров
Микропрограммное обеспечение предварительно установлено в устройства флэш-памяти перед изготовлением печатной платы, поддерживая высокую пропускную способность. Тем не менее есть преимущества в программировании флэш-памяти уже после ее выпуска, то есть до того, как она была припаяна к плате. Программатор Spi Flash (SF) с дискретной флэш-памятью имеет существенные преимущества перед обычными SD. Его цена обычно не превышает 1/10 стоимости флешки, использует гораздо меньший форм-фактор и требует небольшого количества специального оборудования.
Выбор: SF & SD
Вам будет интересно:Как включить режим планшета в Windows 10 и настроить?
Существует множество причин для выбора дискретной флэш-микросхемы вместо подсистемы SD или, наоборот, поэтому пользователю необходимо выбирать компромиссы перед приобретением устройства. Приведенный ниже список содержит несколько аргументов, которые нужно знать, перед выбором DIP-чипа или полноценного SD-решения:
Флэш-память SPI
Вам будет интересно:Workflow — это… Описание, применение, функции
Флэш-память SPI- это тип энергонезависимой памяти, основанный на технологии MOSFET. Энергонезависимое означает, что устройство сохраняет все данные, в том числе, когда не включено. Флэш-память работает, перенося группу носителей заряда на диэлектрик. Это называется программированием и обычно выполняется с более высоким напряжением. Процесс не безобидный, он на самом деле повреждает материал, и после 100 тыс. циклов устройство выходит из строя. Чтобы снять носители заряда с диэлектрика, при одинаковом высоком напряжении на обратном потенциале снимают носители с затвора. Это называется стиранием.
Вам будет интересно:Как распознать текст с картинки в Word: лучшие способы и ресурсы
Запрограммированный флэш-бит имеет значение 0, а стертый бит имеет значение 1, стертый флэш-байт равен 0xFF в шестнадцатеричном формате. В настоящее время флэш-память может хранить несколько битов на ячейке, с использованием уровней напряжения. С учетом роста требований к объему памяти это становится все более сложным выполнить конструкционно.
Преимущество Spi Flash программаторов USB заключается в простоте программного обеспечения, код в основном сдвигает данные выводов DI и DO, соответственно по переднему фронту тактовой частоты. Часы контролируются хостом, для них не требуется причудливая схема синхронизации: фазы могут быть настолько асимметричными, насколько нужно, при условии соблюдения минимальных требований к ширине цикла устройства.
Утилита для идентификации
Flashrom — это утилита для идентификации, чтения, записи, проверки и удаления флеш-чипов. Она предназначена для прошивки образов BIOS/EFI/coreboot/firmware/optionROM на материнских платах, картах контроллера сети/графики/хранения и на различных других устройствах программирования. Функциональные возможности:
DIY: универсальные программы создания
Вам будет интересно:Как настроить Microsoft Remote Desktop — пошаговая инструкция. Удаленный доступ к компьютеру через Интернет
Это лучший для микроконтроллеров PIC и AVR программатор Spi Flash, своими руками, может быть, его создать не получится, но устройство не дорогое, стоит меньше 10 $ и выполняется из легко доступных компонентов.
Преимущества:
Микроконтроллер PIC18F2550
Основные три последовательных заголовка (J1, J2 и J3) используются для связи с ведомым устройством микроконтроллера. Использование выводов различно в разных микроконтроллерах. Переключатель сброса добавлен к блоку контроллера для установки сброса программатора. PIC18F2550 мигает с помощью шестнадцатеричного кода прошивки, можно использовать другие последовательные или параллельные программаторы Spi Flash PIC.
Он проверяет связь между микроконтроллером и ПК. Требуется провести тестирование HID-обнаружения (Human Interface Device), которое устранит много ошибок, таких как проблемы с микроконтроллером, кристаллами и USB. Перед началом использования программы убеждаются, что мигает светодиод LED, который затем замедляет процесс мигания. Если программатор не обнаружен, проверяют перекрестные соединения и инструкции. Если он обнаружен, переходят к следующему шагу.
Программирование через OpenProg
Устанавливают программу OpenProg на ПК, запускают и проверяют подключенное устройство. Последовательность прошивки программатора Spi Flash:
Дизайн печатной платы
Эта печатная плата разработана в Eagle 7.2. Размер пластины 7,5 х 7 см, она выполнена на автоматическом травильном станке. Печатная плата также может быть изготовлена с помощью химического травления в домашних условиях.
Компоненты JA, JB, JC являются перемычками. По схеме тщательно проверяют это и сначала, во время сборки компонентов, устанавливают перемычки. Для обеспечения безопасности PIC18F2550 во время пайки используют 28-контактное основание IC.
Плата расширения связывает программатор с микроконтроллером. Различные серии микроконтроллеров имеют разные контакты и конфигурацию для программирования. Это дает пользователям преимущество в простоте программирования микроконтроллера.
Плата расширения может быть легко сделана с использованием перфорированной доски или в специальных заготовок для плат, приобретенных в торговой сети. Для серий микроконтроллеров используется разные платы расширений. Для LVICP от 5 В до 3,3 В необходим регулятор напряжения, такой как LM1117 или аналогичный ему.
Устройство 3.3 В должно быть запрограммировано только с использованием платы расширения 3.3 В, в противном случае может произойти необратимое повреждение. Некоторые из плат имеют вариант 5 В. Если нужно запрограммировать на 5 В, можно выбрать опцию «Не требовать платы низкого напряжения». Также не рекомендуется размещать 24F-33F в гнездо 30F, которое работает при 5 В.
Завершение процесса создания
После изготовления части контроллера и платы расширения, можно сразу перейти к программированию устройства:
Вам будет интересно:Как пользоваться Total Commander? Достоинства и недостатки файлового менеджера
Последовательная SPI AT45DB161D
Простой Spi Flash программатор SPI (AT45DB161D) представляет собой 16-мегабитную (2 МБайт) 2,5 В или 2,7 В флэш-память с последовательным интерфейсом, идеально подходящего для широкого спектра приложений, предназначенных для хранения программного кода и данных.
Всего 2097152 байта (0x1FFFFF) организованы в 4096 страниц с 512 байтами на страницу. Несмотря на то, что чип предлагает различные варианты стирания, библиотека программного обеспечения поддерживает стирание блоков, причем один блок содержит 4 Кбайт.
Чтобы перезаписать существующие данные, сначала необходимо удалить соответствующий блок. Чтение и запись данных осуществляется довольно простым способом, в основном путем предоставления адреса чтения/записи (от 0 до 0x1FFFFF) и информации о длине данных. Используя существующие базовые функции, можно расширить код для поддержки обширной системы доступа к файлам.
USB- накопитель EEPROM
Программатор Spi Flash EEPROM серии 25 с программным обеспечением и поддержкой драйверов и 25-SPI флэш-память 8-контактный/16-контактный имеет следующие функциональные возможности:
Устранение сбоев работы микроконтроллеров
Когда пользователь начинает работать с микроконтроллерами, он, вероятно, столкнется с проблемами при программировании, на решение которых потребуются часы или дни, а иногда они просто неразрешимы. Опытные программисты поделились своими наработками устранения различных нарушений, вот некоторые из них:
После выполнения своими руками USB программатора Spi Flash пользователь получит SF, выполненную собственноручно для системного программирования. Она будет легко управляться компьютером через шину USB благодаря удобному интерфейсу и мощным функциями.
Источник
Создайте свой собственный клон программатора USB-ASP
Используя больше микроконтроллеров на базе ATMEGA в моих последних проектах и не используя готовые платы Arduino ни для одного из них, возникла необходимость инвестировать в специальный программатор ASP для прошивки микроконтроллеров. Огромные задержки с электронными компонентами, подтвержденные заказы загадочным образом отменяются из-за проблем с поставщиками, а также высокая стоимость «оригинальных программаторов OEM ASP» заставляют меня искать программатор в стиле «сделай сам», такой как старый «NOPPP» Программист) в старые добрые времена…
Персональные компьютеры сильно изменились, и хотя чипы ATMEGA — это не PIC, я чувствовал, что это можно сделать. Учитывая тот факт, что вы также можете использовать Arduino UNO в качестве интернет-провайдера, и немного покопавшись, я наконец нашел очень привлекательную альтернативу…
Томас Фишл , на его веб-сайте https://www.fischl.de /usbasp, имеет проект аппаратного обеспечения с открытым исходным кодом, который, похоже, был именно тем, что мне было нужно. Его устройство способно программировать 5-вольтовые устройства на различных скоростях, включая сверхмедленную. Он также написал прошивку для устройства, и хотя последнее обновление было в 2011 году, оно все еще работает хорошо, по крайней мере, насколько я могу судить…
Тем не менее, я решил внести свои изменения в конструкцию и встроить преобразователь логических уровней, чтобы можно было также программировать устройства на 3,3 В…
Измененная схема приведена ниже: решил сделать свою собственную разводку печатной платы, чтобы включить изменения, перечисленные ранее, а именно преобразование логического уровня с 5 В в 3 В, а также добавление стабилизатора напряжения LDO 3,3 В для подачи 3,3 В к цели в случае необходимости.
PCB TopsidePCB Bottom Side3D визуализация печатной платыПечатная плата все еще находится в пути с завода, поэтому позже я дополню эту статью фотографиями фактического устройства.
Прошивка может быть прошита с помощью любого ASP-программатора, Arduino как ISP, но с оговоркой, что вы должны использовать AVRDude из командной строки… Подробнее об этом в следующем посте… (Я хотел бы показать реальные скриншоты процесса, а не теории..). Ссылки на прошивку доступны на https://www.fischl.de/usbasp, любезно предоставлено Thomas Fischl , которого я хотел бы поблагодарить за то, что этот аппаратный проект с открытым исходным кодом был доступен бесплатно, а также за написание и поддержку прошивки.
Печатную плату можно заказать или загрузить файлы дизайна (бесплатно) со страницы моих проектов на PCBWay в ближайшее время…
Эта печатная плата была изготовлена на PCBWAY. Файлы Gerber и спецификация, а также все схемы скоро будут доступны в виде общего проекта на их веб-сайте. Если вы хотите, чтобы PCBWAY изготовила один из ваших собственных дизайнов или даже эту конкретную печатную плату, вам необходимо сделать следующее…
1) Нажмите на эту ссылку
2) Создайте учетную запись, если у вас ее еще нет.
Если вы воспользуетесь приведенной выше ссылкой, вы также мгновенно получите купон на 5 долларов США, который вы сможете использовать в своем первом или любом другом заказе позже. (Отказ от ответственности: я получу небольшое реферальное вознаграждение от PCBWay. Это реферальное вознаграждение не повлияет на стоимость вашего заказа, и вы не будете оплачивать какую-либо его часть.)
3) После того, как вы зашли на их веб-сайт и создали учетную запись, или войдите под своей существующей учетной записью,
4) Нажмите «Мгновенное предложение печатной платы»
5) Если у вас нет особых требований к вашей печатной плате, нажмите «Быстрый заказ печатной платы»
6) Нажмите «Добавить файл Gerber» и выберите файлы Gerber из твой компьютер. Большинство деталей вашей печатной платы теперь будут выбраны автоматически, вам останется только выбрать паяльную маску и цвет шелкографии, а также удалить номер заказа или нет. Вы, конечно, можете настроить все точно так, как вы хотите.
7) Вы также можете выбрать, хотите ли вы использовать трафарет SMD или собрать плату после изготовления. Обратите внимание, что услуга сборки, а также стоимость ваших компонентов НЕ включены в первоначальную цену. (Цитата будет обновляться в зависимости от того, какие параметры вы выберете).
8) Если вы довольны выбранными параметрами, вы можете нажать кнопку «Сохранить в корзину». С этого момента вы можете перейти в верхнюю часть экрана, щелкнуть Корзину, совершить любой платеж (платежи) или использовать любые купоны, которые есть в вашей учетной записи.
Тогда просто расслабьтесь и подождите, пока ваша новая печатная плата будет доставлена к вашей двери транспортной компанией, которую вы выбрали при оформлении заказа.
Автор makeriot2020Опубликовано Рубрики Дизайн печатных плат на заказ, Электроника, Дизайн печатных платМетки Arduino, ASP программист Maker и IoT Ideas используют модули AITinkerMaker и IoT поддерживаются PCBPartner
Высококачественные модули для прототипирования
Когда вы разрабатываете новый продукт, вам всегда нужно несколько модулей прототипирования, чтобы начать работу и сэкономить время.
Поэтому очень важно, чтобы вы выбирали качественные продукты, потому что вы, в конце концов, будете использовать их довольно часто. Хорошие продукты также довольно дороги.
Идеальным модулем прототипирования, на наш взгляд, является модуль, который:
– Работает из коробки, каждый раз, без вопросов.
— Предоставляет доступ ко всем периферийным устройствам конкретного чипа/устройства
— Отличная документация в легкодоступном месте
— Рабочие и надежные примеры кода
— Эффективная поддержка клиентов в случае возникновения проблем
— Ценность за деньги
Следующий список тщательно отобран. Он содержит только продукты компаний, которые мы используем сами. Они производят большую часть своей продукции собственными силами, имеют строгий контроль качества и соответствуют всем перечисленным требованиям 9.0013 выше.
Cytron Maker Nano с ATMEGA328p
Cytron’s Maker NanoКлон Arduino Nano, но многое другое… Светодиоды на линиях GPIO (можно отключить), встроенный зуммер и пользовательская кнопка, а также уникальный способ Cytron сделать что-то простое действительно великим.
Cytron Maker Nano
Производитель Cytron Uno (ATMEGA328P)
Cytron’s Maker UNOСпециально разработанный для использования в классе, этот клон Arduino Uno обладает всеми функциями Arduino Uno, а также всеми функциями Cytron Maker Nano. Он также идеально подходит для производителей и других любителей.
Cytron Maker Uno
Cytron Maker Nano RP2040
Cytron Maker Nano RP2040Микроконтроллер Raspberry Pi Pico (RP2040) застал всех нас врасплох. Опираясь на свою очень успешную серию Maker, Cytron недавно выпустила Maker Nano RP2040. Он имеет все функции оригинального Raspberry Pi Pico, но с добавленными вкусностями Cytron, похожими на Maker Nano… Светодиоды на линиях GPIO, зуммер, а также два светодиода RGB. Плата поддерживает Arduino IDE, а также поддерживает Circuit Python и Micropython.
Cytron Maker Nano RP2040
Cytron Maker Pi RP2040
Cytron Maker Pi RP2040Начать проект робототехники очень просто. Платформа разработки Cytron Maker Pi RP2040 Robotics поможет вам. Два контроллера двигателей, встроенное зарядное устройство LiPo, зуммер, порты Grove и все остальные полезные функции серии Maker. Хорошо спроектированная плата для разработки, с которой легко начать работу прямо из коробки.
Cytron Maker Pi RP2040
Самодельный USB-программатор PIC
Добро пожаловать на EDAboard.com
Добро пожаловать на наш сайт! EDAboard.com — это международный дискуссионный форум по электронике, посвященный программному обеспечению EDA, схемам, схемам, книгам, теории, документам, asic, pld, 8051, DSP, сети, радиочастотам, аналоговому дизайну, печатным платам, руководствам по обслуживанию.
.. и многому другому. более! Для участия необходимо зарегистрироваться. Регистрация бесплатна. Нажмите здесь для регистрации.Регистрация Авторизоваться
JavaScript отключен. Для лучшего опыта, пожалуйста, включите JavaScript в вашем браузере, прежде чем продолжить.
- Автор темы Погребенный код
- Дата начала
- Статус
- Закрыто для дальнейших ответов.
Погребенный код
Полноправный член уровня 6
самодельный программатор USB pic
Привет,
Я разрабатывал плату разработчика для PIC (18-40 контактов DIP), и хотя у нее будет возможность загрузки, я думал о создании USB-программатора для ‘ Программирование ВВ. Я просто не могу позволить себе те, которые в настоящее время представлены на рынке, и, учитывая, что у меня уже есть почти все компоненты, все, что мне нужно, это печатная плата.
Это довольно сложно, поскольку большинство USB-программаторов поставляются со своим собственным программным обеспечением, но я хотел бы создать такой, который поддерживается бесплатным программным обеспечением (понипрог и всегда верный IC-прог). Это сложно, пока я думаю о двух вариантах:
1) Стандартный USB-кабель для последовательного порта (отображается как COM-порт на Win XP, поэтому я могу использовать IC-prog) с преобразователем постоянного тока 5-13 В в стиле JDM. По сути, просто программатор JDM с более стабильным напряжением Vpp, питающимся от порта USB. Это будет примерно так: USB -> Serial -> JDM (с питанием HV) и заголовок ICSP. Скорость ограничена ПК, и, поскольку большинство USB-последовательных кабелей поддерживают только до 115 кбит/с, он не будет быстрее, чем оригинальный JDM (он немного бьет по последовательным линиям), тем не менее, он сможет программа любая PIC IC-прога может, по USB. Выполнимо.
2) Специальный USB-программатор, использующий USB PIC или PIC с FT232. Опять же, с преобразователем 5-13В на борту для Vpp. Для этого, вероятно, потребуется специальное программное обеспечение на ПК, чего я не могу сделать (на самом деле я не программист, за исключением PIC). очень похоже на приведенное выше, но ограничение скорости будет зависеть от PIC и USB. Это означает, что это может быть ОЧЕНЬ быстро. Недостатки? для этого потребуется специальная программа на ПК, поэтому, если я не смогу найти указанное программное обеспечение бесплатно, которое поддерживает USB (НЕ через com-порт) и получить подробную информацию о нем, чтобы написать программное обеспечение для программатора PIC, этого не произойдет.
В любом случае, в конечном счете, мне нужна схема, которая может работать как обычный USB-последовательный кабель (с высокой скоростью, около 1,5 Мбит/с на конце UART), программатор PIC (с разъемом ICSP), и, возможно, возможность программирования eeproms. Звучит сложно, но я уверен, что это можно сделать «достаточно» просто.
Я собираюсь купить дешевый кабель USB-последовательный порт на ebay, чтобы протестировать его с JDM (с моим собственным источником питания Vpp, поэтому JDM его не предоставляет) и разобрать его, чтобы посмотреть, есть ли что-нибудь «программируемое». ‘ там. Вы никогда не знаете, может быть, несколько настроек и проводов могли бы заставить его очень удачно запрограммировать PIC.
Требуются эксперты, мне еще предстоит найти «бесплатный» USB-программатор PIC с автономным питанием от USB, внешнее питание не вариант (я не ношу с собой 15-вольтовую настенную панель только для 13 В @ несколько мА для Впп). Я в порядке с оборудованием, любые идеи приветствуются. Суть этого в простоте, как «USB JDM», но также в надежности, полезности и, желательно, «быстрости».
С уважением,
BuriedCode.
визпик
Расширенный член уровня 3
usb pic программатор
Попробуйте этот Я не собирал его сам, поэтому не могу сказать, насколько он хорош, но выглядит просто и легко собрать попробуйте
**ссылка не работает**
вакака
Полноправный член уровня 4
самодельный usb программатор
какой язык для сайта??не понимаю. ….
Погребенный код
Полноправный член уровня 6
Схема usb pic программатора
Привет, Wizpic,
Ничего себе, я не говорю по-немецки (но я могу понять, прочитав его), но эй, вот почему была изобретена babelfish. Это в значительной степени то, что я искал, и хотя я только просмотрел страницу, я предполагаю, что у него есть программное обеспечение для ПК, прошивка PIC (которая может быть изменена моими собственными ужасными целями), и похоже, что он питается от USB. Идеальный! Я с нетерпением ждал возможности разработать свой собственный, но это сэкономит мне МНОГО времени на настройку программного обеспечения. Я, конечно, напишу автору сайта по электронной почте с некоторыми вопросами….где мой немецкий разговорник..
Большое спасибо. Хоть я и гуглил об этом, честно говоря, не нашел.
Скрытый код.
визпик
Расширенный член уровня 3
diy pic usb программатор
BuriedCode Добро пожаловать, мой друг
Да, программное обеспечение есть вместе со всеми файлами, которые вам нужны для его создания, и самое приятное в нем то, что оно бесплатное. Автор проделал большую работу и судя по всему, он постоянно обновляется
я бы даже не подумал о разработке своего собственного программатора, я использую Winpic800 и программатор GTP usb plus, лучший из тех, что я пробовал, не было никаких проблем, и я пробовал множество типов фотографий
Я сделаю это, хотя выгляжу хорошо всегда стоит иметь bcak up
с уважением,
wizpic
Криптон2035
Расширенный член уровня 4
homebrew pic программатор
gtp usb lite бесплатный программатор usb pic
gtp usb платный
gtp usb можно поискать на форуме есть тема со схемами и прошивками.
первоначальная оплата = www.winpic800.com
открытый3
Уровень новичка 2
pic программатор usb diy
Привет, Buriedcode
Я тоже думаю о подобном решении и хочу добавить следующие комментарии:
— Стандартный серийный номер не подходит, так как он не может управлять DTR и другими линиями в «прямом» режиме.
— Поскольку мы хотим, чтобы устройство было недорогим (иначе вам придется создавать клон ICD2), мы должны минимизировать количество компонентов.
— ИМХО, есть два варианта:
1) Устройство на базе FT232R в режиме «bit-bang» плюс 13V step-up — похоже на JDM, но более стабильно. Вся логика программирования находится на ПК, скорость программирования ограничена задержкой USB.
2) Устройство на базе PIC182550. Очень гибкий, но требует кастомной прошивки.
— Как программист — я бы предпочел WinPIC https://www.qsl.net/dl4yhf/winpicpr.html, и у него есть бесплатные исходники и возможность настройки. Первый вариант (FT232R) требует минимальной модификации кода, т.е. использования FTD2XX.dll вместо COM-порта. Второй — требует разработки коммуникационного протокола, но позволяет записать более быстрое и гибкое решение.
Недостатки Brenner8 заключаются в проприетарном протоколе и пользовательском программаторе.
Что касается меня — собираюсь собрать вариант FT232R, готов проект патча для WinPIC. Ориентировочная стоимость:
FT232R — 3,1 долл. США
78S40 — 1,5 долл. США
разное — $3
============
$7.6
Леонид
Погребенный код
Полноправный член уровня 6
самодельный USB-программатор
Hi lopen,
Два варианта были почти такими же, как я сказал, но…
Что касается программиста — я бы предпочел WinPIC h**p://www.qsl.net/dl4yhf/winpicpr.html, и у него есть бесплатные исходники и возможность настройки. Первый вариант (FT232R) требует минимальной модификации кода, т.е. использования FTD2XX.dll вместо COM-порта. Второй — требует разработки коммуникационного протокола, но позволяет записать более быстрое и гибкое решение
Нажмите, чтобы развернуть…
Я примерно знал, как работает микросхема FT2***, но вы объяснили лучше.
Но я решился и купил готовый (ужас!), потому что он стоил всего 20UKP (37 долларов США?) с большим количеством документации и т. д. PICkit 2. Как ни странно, после попытки создать свой собственный с помощью PIC18F2550 ….схема для PICkit 2 почти идентична, и таким образом мне не нужно собирать плату (хотел все SMT). Я очень доволен, но в будущем я могу разработать программатор «все в одном», который будет работать с IC-Prog/ponyprog (с моей собственной опцией «программатора», НЕ JDM), чтобы я мог программировать почти все, что мне нравится. , например, eeproms, flash и AVR, а также фотографии.
Тем не менее, вы хорошо изложили плюсы и минусы обоих подходов, спасибо. Программатор PICkit 2 работает как часы и поддерживает все PIC, которые мне понадобятся, поэтому я думаю, что я счастлив, и надеюсь, что эта тема может быть полезна для других, которые хотят создать свой собственный.
Погребенный код.
КамалС
Членский уровень 4
самодельный программатор для фото с usb
Молодец!
Но нам определенно помогло бы, если бы вы могли сверить схему, предоставленную Microchip на их сайте, с вашим PICKit2, так как я слышал, что они пересмотрели дизайн.
Кроме того, когда у меня будет время, я обязательно переведу SMT-части PICKit2 на версии PDIP.
Погребенный код
Полноправный член уровня 6
USB программатор
Еще раз привет,
Я попытаюсь отследить схему после того, как буду уверен, что она достаточно надежна, как программист. Я слышал, что PICkit2 в ближайшее время не будет качественным и надежным, но пока все хорошо, даже с умеренно загруженными контактами программирования. Схема на компакт-диске отличается от схемы, представленной на веб-сайте микросхемы, но мой pdf-файл является более свежим документом, возможно, для ревизии 2 (что и есть этот программатор).
Похороненный код
КамалС
Членский уровень 4
программатор usb pic diy
Эта информация именно то, что у меня есть.
Компания Microchip не обновила свой сайт новой схемой.
Поскольку у вас есть последняя версия, было бы полезно всем ребятам из EDABoard, если бы вы могли хотя бы проследить ее или отличить новую схему от старой.
wipeoutnrw
Уровень новичка 3
pic программатор usb
Привет!
Я собрал BIC-Brenner 8 с сайта www.sprut.de. Он работает очень хорошо. Язык этого сайта немецкий. Схему и плату можно скачать на этом сайте.
Кристиан из Германии
Криптон2035
Расширенный член уровня 4
9 схема находится в архиве в формате .gif, просто найдите ее
там же есть все прошивки и программы для виндовс
если вам нужно больше, все объяснено в ноябрьском журнале circ Cellar.
проект sourceforge находится по адресу:
https://sourceforge. net/projects/evausb
но сейчас там ничего нет… может быть через несколько недель. журнал недавний…
Зафирус
Уровень новичка 5
программатор build pic
Существует бесплатный программатор Microchip PICKIT2:
**ссылка удалена неработающая**
С уважением.
Мартин
байюцзюнь
Уровень новичка 4
Программатор USB pic
K150 USB PIC PROGRAMMER https://www.kitsrus.com
blueroomelectronics
Расширенный член уровня 5
usb программатор pic
Первый PICKIT2 платный. это от 39 до 49 долларов
Во-вторых, большинство программаторов USB, таких как K150, используют микросхему FT232, которая представляет собой просто микросхему для поверхностного монтажа USB-RS232. Также доморощенные программисты, такие как K150, будут поддерживать только те PIC, для которых DIY пишет программное обеспечение.
В-третьих, возьмите отладчик, такой как Microchips PICKIT2 или мой Inchworm. Серьезно, примерно по той же цене, что и PICKIT2, я сделал печатные платы и включил схемы на сайт. PICKIT2 отлаживает только один PIC, так что…
В-четвертых, USB — это круто, но я избегал его в своей конструкции, потому что…
1. Вы МОЖЕТЕ взорвать эти маленькие пикопредохранители внутри вашего ноутбука всего одной ошибкой.
2. Я не хотел чипов для поверхностного монтажа в конструкции
3. Я хотел, чтобы комплект был простым и недорогим.
4. Вы можете включить Inchworm от 9Батарея V
5. Вы можете купить адаптеры USB-RS232 за 14 долларов у Tiger Direct.
6. Вы получаете хороший регулятор 7805 1А с термозащитой. И это не повредит ваш USB-порт.
7. Я провожу конкурс на плату Firefly. Подробности смотрите на моем сайте.
**неработающая ссылка удалена**
сенбон
Расширенный член уровня 1
самодельный программатор jdm
Вы можете поискать в Интернете
«Инструментарий программиста PIC TK3», опубликованный в журнале
«Practical Everyday Electronics».
Он имеет ИС подкачки заряда для подачи 12 В для
программирования микроконтроллера PIC.
Схема программного и аппаратного обеспечения бесплатна для ознакомления.
Я пытался построить его много лет назад,
вы могли бы сослаться на
ваш образец дизайна.
**неработающая ссылка удалена**
- Статус
- Закрыто для дальнейших ответов.
С
Программатор USBASP Mod
- Автор: SandyQueen
- Ответов: 2
Микроконтроллеры
С
Nodemcu как программатор SPI для USBASP AVR Обновление прошивки
- Автор: sungavali02
- Ответов: 1
Микроконтроллеры
А
USB не распознан для pic18F14K50
- Автор: aankur
- Ответов: 3
Микроконтроллеры
п
Можем ли мы подключить RC к контакту сброса контроллера Pic при программировании через программатор pickit 3
- Автор: prakashvenugopal
- Ответов: 14
Микроконтроллеры
К
RS 485 PIC на PIC
- Инициировано kazimor
- Ответов: 5
Микроконтроллеры
Делиться:
906:00 Фейсбук Твиттер Реддит Пинтерест Тамблер WhatsApp Эл. адрес Делиться Ссылка на сайт
Верх
ПОМОГИТЕ!!! | USBtinyISP | Система обучения Adafruit
ПОМОЩЬ!!!
Сохранить Подписаться
Пожалуйста, войдите, чтобы подписаться на это руководство.
После входа в систему вы будете перенаправлены обратно к этому руководству и сможете подписаться на него.
Я запускаю avrdude и получаю сообщение «Ошибка инициализации, rc=1»
Этот ответ от avrdude означает, что он может общаться с программатором , но программатор не может разговаривать с чипом .
Проверьте:
- Правильно ли выбраны 10- и 6-контактные кабели? сравните с картинками в инструкции.
- Вы либо обеспечиваете питание чипа (перемычка установлена), либо питание программатора подается через контактный разъем VCC? Если перемычка не установлена, буферная микросхема (74ahc125) потребует от цели не менее 2,5 В.
- Если вы запрограммировали чип на очень низкую тактовую частоту, используйте флаг -B, как показано здесь, чтобы замедлить чип. «-B 32» должен работать большую часть времени, но вы можете работать так же медленно, как «-B 250»
- Чип питается? AVCC, VCC и все контакты GND должны быть подключены.
- Есть ли у него часы или кристалл (если необходимо?)
- Что-нибудь препятствует переключению контактов MISO/MOSI/SCK/Reset? (т.е. загружены)
- Нужен ли целевому чипу кристалл? кристалл колеблется?
- Вы уверены, что все правильно подключено? С помощью осциллографа посмотрите на линию сброса на микросхеме, она должна мерцать вверх-вниз. Следите за булавкой SCK и убедитесь, что вы видите 8-импульсную тактовую последовательность. Убедитесь, что вы не поменяли местами MISO/MOSI. и т. д.
- Нужно ли «перемыкать» выходные резисторы 1,5 кОм? Если вы не используете USBtinyISP для связи SpokePOV, это рекомендуется, особенно с целевыми чипами, которые что-то подключено к линиям MISO/MOSI/SCK. Проверьте в конце инструкции по пайке, как это сделать .
Большую часть времени ваш программатор работает нормально, проверьте кабели и контакты, а также правильность подключения целевого устройства.
Мы никогда не сталкивались с USBtinyISP, который доходил до такой точки, когда он разговаривает с компьютером, но не с чипом, и дефектным является комплект. Это ВСЕГДА проблема с неисправным чипом или проводкой, тактовой частотой, скоростью передачи данных, питанием или выходным резистором.
Не работает с портом USB 3
Мы заметили, что порты USB 3 иногда немного более чувствительны, чем USB 2. В этом случае вы можете попробовать заменить кабель (см. USB-концентратор между USBtinyISP и вашим компьютером.
Я запускаю avrdude и получаю сообщение «ошибка: usbtiny_transmit: сбой инициализации, rc=-1»
Этот ответ означает, что он нашел USBtiny, но не смог с ним связаться. Вероятная причина в том, что вы нашли версию avrdude, отличную от WinAVR.
Различия в новых версиях avrdude означают, что он не работает с драйвером libusb-win32 USBtinyISP.
Для получения дополнительной информации см. https://github.com/adafruit/Adafruit_Windows_Drivers/issues/22
Это не работает!
Проверить:
- Все ли детали установлены правильно?
- Имеются ли соединения или перемычки холодной пайки?
- Правильно ли подключены кабели?
- Кабели вставлены задом наперед? (Красный провод должен быть в точке #1)
- Горит ли зеленый индикатор, указывая на то, что перечисление USB прошло успешно? (обратите внимание, что на некоторых Mac зеленый свет загорается только после того, как Avrdude разговаривает с программистом, странно!)
- Драйвер установлен (Windows)?
- Подключено ли устройство к целевой плате? (т. е. он подключен к чипу)
- Запитан ли целевой чип?
- Нужен ли целевому чипу кристалл? кристалл колеблется?
- Вы пытаетесь подать питание USB 5 В на уже включенное устройство?
перед публикацией на форумах!
Я запускаю avrdude и получаю «Ошибка чтения USB: ожидалось 4, получено -1» (или что-то подобное)
Возникла проблема с priv, дополнительную информацию см. в инструкциях usbtinyisp avrdude linux.
Мой 64-битный компьютер не работает!
У некоторых очень старых комплектов есть такая проблема,спасибо бесстрашным помощникам,в проект avrdude отправлен патч,если хотите исправить сами,просто замените строки в usbtiny.c в avrdude с
sizeof(res)
с
4
Это было исправлено примерно в 2010 году
У меня проблемы с компиляцией/прожигом чипа для этого проекта…
Используйте предварительно скомпилированный файл .hex и файлы Makefile, так как более новые компиляторы avr-gcc могут не уместить код так, чтобы он поместился на чипе. При необходимости измените Makefile в spi и в папке spi введите «make fuse flash». Кроме того, вы сами по себе!
Я запускаю avrdude и получаю сообщение «Не удалось найти USB-устройство 0x1781/0xc9f»
.Этот ответ означает, что программатор не найден. Есть много возможных причин:
- Если вы используете последнюю версию WinAVR (которая была создана с использованием старой версии библиотеки драйверов libusb), вы должны использовать драйвер версии 1.10. Удалите драйвер, который у вас есть, и убедитесь, что вы установили правильный.
- Попробуйте отключить и снова подключить
- Убедитесь, что драйвер (только для Windows) установлен.
- Убедитесь, что зеленый светодиод горит (это означает, что он включен и выполнил перечисление USB).
- Убедитесь, что у вас установлена libusb и что это правильная версия. (линукс/макинтош)
- Убедитесь, что вы заменили старую версию libusb0.dll версией со страницы загрузки.
- Убедитесь, что вы не подаете питание на цель через USB, когда она уже подключена к источнику питания. Проверьте перемычку на конце устройства и снимите ее, если она есть.
- Если вы запрограммировали чип usbtinyisp, убедитесь, что фьюзы установлены правильно.
У меня возникли проблемы с созданием этого проекта с нуля…
Помимо советов, здесь, если вы не можете заставить этот проект работать самостоятельно, я предлагаю купить комплект. Это не простой проект для отладки!
Я запускаю avrdude и получаю «ошибка в avrdude.conf:370 нераспознанный символ: ‘u'»
Это означает, что вы правильно заменили avrdude.conf , но не заменили avrdude.exe (или под mac/linux просто avrdude ) выполните поиск на своем компьютере и убедитесь, что вы заменили любую копию avrdude.conf исправленной версией со страницы загрузки.
Я запускаю avrdude и получаю сообщение avrdude: Can’t find Programr id «usbtiny»
Это означает, что вы не заменили avrdude.