Usb программатор своими руками: Универсальный USB программатор

Содержание

USB программатор своими руками на ATmega8

Предлагаем Вам схему USB программатора на микроконтроллере ATmega8. Этот USB программатор Вы можете собрать своими руками за несколько минут на макетной плате Breadboard Half (BREADBOARD — 456 HOLES) размером 82х59 мм. На этой плате хватит места и для программируемых микроконтроллеров в корпусах до DIP-28.

Этим USB программатором можно программировать микроконтроллеры AVR ATmega и ATtiny (другие программировать не пробовал). Этот программатор заметит Вам плату Arduino, он более удобен для экспериментов с различными микроконтроллерами и микропрограммами для них (скетчами). USB программатор работает под управлением микропрограммы ArduinoISP.

Минимальный набор деталей для программатора

  1. Микроконтроллер ATmega8 (ATmega8A-PU, ATmega8L-PU) 1шт
  2. Макетая плата Breadboard Half (BREADBOARD — 456 HOLES) размером 82х59 мм 1шт
  3. Интерфейс USB-UART (подойдет USB-DATA кабель от старого сотового телефона) 1шт

Остальные детали, которые вы увидите на схеме для работы универсального, самодельного, простого программатора не существенны.

О подключении пробников, бузер можно подключить на линию MISO и слушать как общаются между собой микроконтроллеры. Светодиод можно подключить к 15 ножке микроконтроллера ATmega8, если схема собрана правильно и в Atmega8 залит скетч ArduinoISP, светодиод будет плавно менять яркость свечения.

Прежде чем воспользоваться самодельным программатором, необходимо загрузить в микроконтроллер программатора микропрограмму ArduinoISP из примеров к программе Arduino IDE. А еще раньше, необходимо настроить микроконтроллер ATmega8 на работу на частоте 8 МГц без внешнего кварцевого резонатора.

Мы здесь, приведем последовательность действий по прошивке микроконтроллера ATmega8 с помощью платы Arduino UNO и программы Arduino IDE. Возможно, так же, воспользоваться каким нибудь другим методом.

 1. Добавьте в программе Arduino в список поддерживаемых устройств микроконтроллер ATmega8 без bootloader с тактовой частотой 8МГц. Внесите изменения в файл sketchbook/hardware/boards.txt, добавив в него следующую секцию:

##############################################################

a8noboot_8MHz.name=ATmega8 (no boot 8 MHz int)
a8noboot_8MHz.upload.maximum_size=8192
a8noboot_8MHz.bootloader.low_fuses=0xa4
a8noboot_8MHz.bootloader.high_fuses=0xdc
a8noboot_8MHz.build.mcu=atmega8
a8noboot_8MHz.build.f_cpu=8000000L
a8noboot_8MHz.build.core=arduino
a8noboot_8MHz.build.variant=standard

##############################################################

Уточнить размещение папки sketchbook можно в программе Arduino в меню / . Если в папке sketchbook нет папки hardware, создайте ее и создайте файл boards.txt

2. Подключите микроконтроллер ATmega8 к плате Arduino UNO как описано в Программатор для ATmega8A на Arduino с ArduinoISP.

3. В программе Arduino выберите / /  и / . Далее загрузите в микроконтроллер ATmega8 программу ArduinoISP / / и .

4. Соберите программатор.

Для программатора Вам понадобится интерфейс USB-UART. Вы можете воспользоваться кабелем от старого сотового телефона, как описано в этой статье Подбор USB-DATA кабеля вместо USB-UART модуля для самодельного Arduino. Что на мой взгляд, очень удобно. Но вместо этого кабеля Ваш программатор можно подключить к компьютеру с помощью платы преобразователя USB-UART.

На фотографии программируется микроконтроллер ATtiny84.

USB ПРОГРАММАТОР

   Данный программатор не нуждается в первичном программировании — протравил печатную плату, спаял и пользуйся. Автор данного устройства указан в конце статьи, а здесь приведу небольшую выдержку из руководства, чтоб было понятнее, о чём речь: правильный USB-программатор – вещь, фактически, универсальная. Его можно воткнуть в любой современный компьютер и без проблем перешить нужный микроконтроллер с любым объемом FLASH-памяти на довольно высокой скорости. Но ключевое слово здесь – «правильный», который нормально работает без настройки и танцев с бубном над ним сразу же после установки и монтажа деталей. Который не глючит при переходе от одного ПК к другому или смене ОС. Правильный – это такой, драйвера на который есть для любой современной широко используемой версии ОС, и эти дрова неглючные. Каждый определит еще с десяток критериев правильности для себя лично, но вышеперечисленные – основные, без соблюдения которых нормально работать с микроконтроллером невозможно будет в принципе.

   В настоящее время в Интернете полно различных схем USB-программаторов для AVR. Условно их можно разделить на две большие группы.

   Первая группа включает в себя программаторы, построенные на основе микроконтроллеров (в частности, AVR). Собирал несколько штук программаторов от Prottoss’а (AVR910), себе и своим знакомым, а также несколько штук USBasp. Двое из знакомых, одаренных сиими дывайсами, в восторге. Удачно шьют камни в течение уже нескольких лет. У остальных (в частности – у меня лично) собранные программаторы особой радости не вызвали. Не говорю, что они плохие, просто вот так складывались обстоятельства: на одном компьютере работает, на другом нет. Или, проработав пару часов, оказывались невидимыми для софта, через который шьется камень. И много еще чего. Сразу оговорю – я не разбирался с прошивкой контроллеров, на которых данные программаторы собраны. Правда, перепробовал кучу программ-прошивальщиков, через которые данные программаторы, вроде как без проблем должны шить камни. Однако, результат в виде частых глюков меня не особо удовлетворил. Исключение составила только программа AVRDUDE в комплексе с графической оболочкой SinaProg, но о ней я узнал слишком поздно. Кстати, заметил такую тенденцию: чем древнее железо ПК, тем лучше работают данные программаторы. Ну и самый неприятный момент для тех, кто выбрал второй вариант знакомства с микроконтроллерами AVR – чтобы программатор заработал, нужно чем-то прошить входящий в его состав камень. То есть получается так: чтобы пользоваться программатором нужно сделать/найти программатор, чтобы прошить мозги этого программатора. Вот такой вот замкнутый круг.

   И вторая группа USB-программаторов включает в себя решение на базе специализированной микросхемы FT232Rx. В свое время данная микросхема стала своего рода революцией. Мало того, что она без особых заморочек для разработчика преобразует USB в UART (и, наверное, 95% разработчиков используют ее именно в этих целях). Она еще умеет эмулировать полноценный COM-порт, причем состояние «второстепенных» линий (таких, как RTS, CTS, DTR и т.д.) можно задать/считать не из виртуального COM-порта, а напрямую через драйвер FTDI (разработчика FT232Rx). Таким образом, появилось новое, без необходимости первичной прошивки мозгов программатора, решение, для прошивки микроконтроллеров, причем, довольно быстрое.

Принципиальная схема программатора USB

   Данная схема просто направляет сигналы 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.

   Форум по программаторам

   Форум по обсуждению материала USB ПРОГРАММАТОР




SMD ПРЕДОХРАНИТЕЛИ

Приводятся основные сведения о планарных предохранителях, включая их технические характеристики и применение.




Программатор своими руками. программатор для pic своими руками

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

   Как видно из схемы, тут нет кварцевого резонатора — это фишка схемы. Я сделал не очень компактный программатор, при желании можно уменьшить, а если есть двухсторонний текстолит, то можно запихнуть в USB, так что будет совсем незаметно. А сейчас небольшая фотосессия. Но сначала разводка USB:

   Забыл сказать, что сначала не надо запрограммировать RSTDSBL, а запрограммировать CKSEL3, CKSEL2, CKSEL1 подключить к ПК, если компьютер нашел неизвестное устройство — это еще ничего не значит, должен установиться драйвер. После того можно запрограммировать RSTDSBL, так как количество ног у микроконтроллера ограничено, кстати можно использовать ATtiny45 или ATtiny85, главное чтобы было 20su в смд или 20pu в дип — например АTtіny45 20su в магазине не было ATtiny45, зато был ATtiny85 20su. Его запрограммировал так же как и ATtiny 45 и фюзы одинаковы, они отличаются только память flech. Фюзы которые нужно запрограммировать CKSEL3, CKSEL2, CKSEL1, BODLEVEL0 (детектор пониженного напряжения на 1,8 В), RSTDSBL.

   Можно использовать любой разъем — там micro USB и тому подобное, я не мудрил, а взял штекер USB, снял шкуру, подпилил, припаял и получилось нечто такое, которое смахивает на обычную флешку

Подрезаем канцелярским ножиком, но осторожно, не порежетесь — лезвие очень острое

   Вытаскиваем пластмасску с контактами, тоже очень осторожно

   Возьмем и подпилим, чтобы был доступ жала паяльника до контактов USB, вверху уже лежит протравленная плата для USB программатора. Её травил в перекиси водорода + лимонная кислота. Он травит быстро.

   Лудил плату. Сплавом Розе я еще не разжился, поэтому лужу жалом паяльника, для лужения бросил камушек в растворитель канифоли, помешал, камень растворился, набрал в шприц (пропорции не помню), покрыл плату и лудится очень удобно. Припаиваем нашу пластмассу, только не путайте при пайке контакты, а то как я будете перепаивать, внизу на фото неправильно.

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

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

   Другую сторону — стабилитроны должны быть не больше чем 500 мА.

   Припаиваем шлейф кабель, желательно чтобы шлейф был экранированный, у меня кабель с кардридера использовал, брал провода которые экранированные — два оранжевых и экран = фольгу бросил на массу, фото без корпуса, надо сначала проверить на работоспособность, программа тора подключена ATtiny2313A зашилась скоро, я прошиваю на частоте 250 кГц, а фюзы на 2 кГц — так надежнее.

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

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

   И вот что получилось.

   Удачи всем в повторенные конструкции, а программатор avrdude USBtiny, также в архиве вы найдете драйвера прошивку разные печати платы сокращенно ПП на платах есть надпись KALYAN datasheet или сокращенное K.d — это из-за нехватки места, на ЧП вы можете быть уверены в качестве разводки печатной платы, всем удачи. С вами был KALAYN.SUPER.BOS

   Обсудить статью ПРОГРАММАТОР ДЛЯ НАЧИНАЮЩИХ

1 Преимущества новой прошивки авто

Автомобили с автоматическим управлением вполне заслужено обрели популярность по всему миру. Тысячи автолюбителей мечтают иметь как минимум коробку-автомат, а как максимум – то, что в народе именуется «полный фарш»: климат-контроль, всевозможные регуляторы и наладчики, для продуктивной работы которых нужно всего лишь нажать кнопочку. Комфорт стал своего рода фетишем, требующим, однако, немало средств. Оборудование, столь милое сердцам любителей комфорта, стоит очень дорого и позволить его могут не все. Но, как это часто бывает в русских сказках, на каждую иноземную примочку всегда найдётся народный умелец и соберёт-таки из газонокосилки самоходную телегу. В нашем случае – доведёт до ума базовую комплектацию своего автомобиля и сделает её более интересной и полезной, используя современное оборудование в виде компьютерных программ. Стать таким умельцем, тем самым приобщившись к великому русскому гению, может каждый. Необходим лишь программатор и набор комплектующих.

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

На самом деле, перепрошивка ЭБУ имеет всего две основные причины. Первая – это желание сэкономить топливо. Вторая – жажда более высокой мощности и динамичности авто. Иногда использование прошивки бывает оправдано за счёт введения новых законов, запрещающих применение топлива ниже стандарта EURO-III. Ещё одним нюансом становится маркетинговая стратегия автомобильных компаний, из-за которой они часто усредняют показатели своего товара, чтобы иметь возможность продавать его по всему миру. С помощью прошивки ЭБУ вы можете попросту раскрыть потенциал своего автомобиля, который был припрятан ради удобства производителя. Качественный чип-тюнинг машины устраняет недостатки в электронной системе, и одним из залогов успеха является правильно подобранный программатор.

Компиляция программы

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

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

Для прошивки МК применяется устройство, называемое программатор. В зависимости от типа программатора вход его подключается к COM или USB порту, а выход к определенным выводам микроконтроллера.

Существует широкий выбор программаторов и отладочных плат, однако нас вполне устроит самый простой программатор , который в Китае стоит не более 3 $.

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

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

Теперь давайте подытожим этапы программирования микроконтроллеров.

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

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

2 Виды памяти контроллера

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

Бортовой компьютер автомобиля принципом своего устройства мало чем отличается от настольного ПК. Разве что в более современных версиях оборудование ЭБУ использует два вида памяти, а именно FLASH и EEPROM, сохраняющие записанную на них информацию даже в условиях отсутствия источника питания. Первый вид является изменяемой памятью, то есть такой, которую можно перепрограммировать. На FLASH хранятся данные по управлению впрыском топлива и калибровке системы. В процессе прошивки эти данные переписываются по линии k-line системной диагностики. Оборудование для данного процесса особое: адаптер и подходящая программа-загрузчик. Память типа EEPROM предназначена для постоянных перезаписей и хранит временную информацию. Например, данные об ошибках системы, в дальнейшем помогающие провести диагностику неполадок. Коды доступа к сигнализации также находятся здесь, и некоторые семейства ЭБУ не поддерживают программатор без полного удаления иммобилайзера. Данные о типах памяти и их особенностях пригодятся при самостоятельном использовании прошивки.

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

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

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

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

Схема первая

С помощью этого программатора можно прошивать практически любой AVR-контроллер от ATMEL, надо только свериться с распиновкой микросхемы.

СОМ-разъем на схеме — это «мама».

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

Файл печатной платы открывать с помощью популярной программы Sprint Layout (если она у вас еще не установлена, то качайте 5-ую версию или лучше сразу 6-ую).

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

Вместо КТ315 я воткнул SMD-транзистор BFR93A, которые у меня остались после сборки микромощных радиомикрофонов.

А вот весь программатор в сборе:

Питание (+5В) я решил брать с USB-порта.

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

Если же ваша микросхема б/у-шная, то без внешнего кварца она может и не запуститься. Тогда лучше ставьте кварц на 4 МГц, а конденсаторы лучше на 33 пФ.

Как видите, я кварц с конденсаторами не ставил, но на всякий случай предусмотрел под них места на плате.

Заливать прошивку лучше всего с помощью программы PonyProg (скачать).

Прошивка с помощью PonyProg

Заходим в меню Setup -> Calibration -> Yes. Должно появиться окошко «Calibration OK».

Далее Setup -> Interface Setup. Выбираем «SI Prog API» и нужный порт, внизу нажимаем «Probe», должно появиться окно «Test OK». Далее выбираем микроконтроллер «Device -> AVR micro ATmega8».

Теперь втыкаем микроконтроллер в панельку программатора, и подаем питание 5 вольт (можно, например, от отдельного источника питания или порта ЮСБ). Затем жмем Command -> Read All.

После чтения появляется окно «Read successful». Если все ок, то выбираем файл с нужной прошивкой для заливки: File -> Open Device File. Жмем «Открыть».

Теперь жмем Command -> Security and Configuration Bits и выставляем фьюзы, какие нужно.

Тщательно все проверяем и жмем «OK». Далее нажимаем Command -> Write All -> Yes. Идет прошивка и проверка. По окончании проверки появляется окно «Write Successful».

Вот и все, МК прошит и готов к использованию!

Имейте в виду, что при прошивке с помощью других программ (не PonyProg) биты могут быть инверсными! Тогда их надо выставлять с точностью до наоборот. Определить это можно, считав фьюзы и посмотрев на галку «SPIEN».

Особенности нашего программатора:

  • Поддержка микросхем AT880204C и AT880204CA (например такие чипы как sams 2850, Xer 3250, Xer 3428 и многие другие) на этой микросхеме более 30 моделей.

  • Поддержка микросхем AT24C04 (Чипы Sams 4200 и все клоны) и AT24C02 (Sams CLP-300, Xer6110).

  • Поддержка Xer 3100, Oki B2500, Ric SP1000, Devel B 162F, Oki MB 260, Kona-Min pagepro 1480MF, Kon-Min pagepro 1490 перепрограммированию подлежат только чипы произведенные компанией ДелКопи.

  • Поддержка оригинальных чипов на микросхеме S3сс921 !!!!

  • Общее количество поддерживаемых чипов более 100 наименований.

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

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

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

  • В связи с использованием USB порта вы не привязаны к устаревшим COM и LPT портам, которых нет на новых материнских платах, а тем более на ноутбуках.

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

  • Программатор сам изменяет серийный номер чипа, алгоритм изменения — генератор случайных чисел.

  • Позволяет производить чтение чипа для просмотра данных до перепрограммирования и после, данные можно просмотреть в программе PonyProg (Пони-прог ) или любом НЕХ редакторе.

  • Симпатичный и компактный внешний вид, наличие разных переходников для разных моделей чипов.

  • Встроена поддержка с помощью обновлений (больше не надо отправлять программатор на производство).

  • Стоимость программатора равна 44$, из которых все 44$ кладутся вам на счет.

Таблица ценообразований на перепрограммирование

Тип чипа Стоимость перепрограммирования
АТ880204С 1$ за одно перепрограммирование
AT24C02 0.1$ за одно перепрограммирование
AT24C04 0.1$ за одно перепрограммирование
S3сс921 от 1$ до 6 за одно перепрограммирование подробнее в инструкции
Xer 3100 и им подобныее 4.9$ за одно перепрограммирование

Разводка коннектора

Разводка коннектора для программаторов без поддержки аппаратов Xer 3600 и Sam CLP 350 (цветовая маркировка может не совпадать)

  • 1 – VCC

  • 2 – не используется

  • 3 – SDA

  • 4 – SCL

  • 5,6,7 – не используется

  • 8 – GND

Разводка коннектора для новой версии программаторов (цветовая маркировка может не совпадать)

  • 1,3,6,7 – не используется

  • 2 – VCC

  • 4 – SDA\DATA

  • 5 – SCL\CLK

  • 8 – GND

Новости

09
03

ДЕЛКОПИ.РУ

       Компания Delcopi  сообщает что в  связи с открытием  прямого представительства в России  — ООО «ДелКопи»  www.delcopi.ru  компания ОЛДЗИП/Топенант больше не является дилером компании Delcopi, компания Delcopi  благодарит компанию ОЛДЗИП/Топенант за сотрудничество и желает  всего наилучшего.  Пополнить программатор, купить чипы в том числе чипы Lexmark, Pantum и многие другие. тонер и другие материалы можно на сайте www.delcopi.ru.

14
09

Обновление программатора DELCOPI !!!

Добавлено программирование новых чипов для использования в принтерах:
— LEXMARK MS/MX Series в том числе для MS 317 и других
— Исправлено некорректный анализ статуса «Блокированный» некоторых чипов для европейского ( 2) региона, теперь статус «Блокированный» определяется вернее.
— Исправлено некорректное программирование чипов 24F0001    
  стартовый чип на 1,5К для MS 310 и 24F1382 стартовый чип на 1,5К на MS317.

11
07

Запуск YouTube канала

Компания Делкопи сообщает о запуске своего официального Youtube канала.
Надеемся что просмотр видео  поможет вам в работе, сбережет время и нервы .
Иногда лучше один раз увидеть чем 5 раз прочитать или услышать.

11
07

Сообщение о программирование LEXMARK

Компания Делкопи сообщает
6 июня 2018 года компания Lexmark обновила принтера (обновление LW70.PRL.P022)
если Вы обновили принтер, чипы перепрограммированые программатором Делкопи
не будут работать.
Если Вы хотите использовать перепрограммированные чипы  пожалуйста не обновляйте принтера.

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

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

Двуликий Янус

Мы решили назвать этот программатор «Янус».

Почему так? Потому что в римской мифологии Янус — это двуликий бог дверей, входов и выходов, а также начала и конца. Какая связь? Почему наш программатор ChipStar-Janus двуликий?

А вот почему:

  • C одной стороны, этот программатор — простой. Распространяется как бесплатный проект, его можно легко изготовить самому.
  • C другой стороны, он разработан фирмой, длительное время профессионально занимающейся разработкой и производством различной радиоэлектронной аппаратуры, в том числе программаторами.
  • C одной стороны, этот программатор — простой, с первого взгляда имеет не сильно впечатляющие характеристики.
  • C другой стороны, работает совместно с профессиональной программой (кстати, точно такой же, как и остальные профессиональные программаторы ChipStar).
  • C одной стороны, мы предлагаем этот программатор для свободной сборки.
  • C одной стороны, мы его продаем и в готовом виде, как обычный бюджетный продукт.
  • C одной стороны, на самодельный программатор не распространяется гарантия (что естественно).
  • C одной стороны, если вы его смогли собрать, то и отремонтировать сможете, да и программатор настолько простой, что ломаться, собственно, нечему.
  • C одной стороны, это простой внутрисхемный программатор.
  • C одной стороны, через простые адаптеры расширения он поддерживает программирование NAND FLASH и других микросхем уже «в панельке».

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

Общие сведения

Ch441A Programment, это программатор начального уровня, изготовлена на черном стеклотекстолите (существует вариант на зеленом текстолите) с серебристой окантовкой. В комплект входит зеленая печатная плата и два штыревых разъема 1х4 (шаг 2.54 мм), данный комплект, позволит прошивать микросхемы SMD исполнении, очень удобно, если необходимо прошить пару микросхем, но если планируете использовать программатор постоянно, советую приобрести, так называемые ZIF переходники на 150 mil и 200 mil, позволяющие устанавливать SMD микросхемы без пайки.

На верхней части программатора, установлена микросхема Ch441А, рядом располагается кварцевый резонатор на 12 МГц, стабилизатор напряжения AMS1117-3.3 который выдает 3.3В, а так же электрическая обвязка всех этих компонентов (резисторы, конденсатора). Для программирования микросхем, установлена 16 контактная DIP панель с нулевым усилием с маркировкой TFXTDOL. С двух стороны DIP панели, располагается две группы дополнительных контактов, назначение каждого можно посмотреть на обратной стороне платы.

На другой стороне платы, дополнительно добавлено место для установки SMD микросхем (150 mil и 200 mil) и нарисована шёлкография.

Назначение группы контактов 1: ► 1,2,3 – выбор режима работы (1-2 режим Paralell (внутренней) и 2-3 режим Serial (внешней) ► TX – передаваемые данные ► RX – принимаемые данные ► GND – питание земля ► 5V – питание +5 В

Назначение группы контактов 2: ► CLK – линия тактирования (Serial CLock) ► CS – режим работы ► MOSI – прием данных ► MISO – передача данных ► GND – питание земля ► 3.3V – питание +3.3 В ► 5V – питание +5 В

Подключение программатора MinProgramment

Подключаем программатор к порту USB на компьютере, если все нормально, на плате загорится красный светодиод. Далее операционная система начнет поиск драйвера, если драйвера в системе нету, необходимо самостоятельно скачать его Ch441SER.ZIP (при ошибки 43 необходимо посмотреть эту статью). Распаковываем архив и запускаем установочный файл «setup.exe», в открытом окне жмем «INSTALL» (драйвер подходит и для Ch440).

При включенном, режиме Paralell (1 — 2) в разделе «Интерфейсы» появится новое устройство «USB-EEP/I2C… Ch441A», а при включенном режиме Serial (2 — 3) в разделе «Порты (COM и LPT)» появится новое устройство «USB-SERIAL Ch441A». Теперь необходимо установить программное обеспечение для работы с программатором, в примере использую русифицированную «Ch441A — USB Programmer 1.30». Скачиваем и разархивируем архив, запускаем установочный файл, процесс установки не сложный и состоит из четырех этапрв.

Программатор готов к прошивки микросхем.

Процесс прошивки микроконтроллера

  1. Произвести необходимые для работы программы настройки.
  2. Установить микроконтроллер в программатор так, как отмечено на схеме. Лучше лишний раз убедиться, что всё так, как должно быть, чем ехать за новым МК.
  3. Подключить питание.
  4. Запустить выбранное программное обеспечения (для этого программатора ещё раз посоветуем IC-Prog).
  5. В выпадающем меню вверху справа выбрать, какой именно микроконтроллер следует прошить.
  6. Подготовленный файл выбрать для программирования. Для этого перейдите по пути «Файл» – «Открыть файл». Смотрите, не перепутайте с «Открыть файл данных», это совсем другое, прошить микроконтроллер с помощью второй кнопки не получится.
  7. Нажать на кнопку «Начать программировать микросхему». Примерное время, через которое она будет запрограммирована – до 2 минут. Прерывать процесс программирования нельзя, это чревато выведением из строя микроконтроллера.
  8. И в качестве небольшого контроля нажмите на кнопку «Сравнить микросхему с буфером».

Не очень сложно, но эта последовательность действий позволяет получить качественный программатор, своими руками сделанный, для различных типов микроконтроллеров РІС.

Обзор программатора

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

Индикация программатора LED

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

Клипса для прошивания so-8

Мною ранее были приобретены для работы с программатором СН341А специальная клипса для прошивания микросхем в корпусе SO-8, без выпаивания, а также два переходника, которые выпускаются с разной шириной микросхем в разных корпусах — 150mil и 200mil.

Адаптеры для прошивания МК SO-8

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

Оболочка внешний вид

Программатор поддерживает все стандартные операции, с возможностью пакетного выполнения, задаваемых пользователем, например считать — стереть — записать — сверить. Модели нужной микросхемы нужно выбирать в списке вручную, исключение составляет Flash память, 25 серия, она может определяться автоматически. При открывании меню Chip Program мы видим рисунок с расположением нашей микросхемы относительно ZIF панельки.

Программировать микросхему в Чип Програм

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

Выбор микросхемы из списка

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

Установка фьюзов AVR МК

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

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

Программатор позволяет прошивать память различной техники содержащей в своем составе микросхемы BIOS — это материнские платы и видеокарты, роутеры и ноутбуки, цифровые приставки и спутниковые ресиверы, дешевые модели ЖК ТВ и мониторов, в общем практически любое цифровое устройство которое шьется не через USB кабель.

ЮСБ вход прогера

Прошивает программатор довольно быстро, у меня было с чем сравнивать. Например прошивание 4 мегабайт или 32 мегабит микросхемы BIOS, последовательной памяти на цифровой приставке программатором Ch441A, вместе с чтением старой прошивки и верификацией, занимает где-то около часа.

Гнездо внутрисхемного программирования

Покупка данного программатора оправдана если вы планируете регулярно заниматься ремонтами электроники. Если же вам необходимо разово прошить BIOS, либо микроконтроллер, целесообразнее приобрести перечисленные в начале статьи намного более дешевые программаторы. В целом покупкой остался доволен и думаю, что мог бы рекомендовать данный программатор к приобретению другим радиолюбителям. Всем удачных ремонтов — AKV.
 
   Форум по микроконтроллерам

   Обсудить статью УНИВЕРСАЛЬНЫЙ ПРОГРАММАТОР MINIPRO TL866A

Платные против самодельных

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

Структура и порядок написания программы

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

Следующим этапом после составления алгоритма является непосредственное написание кода программы. Программы для микроконтроллеров пишутся на языке Си или Ассемблере. Только Ассемблер больше относится к набору инструкций, нежели к языку программирования и является языком низкого уровня.

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

Здесь мы не будем сравнивать преимущества и недостатки написания программ на Ассемблере и Си. Со временем, приобретя некоторый опыт в программировании МК, вы сами для себя сделаете полезные выводы.

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

3 Оборудование и технология перепрограммирования

Самые современные ЭБУ не имеют внешнего блока FLASH-памяти. Программа изначально внедрена в память процессора и состоит из таких частей:

  • бутлоадер – управление запуском и обновлением применяемой версии прошивки;
  • основная программа по управлению двигателем;
  • калибровочные программы.

Используя программатор, вы обновляете все части ЭБУ, кроме бутлоадера. Если вдруг после установки новой прошивки с отличным от исходного бутлоадером появляется запись об ошибке, то необходимо эту прошивку открыть в специальном редакторе для калибровок – CTPro. Там её необходимо сохранить и в этом виде снова попытаться внести в свой ЭБУ.

Рекомендуется тщательно следить за состоянием бутлоадера в процессе прошивки. Программатор будет производить запись новой программы после нажатия на соответствующую кнопку («запись»), а в этом процессе удерживание нажатой клавиши «Shift» вплоть до стирания флэш-памяти обновит бутлоадер. Если программатор сделает запись с ошибкой, то ЭБУ вообще перестанет отвечать на ваши команды. Именно для тех видов контроллеров, перезапись которых осуществляется через бутлоадер процессора, предназначен способ физического вмешательства в систему. Вы особым образом перепаиваете расположение резистора и возвращаете его на место после программирования.

Не будет необходимости что-то качать, потом заново закачивать через другие программы и так далее. Это хитрое оборудование даже позволяет редактировать прошивку в специальной программе Chip Tuning Pro, если вдруг возникнет такая необходимость. Но, увы, данное устройство подходит далеко не всем ЭБУ.

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

Вопросы и ответы, связанные с программатором

Как происходит списывание оставшегося количества прошивок (программирований)?

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

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

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

Ошибка 00000103

А) Вы не подключили программатор и запускаете программу.

В) Вы не дождались пока произойдёт определение и установка драйверов программатора.

Запускайте программу только при включенном программаторе.

Попробуйте отсоединить программатор от USB и подключить его снова.

Как пополнить программатор прошивками?

  • Нажмите кнопку «Сервис».

  • Зайдите в раздел «Счётчики программирования».

  • Скопируйте в буфер обмена код из строки «Код-запрос».

  • Передайте «Код-запрос» продавцу программатора.

  • Укажите продавцу программатора необходимое Вам количество прошивок.

  • Оплатите заказанное вами количество прошивок.

  • Получите от продавца программатора «Код-ответ».

  • Внесите «Код-ответ» в строку «Код-ответ».

  • Нажмите кнопку «Принять»

  • Программатор пополнен на нужное вам количество копий.

Планируется ли перевод программы на другие языки?

Сейчас поддерживаемые языки:

  • Русский

  • Английский

  • Иврит

Перевод программы на другие языки производится по отдельному запросу.

Заключение

Многие радиолюбители предпочитают изготавливать инструменты для себя самостоятельно, так как себестоимость такого оборудования существенно отличается от фирменного. Существует множество технических решений, позволяющих собрать устройство любого типа, в том числе и программатор чипов картриджей практически всех видов лазерных и струйных принтеров. Такие устройства подключаются к персональному компьютеру с помощью USB-порта, а к устройству — через СОМ-порт. Схема самого программатора элементарна, не требует дополнительных настроек, а себестоимость составит всего 2-3 доллара.

описание USBASP драйвера, инструкция по настройке своими руками в AvrDude Prog, Atmel Studio и Khazama AVR Programmer, обновление проши

В моём случае это абсолютный рекордсмен по скорости доставки — около 5 месяцев беспечного блуждания непонятно где. Несмотря на чудовищную задержку по времени, пакет я всё-таки получил, чему несказанно рад, не взирая на недочёты, о коих поведаю ниже. Поскольку у меня весьма плохая память, то нужно было объединить найденную полезную информацию где-то в одном месте в виде памятки, собирать её по крупицам в разных закоулках сети оказалось делом нетривиальным, поэтому оформлю всё это отдельным постом.
USB ISP — самый дешёвый программатор контроллеров AVR, что можно найти в продаже, брался для расширения кругозора и более углубленного изучения AVR.
Обзор в себя включает: описание программатора, как его подключить к чипу, настройку его работы в программах AvrDude Prog, Khazama, Atmel Studio 7, и не только это.

Конечно вместо него можно использовать Arduino UNO с прошитым в него скетчем ArduinoISP, но это не удобно, возня с проводами, особенно если UNO всего одна, отбивает энтузиазм. Проще было заиметь отдельно такой программатор, точнее два. По двум причинам:
1) Ещё перед покупкой уже из отзывов было понятно, что качество пайки этих устройств страдает, а некоторым ещё и с расколотыми стабилитронами они приходили. Решено было подстраховаться, заказав два.
2) Один программатор к тому же можно шить другим, переставив перемычку на ведомом устройстве.

Технические характеристики Поддерживаемые ОС: Windows, MacOS, Linux
Процессор: Atmega8A
Интерфейс подключения к ПК: USB
Интерфейс программирования: ISP (внутрисхемное)
Напряжение программирования: 5В или 3.3В (в зависимости от положения перемычки JP2)
Частота программирования: 375кГц (по умолчанию) и 8кГц (при замкнутой перемычке JP3)
Поддерживаемые контроллеры: все AVR с интерфейсом SPI
Описание: ссылка

Список поддерживаемых микроконтроллеров

ATmega серия ATmega8 ATmega48 ATmega88 ATmega168 ATmega328
ATmega103 ATmega128 ATmega1280 ATmega1281 ATmega16
ATmega161 ATmega162 ATmega163 ATmega164 ATmega169
ATmega2560 ATmega2561 ATmega32 ATmega324 ATmega329
ATmega3290 ATmega640 ATmega644 ATMEGA64 ATmega649
ATmega6490 ATmega8515 ATmega8535

Tiny серия ATtiny12 ATtiny13 ATtiny15 ATtiny26 ATTINY25
ATtiny45 Attiny85 ATtiny2313

Серия Classic AT90S1200 AT90S2313 AT90S2333 AT90S2343 AT90S4414
AT90S4433 AT90S4434 AT90S8515
AT90S8535

CAN серияAT90CAN128

PWM серияAT90PWM2 AT90PWM3

Внешний видКомплект поставки минимальный — программатор + шлейф без резинки. В моём случае в удвоенном количестве.

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







Некоторые отверстия не целиком заполнены припоем

SMD-элементы тоже криво припаяны

Гребёнку чуть позже выровнял, уж больно неприятно на такую раскосую смотреть, элементы пропаял, а плату затем отмыл

Размеры платы несколько больше USB-TTL-конвертера на CP2102

Длина шлейфа около 30см, бытует мнение, что чем короче шлейф, тем лучше. Некоторые его специально укорачивают. Если заказать оригинальный USBASP — там комплектный шлейф уже 50см.

Органы управления на платеНа плате имеются три перемычки, задающие разные режимы работы программатора:
JP1 — замыкается в случае обновления прошивки самого программатора
JP2 — тройная перемычка, здесь выбирается, какое напряжение будет подаваться на прошиваемый микроконтроллер, либо 5В (левое положение) и 3.3В (правое положение)
JP3 — если её замкнуть, то программирование контроллера будет происходить с пониженной частотой, однако китайцы не стали сюда впаивать гребёнку, т.к. на данной прошивке она не требуется
Программатор, как можно заметить, построен на базе Atmega8 с кварцем на 12МГц. Самый правый верхний элемент, подписанный F1, с перевёрнутой цифрой 4 — самовосстанавливающийся предохранитель, защищает USB-порт ПК/ноутбука, если на прошиваемой плате вдруг произошло короткое замыкание. Под перемычкой JP2 находится LDO-стабилизатор 662К, понижающий напряжение с 5В до 3.3В, если перемычка установлена в правое положение.

Установка драйверовЧтобы начать пользоваться программатором, необходимо сперва поставить на него драйвера. Вставляю любой программатор в USB-порт ПК, звучит сигнал о новом оборудовании, на самом девайсе горит светодиод, но автоматического поиска драйверов не происходит.
примечание. перед установкой драйвера необходимо отключить проверку цифровой подписи в Windows
1) Скачать драйвера, распаковать в удобное место.
2) Зайти в «Диспетчер устройств», например навести курсор на главную кнопку (Win10), нажать ПКМ и выбрать пункт «Диспетчер устройств».

3) В ветке «Другие устройства» можно увидеть неопознанное устройство USBASP с оранжевым треугольничком — > навести на него курсор, нажать ПКМ -> «Обновить драйверы…»

4) Указать путь до раннее распакованной папки с драйверами — «libusb_1.2.4.0», нажать «ОК»

5) «Всё равно установить этот драйвер»

6) Готово, теперь оранжевый треугольничек пропал, драйвера поставлены

Прошивка собрата Мне уже было известно до этого, что китайцы продают эти программаторы с не самой свежей прошивкой. Решил сперва обновить прошивку на одном из них, а затем ради интереса сравнить оба программатора в работе. Для этого соединяю шлейфом оба устройства, на ведущем (который вставляю в USB-порт) никакие перемычки не трогаются, а на ведомом программаторе (на котором будем обновлять прошивку) я переставил перемычку с JP2 на JP1:

Захожу в программу Khazama AVR Programmer, выбираю из выпадающего списка ATmega8 и сперва считаю Flash-память через пункт меню «Command» -> «Read FLASH to Buffer», чтобы cохранить китайскую заводскую прошивку у себя. На всякий случай.

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

Идёт считывание, которое завершается всплывающим окном об успешном считывании FLASH-памяти в буфер

Теперь нужно сохранить содержимое буфера: «File» -> «Save FLASH Buffer As…». Выбрать удобное место, куда старая прошивка сохранится, дать имя (я например её назвал firmware_1) и дописать расширение *.hex — если его не писать, то она сохранится как просто файл без расширения.

Скачиваю прошивку для программатора с этой странички, архив usbasp.2011-05-28.tar.gz (в этом же архиве есть драйвера для Windows, распаковываю содержимое в удобное место.
Тем временем в Khazama загружу скачанную прошивку в буфер. «File» -> «Load FLASH File to Buffer». Выбираю прошивку, где в названии написано atmega8, поскольку прошиваемый программатор на этом чипе.

Как видно, здесь три прошивки — для Atmega8, 48 и 88. В нашем случае Atmega 8 — её и выбираю.

Прошиваю. «Command» -> «Write FLASH File to Buffer». Снова возникает ошибка, но после идёт процесс, завершающийся успехом.



Поскольку в обычном понимании «запрограммировать» означает выставить 1, то при работе со фьюзами всё ровно наоборот, от чего возникает путаница и в этом случае можно по неосторожности заблокировать контроллер и прошить потом его будет уже нельзя. Программа Khazama AVR Programmer удобна просмотром фьюз-битов — там наглядно видно и расписано, какие из них установлены, а какие нет.

Находятся они по пути «Command» -> «Fuses and Lock Bits…», откроется окно:

Где по нажатии кнопки «Read All» считаются фьюз- и лок-биты, а пресловутая ошибка успеет вылезти аж 5 раз подряд. Ошибки сыпятся именно на заводской китайской прошивке. Но если вставить в USB-порт недавно прошитый программатор, прошивкой скаченной по ссылке выше, то этих ошибок вылазить уже не будет, однако баги вылезут в другом месте, но о них позже.

Связь с платой Pro Mini (Atmega 168, 3.3V/8MHz) В этом случае выводы программатора соединяются с выводами платы Pro Mini, как проиллюстрировано на схематичном рисунке ниже. Перемычки не переставляются, т.е. остаётся в положении 5В.
Несмотря на то, что плата Pro Mini подписана как 3.3В, на 168-ю Атмегу можно подавать и 5В. Стабилизатор AMS1117 на 3.3В кстати вообще выпаян из платы.

AVRDUDE PROG 3.3
Консольная программа для прошивки микросхем, своего графического интерфейса не имеет, в стоке работает из командной строки, но энтузиастами было написано немало оболочек на неё, для удобства работы с ней. Одна из таких оболочек называется AVRDUDE PROG, созданная русскоязычными разработчиками. Эта оболочка, на мой взгляд удобна как раз для Flash-перепрошивки МК. После её запуска выбирается контроллер, в данном случае Atmega168 и тип программатора — USBasp. После чего можно заниматься записью/считыванием памяти. Что на заводской прошивке, что на новой — в обоих случаях никаких проблем с общением с Atmega168 не возникло. Прошил ради интереса ардуиновский стандартный blink-скетч, экспортированный в бинарный HEX-файл. Всё гладко.



Khazama AVR Programmer
Здесь достаточно выбрать микроконтроллер из выпадающего списка и можно уже работать с памятью/битами.
Однако если на самом программаторе установлена заводская прошивка, периодически будут сыпаться ошибки, о чём выше уже было упомянуто, на новой прошивке — данных ошибок уже нет.

Связь с контроллером ATtiny13A в корпусе SOIC8 Соединение согласно схеме ниже. Но тут всё немного интереснее.

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

AVRDUDE PROG 3.3
Тут выбирается из списка одноимённый контроллер, программатор USBasp и, если программатор прошит заводской китайской прошивкой, то все операции проходят ровно и гладко. Однако стоит заменить программатор на другой, с обновлённой прошивкой, то при любой операции возникает ошибка.

Появляется она из-за того, что ни программа, ни программатор не могут автоматически перейти в режим медленного программирования, необходимый для ATtiny13. Но есть как минимум два выхода:
1) Железный: замкнуть перемычку JP3

2) Программный: отредактировать файл «programm.ini» в папке с программой AVRDUDE PROG 3.3

Внести туда четыре строчки кода и сохранить. (взято отсюда)

progisp=jtag2pdiportprog=COM1portenabled=1[UsbaspSpeed]
progisp=Usbasp -B 3
portprog=usb
portenabled=0
Примечание. Здесь применён ключ «-B», который и занимается переводом программатора на пониженную частоту программирования. Значение «3» — время в микросекундах

После этого снова запустить AVRDUDE PROG 3.3 и в выпадающем списке программаторов выбрать UsbaspSpeed. Теперь работа с ATtiny13 на программаторе с новой прошивкой будет уже без ошибок, а перемычку JP3 замыкать больше не потребуется в этом случае.

Khazama AVR Programmer
Выбирается контроллер из списка и почти та же ситуация.

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

Но стоит замкнуть перемычку JP3, и можно спокойно работать

Или просто задать частоту работы из выпадающего списка по пути «Command» -> «Programm Options», я выставил частоту 187.5кГц.

Примечание. Частота программирования должна быть меньше тактовой частоты прошиваемой микросхемы не менее, чем в 4 раза. Но если посмотреть на считанные с ATtiny13 фьюзы, то на последней строчке Int.Rc.Osc. указано 9.6МГц.
Как минимум, у новичка возникнет вопрос — почему на выставленных в KHazame 1.5МГц — появляется та же ошибка? А также почему, если в AtmelStudio написать например код мигания светодиода с частотой раз в секунду и в макросе прописать:
#define f_cpu 9600000
то загрузив код на Attiny13, светодиод будет мигать очень медленно?
— посмотрим на предпоследнюю строчку, где Divide Clock by 8 Internally [CKDIV8=0] — это включенный предделитель частоты, который делит эти 9.6МГц на 8, и поэтому реальная частота чипа здесь — 1.2МГц. Поэтому при выборе частоты 187.5кГц или меньше, ошибки исчезают и можно работать нормально с контроллером.
Примечание 2. Способ с выбором частоты в KHazame по скорости работы в несколько раз выигрывает у метода с физическим замыканием перемычки JP3, потому как в последнем случае частота понижается до 8кГц.

Интеграция программатора в Atmel Studio 7 Atmel Studio — среда разработки от фирмы Atmel, но напрямую работать с USBASP, тем более китайским, она не может. Однако благодаря той же программе AVRDUDE, входящий в состав пакета AVRDUDE PROG 3.3, которая будет играть здесь роль посредника, можно соорудить «костыль», а уже в самой среде затем добавить возможность прошивать МК, подключенный через USBASP.

Сперва нужно запустить среду, предполагается, что некий код у нас уже написан и собран. В моём примере это простая мигалка светодиодом — Blink.

На верхней панели инструментов выбрать «Tools» — «External Tools…»

Откроется небольшое окно, нажать «Add»

В самом верхнем поле «Title:» ввести любое удобное название, я написал «Atmega168», т.к. та конфигурация, что приведу чуть ниже относится конкретно к этому контроллеру, и для любого другого контроллера она настраивается индивидуально.
В большом поле наверху, название инструмента будет автоматически продублировано.

Вторая строка, поле «Command:» — здесь нужно указать путь до файла «avrdude.exe», который находится в папке с вышерассмотренной программой

Третья строка, поле «Arguments:» необходимо ввести собственно саму конфигурацию

Конфигурация для Atmega168

-p m168 -c usbasp -P usb -U flash:w:$(ProjectDir)Debug\$(TargetName).hex:a

-p — наименование контроллера
-с — какой программатор
-P — порт, через который будет заливаться прошивка
-U — какая операция с какой памятью будет производится (в данном случае запись во Flash)
Если нужно настроить для другого МК, то параметр «m168» нужно изменить на соответствующий контроллер, который будет прошиваться. Например «m8» для Atmega8 или «m328p», если Atmega328p. Параметры для других МК смотрите здесь — также там найдёте описания ключей AVRDUDE.

Конфигурация для ATtiny13

-p t13 -c usbasp -B 3 -P usb -U flash:w:$(ProjectDir)Debug\$(TargetName).hex:a 
Здесь можно заметить уже два изменения: помимо «t13», добавился уже знакомый ключ «-B» со значением «3» для снижения скорости программирования
После заполнения полей нажать «Apply» и «ОК». Окно закроется

Теперь, если снова кликнуть по «Tools», там появится только что созданный инструмент. И по нажатии по нему откомпилированный код будет автоматически прошит в контроллер.

Но эта операция происходит в два клика, что не очень удобно. Надо вынести этот инструмент на главную панель инструментов, чтобы он был всегда на виду.
Для этого нужно снова зайти в «Tools», затем кликнуть по пункту «Customize…»
Откроется следующее окно:

Перейти во вкладку «Commands» — нажать кнопку «Add Command…»

Ещё одно окно появится. В нём — в левой колонке выбрать «Tools», а в правой колонке выделить «External Command 1». Нажать «OK»

«External Command 1» окажется наверху списка, и, обратите внимание на саму панель инструментов — в интерфейсе появился пункт «Atmega168».

Но как мне кажется, место ему отведено не совсем удачное, желательно его сдвинуть вправо, для этого нажимается кнопка «Move Down» (одно нажатие = сдвиг на одну позицию вправо). После этого можно закрывать окно по кнопке «Close» и шить чип прямо из студии в один клик через обозреваемый программатор.

При перепрошивке чипа таким методом, на секунду появляется консольное окно AVRDUDE. Но может возникнуть необходимость как-то сохранить этот лог для дальнейшего его просмотра — тогда в окне «External tools» нужно поставить галку на «Use Output window».

И теперь лог будет отображаться в окне вывода, что внизу программы ATmel Studio 7. Данная галка может задаваться отдельно для каждого добавленного в «External tools» контроллера.

Дополнение по фьюзам программатора Из документа READMI, идущего в комплекте с драйверами и прошивкой для USBASP, позже выяснилось, что разработчик рекомендует выставить определённую конфигурацию фьюз-битов, определяющих работу внешнего резонатора.
Минусом khazam’ы является то, что в окне со фьюзами не отображаются HEX-значения выставленных битов. Это уже можно посмотреть в AVRDUDE PROG. Заводские фьюзы, выставленные китайцами, выглядят так (обязательно поставить точку «инверсные» — выделил синим прямоугольником):

Как рекомендует выставить разработчик:

HFUSE=0xc9
LFUSE=0xef

Это нужно снять две галки с «BODEN» и «SUT1» (выделено красным овалом),
поставить две галки на «CKOPT» и «SUT0» (выделено зелёным прямоугольником),
справа в колонке при этом будут отображаться HEX-значения изменённых битов (выделено жирным красным прямоугольником): Lock Byte: 3F, Fuse High Byte: C9, Fuse Low Byte: EF.

Если всё сходится, можно нажимать «программирование»

ВНИМАНИЕ. Злой фьюз-бит RSTDISBL — не трогать ни в коем случае, иначе его установка заблокирует контроллер и прошить потом через USBASP его уже будет нельзя.
_____________________________________

Выводы Опробовано, работает. Если khazam не планируется использовать, то в обновлении прошивки для программатора — смысла нет, благо и так прекрасно работает, причём в случае с ATtiny13 никаких правок и перемычек вносить не требуется. Последняя прошивка — почему-то оказалась более капризна в этом плане. Единственное, после получения, плату надо пропаять и отмыть.

Список ссылок
1) Описание USBASP
2) AVRDUDE PROG 3.3 (форум)
3) Khazama AVR Programmer 1.7
4) Китайская стоковая прошивка (10кб)
5) Архив с прошивками для USBASP и драйверами для Windows — сайт создателя проекта

Универсальный usb программатор микросхем своими руками. Универсальный USB программатор. Какие микроконтроллеры поддерживаются и могут быть прошиты программным обеспечением

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

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

Цена готовых 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, я рассказал в отдельной статье. Следующий шаг .

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

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

В данной статье приведено описание USB программатора для микроконтроллеров AVR, который можно собрать своими руками. Построен он на микроконтроллере Atmega8 и способен работать от USB разъема компьютера. Данный программатор совместим с STK500 v2.

Описание USB программатора

USB программатор построен на плате, сделанной из одностороннего фольгированного стеклотекстолита . На плате есть 2 перемычки: одна расположена под разъё­мом SPI, вторая перемычка расположена неподалеку от того же разъема.

После того как все детали будут запаяны нужно прошить микроконтроллер Atmega8 прошивкой приведенной в конце статьи. Фьюзы, которые необходимо выставить при программировании микроконтроллера Atmega8, должны выглядеть следующим образом:

  • SUT1 = 0
  • BOOTSZ1 = 0
  • BOOTSZ0 = 0
  • CKOPT = 0
  • SPIEN = 0

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

Программирование Atmega8 через LPT-порт компьютера

Самый быстрый и дешевый способ запрограммировать Atmega8 – применить LPT-программатор для AVR. Подобная схема приведена ниже.

Питание микроконтроллера осуществляется от простого стабилизатора напряжения 78L05. В качестве оболочки для программирования можно использовать программу UniProf.

При первом включении программы и при не подключенном контроллере, нажав кнопку «LPTpins», необходимо настроит выводы LPT-порта следующим образом:

В момент запуска UniProf, она автоматом определяет вид микроконтроллера. Загружаем в память UniProf прошивку Atmega8_USB_prog.hex, отклоняем подключение файла EEPROM.

Выставляем следующим образом фьюзы (для программы UniProF), нажав кнопку «FUSE»:

Для запоминания установок нажимаем все три кнопки «Write». Затем нажав на «Erase» предварительно очищаем память прошиваемого микроконтроллера. После этого уже жмем на «Prog» и дожидаемся завершения прошивки.

Настройка USB программатора

После того как наш микроконтроллер прошит, его необходимо установить в плату USB программатора. Далее подключаем программатор к USB порту компьютера, но пока питание не подаем.

Настройка порта:

Настройка терминала:

Настройка ASCII:

Теперь после всех проделанных процедур, подаем питание на USB программатор. Светодиод HL1 должен промигать 6 раз и затем светится постоянно.

Для проверки связи USB программатора с компьютером 2 раза нажимаем клавишу «Enter» в программе HyperTerminal. Если все в порядке мы должны увидеть следующую картину:

Если это не так проверяем еще раз монтаж, особенно линию TxD.

Далее вводим версию программатора 2.10, так как без этого програм­матор не будет работать с программами «верхнего уровня». Для этого вводим «2» и нажимаем «Enter», вводим «а» (английская) и нажимаем «Enter».

USB программатор способен распознавать подключение программируемого микроконтроллера. Выполнено это в виде контроля «подтяжки» сигнала Reset к источнику питания. Этот режим включается и выключается следующим образом:

  • «0», «Enter» — режим выключен.
  • «1», «Enter» — режим включён.

Изменение скорости программирования (1МГц):

  • «0», «Enter» – максимальная скорость.
  • «1», «Enter» – сниженная скорость.

На этом подготовительная работа завершена, теперь можно попробовать прошить какой-нибудь микроконтроллер.

(скачено: 1 199)

Вот есть микроконтроллер, есть написанная программа. Что ещё нужно? Программатор! Ведь без помощи аппаратуры, которая сможет записать последовательностью сигналов процесс, который хочет реализовать человек, сложно будет что-то сделать. А как здорово сделать программатор своими руками!

Также здесь вы найдете описание программаторов и из другого семейства — АВР, но исключительно в сравнительных целях. Приступим к статье, где рассказывается, как сделать программатор-flash своими руками.

Для чего необходим программатор

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

Платные против самодельных

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

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

Драйвера

Первоначально следует подобрать программное обеспечение. В зависимости от схемы программатор может быть заточен или под один микроконтроллер, или под большое их количество. Тот, что будет далее рассматриваться, рассчитан примерно на 98 программаторов от 12-го до 18-го семейств. Для тех, кому понравится вариант сборки, следует уточнить, что в качестве драйверного программного обеспечения использовалась программа IC-PROG. Можете попробовать работать и с другой, но уже на свой страх и риск. Это информация для тех, кто хочет создать программатор для AVR своими руками. Далее будет указано, для каких семейств микроконтроллеров РІС он рассчитан. Если есть желание сделать программатор AVR своими руками или какой-то другой тип МК, то вы всегда можете попытаться.

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

Вот тут уже можно попробовать сделать программатор для PIC своими руками. В качестве гнезда необходимо использовать разъем DB9. Можно сделать и USB-программатор своими руками, но для него понадобятся дополнительные элементы схемы, которые усложнят и без того довольно сложную плату. Также внимательно рассмотрите рисунок с различными прямоугольниками (чтобы знать, какие части за что отвечают). Выводы должны подключатся именно туда, куда нужно, иначе микроконтроллер превратится в небольшой кусочек пластика и железа, который можно поставить на стеночку как напоминание о былых ошибках. Процесс сборки и использования программатора таков:

  1. Собрать сам программатор так, как написано на схемах. Просмотреть на наличие некачественной пайки, а также потенциальных мест замыкания. Программатор рассчитан на работу с напряжением 15-18В, больше категорически не рекомендуется.
  2. Подготовьте среду управления прошивкой (выше было упоминание одной программы, с которой программатор точно работает).

Процесс прошивки микроконтроллера

Процесс прошивки микроконтроллера данными можно считать продолжением предыдущего списка:

  1. Произвести необходимые для работы программы настройки.
  2. Установить микроконтроллер в программатор так, как отмечено на схеме. Лучше лишний раз убедиться, что всё так, как должно быть, чем ехать за новым МК.
  3. Подключить питание.
  4. Запустить выбранное программное обеспечения (для этого программатора ещё раз посоветуем IC-Prog).
  5. В выпадающем меню вверху справа выбрать, какой именно микроконтроллер следует прошить.
  6. Подготовленный файл выбрать для программирования. Для этого перейдите по пути «Файл» — «Открыть файл». Смотрите, не перепутайте с «Открыть файл данных», это совсем другое, прошить микроконтроллер с помощью второй кнопки не получится.
  7. Нажать на кнопку «Начать программировать микросхему». Примерное время, через которое она будет запрограммирована — до 2 минут. Прерывать процесс программирования нельзя, это чревато выведением из строя микроконтроллера.
  8. И в качестве небольшого контроля нажмите на кнопку «Сравнить микросхему с буфером».

Не очень сложно, но эта последовательность действий позволяет получить качественный программатор, своими руками сделанный, для различных типов микроконтроллеров РІС.

Какие микроконтроллеры поддерживаются и могут быть прошиты программным обеспечением

Как уже выше упоминалось, этот программатор может работать как минимум с 98 моделями. Как можно заметить по схематическим рисункам и платам, он рассчитан на те МК, что имеют 8, 14, 18, 28 и 40 выводов. Этого должно хватить для самых различных экспериментов и построения самых разных механизмов, которые только можно сделать в пределах скромного бюджета среднестатистического гражданина. Можно выразить уверенность, что сделанный программатор своими руками сможет удовлетворить самых требовательных радиолюбителей — при условии, что он будет сделан качественно.

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

В дальнейшем программа неоднократно дорабатывалась, номенклатура поддерживаемых микросхем расширялась. Последняя версия — август 2005г. Она поддерживает следующие классы микросхем: PROM : 155PE3, 556PTxx; EPROM : 2716…27512, 27C64…27C512; EEPROM : W27C512, 28C16A, 28C17A, 28C64A, AT28C64B, AT28C256, AT29C256/257/512; 8051 : 8751, 87C51, 87C51FA, 87C51FB, 87C51FC, 87C51RD+, AT89C51, AT89C52, AT89C55, AT89C1051, AT89C2051, AT89C4051, AT89S53, AT89S8252; PIC16 : PIC12F629/675, PIC16F84/C84, PIC16F627/A, PIC16F628/A, PIC16F648A, PIC16F73/74, PIC16F76/77, PIC16F873/874, PIC16F876/877, PIC16F876A/877A, PIC16C5xx, PIC16C6x, PIC16CE6xx, PIC16C7x; AVR : AT90S1200, AT90S2313, AT90S2323/2343, AT90S2333, AT90S4414/4434, AT90S4433, AT90S8515/8535, ATtiny10/11, ATtiny12, ATtiny15, ATtiny28; I2C : 24LC01…24LC512, PCA8581, PCF8582, ST24E16; PIC18 : PIC18Fxx2/xx8; PIC12 : PIC12C508/509, PIC12F508/509, PIC16F505.

Для ATMEL AVR поддерживаются все режимы программирования: как Low voltage, так и High voltage. Т.е. можно программировать в параллельном режиме все поддерживаемые AVR микроконтроллеры.

Принципиальная схема основного блока программатора показана на рисунке. Его легко собрать своими руками. Программатор представляет собой универсальный микропроцессорный контроллер на базе микроконтроллера КР1830ВЕ31 (80C31). В его состав входят следующие узлы: ПЗУ DD3 для хранения управляющей программы, ОЗУ DD5 для хранения данных, регистр для демультиплексирования адреса и данных DD2, параллельный порт для связи с программируемой микросхемой DD4, а также узлы приемника и передатчика RS-232, осуществляющие преобразование уровней – VT1 и VT2. Все эти элементы включены по стандартной схеме.

Основное отличие данного программатора от других – это возможность работы с любым компьютером, под управлением любой операционной системы. Не обязательно Windows или DOS, даже не обязательно IBM совместимый компьютер. Важно, чтобы имелся COM порт и стандартная коммуникационная программа для работы с ним. Если нет COM порта, программатор можно подключить и к USB через адаптер USB-COM. Поддерживаются кодировки DOS, Windows и KOI-8.

На компьютере должна быть запущена какая-либо коммуникационная программа, например «Telemax», входящая в комплект Norton Commander, «Terminal» из Windows и т.п. Я обычно пользуюсь простой, но очень удобной программой «Tera Term Pro 2.3».

Пользователь управляет процессом программирования, набирая на клавиатуре компьютера команды и наблюдая на экране результаты их выполнения. Все команды состоят из одной или двух латинских букв, которые можно набирать, как в верхнем, так и в нижнем регистре клавиатуры. За командой могут следовать один, два или три цифровых параметра, разделенных пробелом. Не значащие нули слева можно не вводить, а команду редактировать клавишей «Back Space». Ввод завершается нажатием «Enter». В случае какой-либо ошибки при вводе выдается сообщение «ERROR», а на выполнение команд, последствия которых могут быть необратимы для программируемой микросхемы, запрашивается подтверждение. Полный список всех доступных команд постоянно присутствует на экране, поэтому, даже если пользоваться программатором один раз в год, не придется что-либо вспоминать.

При работе с программатором вначале необходимо нажать на клавиатуре компьютера любую буквенно-цифровую клавишу в латинском регистре, т.е. с кодом менее 128. При этом программатор автоматически определит скорость работы порта и будет посылать информацию в компьютер на этой же скорости. Если все сделано правильно, на экране появится предложение выбрать кодовую таблицу, с которой будет работать программатор. Как указывалось выше, поддерживается кодировка DOS, Windows и KOI-8. Все дальнейшие сообщения будут выводиться на экран на русском языке. Если символы не читаемы, значит кодовая таблица выбрана неверно и следует выключить и снова включить программатор, а затем выбрать другую кодировку.

Программа дорабатывалась в течение нескольких лет. В итоге — около 400(!) кбайт чистого текста на ассемблере. Кодировка — DOS, не пытайтесь перекодировать ассемблерный текст в Windows , это полностью нарушит работу программы.

Для расширения номенклатуры программируемых микросхем есть несколько путей. Во-первых, по мере появления у автора возможности, необходимости и желания, программа модернизируется. Во-вторых, архитектура программатора открытая, поэтому любой желающий, конечно, при наличии достаточных знаний и опыта, может написать свою собственную программу. Наконец, в-третьих, можно разработать программный модуль для нужного типа микросхемы и непосредственно перед программированием загружать его в верхнюю половину ОЗУ в виде HEX файла, а затем запускать на выполнение командой G из меню.

Печатную плату я рисовал вручную, в те годы Sprint Layout еще не было. Но был PCAD, в котором и прислал мне свои варианты платы один из радиолюбителей, повторивших эту конструкцию. Я, в свою очередь, делюсь этой информацией с Вами. Это дополнение выложено в архиве в том виде, в каком я его получил — «как есть». Более подробно работа с программатором описана в pdf файле, там же приведены схемы всех сменных блоков. Выкладываю также прошивку и исходный текст программы. Все ссылки ниже.

программатор | НПО Сибирский Арсенал

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

USB-программатор предназначен для совместной работы с приборами приемно-контрольными пожарно-охранными (ППКОП) ГРАНИТ-16, 24 (исполнение с пленочной клавиатурой), Кварц-Л, Пирит, КАРАТ, Курс-100, Циркон (далее — приборы).

Программатор позволяет выполнять следующие операции:

  • считывание настроек из компьютерной базы данных
  • считывание настроек из приборов
  • хранение конфигурационной информации
  • ввод конфигурационной информации в приборы

USB-программатор способен хранить в памяти четыре варианта настроек для чтения и столько же для записи. Ввод настроечной информации в программатор с персонального компьютера (ПК) осуществляется с помощью программного обеспечения (ПО) «Keyprog» или через АРМ Администратора системы «Лавина». С помощью ПО можно формировать настройки приборов, редактировать и сохранять их в базе данных.

Программатор имеет светодиодную индикацию состояний:

  • Готовность к работе
  • Процесс чтения
  • Процесс записи
  • Успешное завершение операции
  • Неудачное завершение операции
  • Выбор файла для чтения/записи
  • Одна из замечательных возможностей, которую предоставляет программатор — перенос настроек из одного прибора в другой. Это существенно уменьшает время подготовки прибора к работе
Питание прибора от прибора или ПК Потребляемый ток 40 мА Количество вариантов прошивок, для записи в прибор 4 Количество вариантов прошивок, для чтения из прибора 4 Диапазон рабочих температур +5 до +45°С Относительная влажность воздуха при температуре +35 ° С, без конденсации влаги, не более 90% Габаритные размеры 70х30х15 мм Вес 80 г Срок службы, лет 10 лет

Схеми і прошивки — сторінка 6 — Avislab


‹ 1 2 3 4 5 6

24.02.2011

В Микроконтроллерах Atmel есть интерфейс UART. Фактически это тот же RS-232, но с другими логическими уровнями. Используя его подключим наш микроконтроллер к компьютеру.

Початківцям Схеми і прошивки

23.02.2011

Неболшой обзор используемых на практике программаторов для микроконтроллеров AVR. AVR ISP Prorgammer и USB программатор AVR / 89S совместимый с AVR910.

Початківцям Схеми і прошивки

05.03.2011

HP03SA, HP03MA — недорогие цифровые датчики атмосферного давления, работающие по двухпроводному интерфейсу I2C.

HP03SA, HP03MA – миниатюрный гибридный модуль, изготавливаемого на основе пьезорезистивного датчика давления и интерфейсной микросхемы аналогово-цифровых преобразователя. Формат цифровых данных читается в виде 16-разрядного слова, соответствующего измеряемому ADC напряжению в зависимости от давления и температуры. Реальное разрешение — 15 разрядов.

HP03SA и HP03MA обладают малым током потребления около 500 микроампер и при этом могут питаться напряжением от 2.2В до 3.6В. В датчиках есть функция автоматического переключения в режим экономии энергии, т.е. спящий режим. Поэтому они идеально подходят для носимых устройств, где энергопотребление играет немаловажную роль.

Для связи с микроконтроллером используется 2-проводная последовательная шина I2C. С помощью дополнительной калибровки датчика производитель добивается более высокой точности измерений. Для этого во внутренней памяти датчиков хранятся 11 уникальных корректирующих коэффициентов. Вычисления температуры и давления выполняются с использованием этих коэффициентов. Поскольку в датчике имеется термодатчик, температура учитывается в вычислениях давления, чем достигается термостабилизация показаний датчика давления.

Схеми і прошивки

11.02.2011

Початківцям Схеми і прошивки

02.02.2011

На нашем сайте публикуется текущая погода в Кременчуге (см. Своя погода в Кременчуге) Описание устройства и программного обеспечения в этой статье.

Из завалявшихся деталей решил сделать небольшую метеостанцию. На сборку и написание прошивки для контроллера ушло два дня выходных. Еще пара дней ушла на написание, тестирование и отладку остального программного обеспечения. Текущая версия метеостанции измеряет температуру, влажность, давление, имеется связь с компьютером через USB порт от него же и питается, резервное питание от батареи 9 В. Данные отображает на LCD. Еще есть часы. Поскольку, не нашлось подходящего кварца (а покупать принципиально не хотел), сделал синхронизацию времени с компьютером.

Схеми і прошивки
‹ 1 2 3 4 5 6

Создайте свой собственный клон программатора USB-ASP

Используя больше микроконтроллеров на базе ATMEGA в моих последних проектах и ​​не используя готовые платы Arduino ни для одного из них, возникла необходимость инвестировать в специальный программатор ASP для прошивки микроконтроллеров. Огромные задержки с электронными компонентами, подтвержденные заказы загадочным образом отменяются из-за проблем с поставщиками, а также высокая стоимость «оригинальных программаторов OEM ASP» заставляют меня искать программатор в стиле «сделай сам», например старый «NOPPP» (БЕЗ ЗАПЧАСТЕЙ). Программист) в старые добрые времена…

Персональные компьютеры сильно изменились, и хотя чипы ATMEGA не являются PIC, я чувствовал, что это можно сделать.Учитывая тот факт, что вы также можете использовать Arduino UNO в качестве интернет-провайдера, и немного покопавшись, я наконец нашел очень привлекательную альтернативу…

Томас Фишл , на его веб-сайте https://www.fischl.de /usbasp, имеет проект аппаратного обеспечения с открытым исходным кодом, который, похоже, был именно тем, что мне было нужно. Его устройство способно программировать 5-вольтовые устройства на различных скоростях, включая сверхмедленную. Он также написал прошивку для устройства, и хотя последнее обновление было в 2011 году, оно все еще работает хорошо, по крайней мере, насколько я могу видеть… и встроить преобразователь логического уровня, чтобы можно было программировать 3.3-вольтовые устройства…

Модифицированная схема приведена ниже:

Схема Страница 1 Схема Страница 2

Я решил сделать свою собственную разводку печатной платы, чтобы включить изменения, перечисленные ранее, а именно преобразование логического уровня с 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) Нажмите на печатную плату Instant Quote

5) Если у вас нет особых требований к вашей печатной плате, нажмите «Быстрый заказ печатной платы»

.

6) Нажмите «Добавить файл Gerber» и выберите файлы Gerber на своем компьютере.Большинство деталей вашей печатной платы теперь будут выбраны автоматически, вам останется только выбрать паяльную маску и цвет шелкографии, а также удалить номер заказа или нет. Вы, конечно, можете настроить все точно так, как вы хотите.

7) Вы также можете выбрать, хотите ли вы использовать трафарет SMD или собрать плату после изготовления. Обратите внимание, что услуга сборки, а также стоимость ваших компонентов НЕ включены в первоначальную цену. (Цитата будет обновляться в зависимости от того, какие параметры вы выберете).

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

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

Самодельный USB-программатор PIC

Самодельный USB-программатор

Привет,

USB-программатор для программирования HV.Я просто не могу позволить себе те, которые в настоящее время представлены на рынке, и, учитывая, что у меня уже есть почти все компоненты, все, что мне нужно, это печатная плата.

Это довольно сложно, поскольку большинство 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.

Как собрать собственный USB-программатор PIC

Этот программатор DIY PIC является частью нашего руководства по основам программирования PIC. С помощью этого USB-программатора PIC вы можете программировать микрочипы PIC серий 10F, 12F, 16F, 18F, 24F, 30F. Это также программатор EEPROM, так как он поддерживает 12Cxx EEPROM.

Основным компонентом этой схемы программирования микроконтроллера PIC является микроконтроллер PIC182550, который управляет всей схемой. Программаторы PIC с последовательным портом — это широко используемый набор программаторов чипов PIC.Но поскольку у ноутбуков нет портов RS232, им требуется преобразователь USB в RS232. Итак, в этом случае вам нужно знать, как создать свой собственный программатор USB PIC.

Принципиальная схема программатора микросхем PIC

Компоненты для этого заказного USB-программатора PIC

  1. микроконтроллер PIC 18F2550
  2. транзистор
  3. (BC548-2NOS, BC547, BC557)
  4. диод IN4148 (6NOS)
  5. (6NOS)
  6. (IK-7NOS, 100K, 470-2NOS, 1M, 470K, 330-3NOS)
  7. Конденсатор ( 0.01 мкФ-3 шт., 2,2 мкФ-2 шт., 10 мкФ, 22 пФ-2 шт.)
  8. Кристалл 8 МГц
  9. Разъем USB
  10. 5-контактный разъем (2 шт.)

Пошаговая процедура | Как собрать собственный USB-программатор PIC

  • PIC 18F2550 имеет встроенный порт USB, который значительно упрощает взаимодействие с ПК.
  • Сначала необходимо записать прошивку на PIC 18F2550 с помощью любого программатора PIC, а затем установить перемычку, как показано на схеме. Скачать прошивку здесь.
  • Соединение перемычки определяет режим программатора, т.е.е. режим загрузчика или режим программатора. Загрузчик используется для обновления прошивки, а режим программирования предназначен для записи микрочипа PIC.
  • Теперь загрузите программное обеспечение USB PIC Programmer здесь, используя usbpicprog, и установите его.
  • Теперь подключите схему к USB-порту вашего ПК и откройте шестнадцатеричный файл в программном обеспечении PIC Programmer.
  • Подключите любой микрочип PIC через разъем ICSP (In Circuit Serial Programming), включая VPP, VDD, PGD, PGC, GND.
  • Теперь с этим покончено.Так чего же ты ждешь? Начните запись микроконтроллера PIC.

Компоненты Распиновка

Заключение

Одним из основных преимуществ этой схемы является то, что она не требует внешнего источника питания. Вместо этого он использует питание USB. Он генерирует напряжение программирования 13 В через умножители напряжения. Программное обеспечение Linux PIC также доступно для записи. Вы можете запрограммировать микроконтроллер, например pic16f84a, pic16f877a, pic18f4550, pic16f628a и т. д.и упростите программирование микроконтроллера.

описание, назначение. Интерфейс внутрисистемного программирования ISP

Этот программатор не нуждается в первичном программировании — вытравил печатную плату, запаял и пользуйся. Автор этого устройства указан в конце статьи, а здесь я приведу небольшую выдержку из инструкции, чтобы было понятнее, о чем речь: правильный USB-программатор — вещь, по сути, универсальная. Его можно подключить к любому современному компьютеру и легко заменить нужный микроконтроллер с любым объемом FLASH-памяти на достаточно высокой скорости.Но ключевое слово тут «правильный», который прекрасно работает без настройки и танцев с бубном над ним сразу после установки и сборки деталей. Который не глючит при переходе с одного ПК на другой или смене ОС. Правильный тот, для которого есть драйвер под любую современную широко распространенную версию ОС, и эти дрова не глючат. Еще с десяток критериев корректности каждый для себя определит лично, но вышеперечисленные являются основными, без которых нормально работать с микроконтроллером будет невозможно в принципе.

Сейчас интернет пестрит разными схемами. Их условно можно разделить на две большие группы.

В первую группу входят программаторы на базе микроконтроллеров (в частности, AVR). Собрал несколько штук программаторов от Prottoss (AVR910), для себя и друзей, а так же несколько штук USBasp. Двое знакомых, одаренных этими дувайями, в восторге. Они успешно шьют камни уже несколько лет.В остальном (в частности — лично у меня) собранные программаторы особой радости не вызвали. Я не говорю, что они плохие, просто обстоятельства сложились так: на одном компе работает, на другом нет. Или, поработав пару часов, оказались невидимы для софта, через который шьется камень. И многое другое. Сразу оговорюсь — я не разбирался в прошивках контроллеров, на которых собраны эти программаторы.Правда перепробовал кучу программ-прошивальщиков, через которые эти программаторы вроде умеют без проблем шить камни. Однако результат в виде частых глюков меня не очень удовлетворил. Единственным исключением стала программа AVRDUDE в сочетании с графической оболочкой SinaProg, но я узнал о ней слишком поздно. Кстати, я заметил такую ​​тенденцию: чем старше железо ПК, тем лучше работают эти программисты. Ну и самый неприятный момент для тех, кто выбрал второй вариант знакомства с микроконтроллерами AVR — для того, чтобы программатор заработал, нужно прошить что-то в камне, входящем в его состав.То есть получается так: чтобы пользоваться программатором, нужно сделать/найти программатор, чтобы прошить мозги этому программатору. Вот такой замкнутый круг.

И вторая группа Программатор USB включает в себя решение на базе специализированной микросхемы FT232Rx. В свое время эта микросхема стала своего рода революцией. Более того, он без особых проблем для разработчика преобразует USB в UART (и, наверное, 95% разработчиков используют его для этой цели).Также он может эмулировать полноценный COM-порт, а состояние «второстепенных» линий (типа RTS, CTS, DTR и т.д.) можно задавать/считывать не из виртуального COM-порта, а напрямую через драйвер FTDI ( разработчик FT232Rx)… Таким образом, появилось новое решение, без необходимости первичной прошивки мозгов программиста, для перепрошивки микроконтроллеров, и притом достаточно быстрое.

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

Эта схема просто направляет сигналы 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. / СТК300:

Разъем XP2 «ISP» для подключения устройства к программируемому микроконтроллеру

Разъем XP3 «MISC» для использования дополнительных функций программатора

В целом микросхема FT232RL обладает достаточно серьезным потенциалом для разработчика (например, линии шины CBUS можно использовать как обычные линии ввода-вывода микроконтроллера), поэтому было бы неплохо иметь доступ ко всем ее выводам.Ну и доступ к напряжениям +5,0 В и +3,3 В никогда не будет лишним. Клепаная печатная плата и полное подробное описание. Разработка и руководство — [email protected] , пробный — SssaHeKkk .

Обсудить статью USB-ПРОГРАММАТОР

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

В этой статье описывается USB программатор для микроконтроллеров AVR, который можно собрать своими руками. Он построен на микроконтроллере Atmega8 и способен работать от USB-разъема компьютера. Этот программатор совместим с STK500 v2.

Описание USB программатора

USB программатор построен на плате из одностороннего фольгированного стеклотекстолита. На плате есть 2 перемычки: одна находится под разъемом SPI, вторая возле этого же разъема.

После того, как все детали спаяны, нужно прошить микроконтроллер Atmega8 прошивкой, приведенной в конце статьи. Фьюзы, которые необходимо установить при программировании микроконтроллера Atmega8, должны выглядеть так:

  • SUT1 = 0
  • САПОГИZ1 = 0
  • САПОГИZ0 = 0
  • СКОПТ = 0
  • SPIEN = 0

Следует напомнить, что в некоторых программах фьюзы выставляются наоборот. Например, в программе CodeVisionAVR поставьте галочки напротив указанных выше фьюзов, а в программе PonyProg наоборот.

Программирование Atmega8 через LPT-порт компьютера

Самый быстрый и дешевый способ запрограммировать Atmega8 — использовать программатор LPT для AVR. Аналогичная схема показана ниже.

Микроконтроллер питается от простого стабилизатора напряжения 78L05. Вы можете использовать программу UniProf как оболочку для программирования.

При первом включении программы и когда контроллер не подключен, нажатием кнопки «LPTpins» нужно настроить пины LPT порта следующим образом:

В момент запуска UniProf автоматически определяет тип микроконтроллера.Загрузите прошивку Atmega8_USB_prog.hex в память UniProf, откажитесь от подключения файла EEPROM.

Выставляем предохранители следующим образом (для программы UniProF) нажатием кнопки «FUSE»:

Для запоминания настроек нажимаем все три кнопки «Записать». Затем нажатием на «Стереть» очищаем сначала память микроконтроллера flash. После этого уже нажимаем на «Prog» и ждем завершения прошивки.

Настройка USB программатора

После того, как наш микроконтроллер прошит, его необходимо установить в плату USB программатора.Далее подключаем программатор к USB порту компьютера, но питание пока не подаем.

Настройка порта:

Настройка терминала:

Параметр ASCII:

Теперь после всех проделанных процедур подаем питание на USB программатор. Светодиод HL1 должен мигнуть 6 раз, а затем загореться постоянно.

Для проверки связи между USB программатором и компьютером нажмите 2 раза клавишу Enter в программе HyperTerminal. Если все в порядке, мы должны увидеть следующую картину:

Если это не так, проверьте еще раз установку, особенно линию TxD.

Далее вводим версию программатора 2.10, так как без этого программатор не будет работать с программами «верхнего уровня». Для этого введите «2» и нажмите «Enter», введите «a» (англ.) и нажмите «Enter».

USB-программатор способен распознавать подключение программируемого микроконтроллера. Делается это в виде контроля «подтягивания» сигнала Reset к питанию. Этот режим включается и выключается следующим образом:

  • «0», «Ввод» — режим отключен.
  • «1», «Enter» — режим включен.

Изменение скорости программирования (1 МГц):

  • «0», «Enter» — максимальная скорость.
  • «1», «Enter» — скорость снижена.

На этом подготовительная работа завершена, теперь можно попробовать прошить какой-нибудь микроконтроллер.

(скачано: 1 203)

Плата разъемов для AVR

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


Плата включает 28-контактный DIP-разъем, кварцевый резонатор 4 МГц или два конденсатора емкостью 22 пФ и два разъема. Двухконтактный разъем используется для подключения источника питания +5 В к микроконтроллеру AVR, а 6-контактный разъем используется для подключения программатора.

Питание микроконтроллера от внешнего источника напряжения, а не напрямую от последовательного порта, гарантирует, что контроллер получает ровно 5 В и обеспечивает надежную и безошибочную прошивку.

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

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

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

Теперь настройка PonyProg завершена, и мы можем открыть hex-файл с программой, которая будет встроена в микроконтроллер. Заходим в меню «Файл», выбираем «Открыть файл программы (FLASH)…» и указываем hex-файл, который нужно прошить. Вы должны увидеть шестнадцатеричные значения, подобные показанному на изображении ниже. Если вы еще не подключили программатор к последовательному порту вашего компьютера, сейчас самое время это сделать. Убедитесь, что ваш программатор физически подключен к микроконтроллеру AVR через панель разъемов или 6-контактный разъем ICSP.Наконец, щелкните выделенный значок «Запись в память программ» (FLASH) или перейдите в меню «Команды» и выберите «Запись программы (FLASH)».

Нажмите кнопку «Да», чтобы подтвердить ввод.

Теперь сядьте поудобнее, расслабьтесь и наблюдайте за ходом программирования на индикаторе состояния. PonyProg прошьет микроконтроллер AVR и проверит, загружен ли шестнадцатеричный файл без ошибок. Этот процесс обычно занимает от 10 до 30 секунд, в зависимости от размера программы, которую вы будете вшивать в микроконтроллер.

01.06.2011

Описание

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

Программатор AVR состоит из встроенного последовательного программатора (с разъемом) и небольшой печатной платы с DIP-разъемом, в которую можно поместить микроконтроллер и быстро запрограммировать его.

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

Весь программатор AVR собран из широко используемых компонентов и помещается в корпус разъема COM-порта. Печатная плата с разъемом DIP позволяет вставить микроконтроллер ATmega8 28-pin AVR в DIP-корпус, но можно изготовить печатные платы для микроконтроллеров в любом другом корпусе. Этот программатор совместим с популярным программным обеспечением PonyProg, которое показывает вам ход процесса прошивки в виде строки состояния.

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

После программирования появится окно «Запись выполнена успешно», указывающее, что микроконтроллер AVR запрограммирован и теперь готов к использованию.

  • Проверьте проводку и подключение к целевому микроконтроллеру.
  • Ну в этой схеме нет ничего военного и делать его не надо, но я включил ком порт лоника в компе и вперед, хотя в моем еще стоит буфер на каком порту стоит буфер чтобы случайно не сжечь.-о предохранителях. потому что вы его неправильно установите и микросхема будет залочена
  • com порт устарел. если есть только usb то работу с контроллерами можно считать законченной даже не начав ???? никто в сети не предлагает usb-com. А если и делают, то контроллер в цепи. если собирать самому то с нуля. а не как сейчас многие, заказал конструктор, запихал элементы в отверстия, припаял и все. Таких гениев на службе хватает.но когда он приходит к такому вопросу, он действительно не знает. но я хочу знать в деталях.
  • Ну естественно никто (слитно пишется!) не предлагает. Так как в типовом включении куча готовых микросхем — мосты USB-COM для питания 5В и 3.3В. Но шибко грамотные граждане об этом естественно не знают. Не знают они и про AVR910-аналог от Prottos, в котором МК через USB выводит и программирует виртуальный COM порт через провайдера. Например.У буржуев тоже есть куча подобных конструкций. И конечно подробных описаний нет — это надо поискать. А если хочется что-то сразу приготовить, нажимаешь одну кнопку и все на блюдечке с голубой каемочкой. А может, лучше уроки учить?
  • многоуважаемый SergeBS этот форум не для орфографических ошибок и уж тем более не для обучения тому, что это такое. здесь просят помощи и совета у людей знающих и сталкивавшихся с той или иной проблемой. а то что готово и можно купить и не напрягаться это конечно круто.P.S тем не менее спасибо ВАМ за участие в проблеме. И ОТДЕЛЬНО ДЛЯ ОЧЕНЬ ОЧЕНЬ ХОРОШЕГО ПРЕПОДАВАНИЯ. Привет буржуазии, но то, что они должны знать, что иметь, я не мог знать. куда нам до крестьян.
  • Да. Типа «крютые» кто как хочет так и пишет. Более того, они не могут сформулировать «проблему». Сопли типа: «Хочу что-то знать, но умею это делать» — не в счет. 🙂
  • Вы ​​еще не знаете, из чего все это сделано…На китайской барахолке детали для ваших схем продаются на развес килограммами и никакие стандарты качества к таким деталям отношения не имеют. Покупайте только брендовые товары соответствующих фирм.
  • Заказываю в интернет-магазинах (рус.). Пока (тьфу*3) на брак/халтуру и т.п. не летал.
  • Привет! Всех с Новым годом! 🙂 Собрал программатор для AVR по указанной схеме (все проверил 3 раза). А вот ponyprog 2000 отказывается видеть и программировать контроллер ATMega168-20PU — выдает ошибку об отсутствии устройства или неизвестном устройстве (-24).Использованы стабилитроны КС407Г, транзистор КТ3102АМ и диод КД522Б. У меня был кварц на 4,032МГц. Работает на L7805. Перед появлением ошибки приходят служебные сообщения, которые я мониторю с помощью Advanced Serial Port Monitor, но есть только включение и выключение Break в процессе записи. Никакие данные не исчезают. Настроил PonyProg2000 по инструкции. Шаг за шагом. Что может быть причиной этой ошибки? Нужно ли подключать 22 контакта к земле и 20 к питанию (аналоговое заземление и питание)? Почему не используется выбор микросхемы (нога 16 контроллера SS)? Спасибо за помощь!
  • Собрал данный программатор и использовал: Резисторы — указанных номиналов Транзистор — КТ3102ГМ Диод х58 аналог стабилитронов 1N4148 — BZX55C 5.1 вольт Так же кварц на 4мгц и 2 керамических конденсатора на 22пФ, но не думаю что они потребуются т.к мы поставили использование внутреннего/внешнего кварца с программируемыми битами, с завода микрухи запрограммированы на использование внутреннего кварца( если не ошибаюсь) Внешнее питание от +5В обязательно. Подключал от блока питания того же ПК, с которого скачивал прошивку. Диод х58 (такая маркировка присутствует на корпусе этого диода) в интернете говорят, что это аналог 1N4148.У меня все работает, PonyProg 2000 успешно залил прошивку на ATmega8. Фото http://i.imgur.com/34GhDcN.jpg http://i.imgur.com/gCzAuzA.jpg
  • Посоветую один из проектов avr mk ii clone, на базе lib и на примере от lufa. Контроллер at90usb168 обычно поставляется с загрузчиком, что позволяет после сборки залить прошивку через usb без внешнего программатора. Поддерживает все актуальные avr, включая xmega и новый протокол tinke, pdi/tpi. Работает с avrstudio и dude, разные прошивки для них.Исходники открыты, конусы отработаны. Например, для новых студий достаточно проинкрементировать версию fw в настройках прошивки. Собирается прошивка для winavr. Моя версия в этой теме, от 12 лет. С фото. http://m.radiokot.ru/forum/viewtopic…rt=700&t=26417
  • Здравствуйте. Собрал этот прогроматор для прошивки ATtiny 2313, у нас все работает с программой. Читаем МК без проблем, но это проблема схемы по которой прошиваю МК пишет что с первого раза можно прошить без внешнего кварц, но при этом сначала залить МК прошивку, а потом поменять Fuse короче, я залил прошивку, встало нормально, потом поменял Fuse и нажал Write, но после того, как я нажал Write, это Устройство отсутствует или неизвестно устройство (-24) вылезло и после этого МК уже не читается, в чем может быть проблема
  • это обратно, подскажите пожалуйста пробовал прошить ATtiny 2313 с внешним кварцем и поставил 2 конденсатора, кварц на 8мгц, суб.прогром.прочитал МК открыл прошивку в пони поставил Фьюз какой нужен вот заводской http://i.imgur.com/rSdlENN.jpg но эти надо прошивать http://i.imgur.com/ gc4yyxA.gif а что еще заметил на заводе стоит одна галочка которую нельзя убрать называется SPIEN, а какие надо прошивать нет этой галочки, ладно продолжу свою проблему после того как открыл прошивку и поставил Fuse как на второй картинке, нажал READ DEVICE и прошел процесс прошивки и в конце получилось вот это http://i.imgur.com/UpR5qhE.jpg потом я закрыл пони и снова открыл и нажал читать МК и получил этот Девайс отсутствует или неизвестное устройство (-24) тоже самое что и прошивал без внешнего кварца, вышеописанное, а после этого вот это МК уже не читал, кто может сказать в чем дело, что я сделал не так Просто 3 МК уже убил большое спасибо, прото я новичок в этом
  • у меня эта ошибка появилась только когда не подключил внешний питания, ну конечно у вас могут быть ошибки в схеме, возможно вы поставили прогу не на ту микруху (но вряд ли я сам новичок.) SPIEN — это предохранитель, позволяющий работать МК по интерфейсу SPI. Все микроконтроллеры поставляются с уже установленным битом SPIEN. Считается опасным фьюзом…
  • Бит фьюза SPIEN установлен по умолчанию в микроконтроллерах AVR (режим внутрисхемного программирования) и не может быть удален с помощью PonyProg. И вообще его лучше не трогать… Установив и запрограммировав Fuse-биты как на последней картинке, вы настраиваете работу микрофона от внешнего кварца 8МГц, отключаете внутренний делитель тактовой частоты на 8 и поворачиваете на Детекторе пониженного напряжения (модуль управления питанием) с уровнем 2.7 В. И после этого микроконтроллер не увидел программатор, поэтому логично было бы подать внешнее питание на микроконтроллер (не от PonyProg) и попробовать прочитать его еще раз. PS: Конечно, если изначально все было сделано правильно (тип микроконтроллера в программаторе при программировании выбран правильно и Fuse биты выставлены правильно)
  • спасибо за ответ, просто прошил 3 МК, прошивки нет и теперь программа их не видит и мне нужно их поменять и я всегда при прошивке сдувал внешнее питание но пони все равно его не видит а МК работает я его вставил в аппарат для которого я его прошивал всеми тремя рабочими, но мне нужно залить туда другие Я спросил у автора схемы, для которой я их прошивал, как их починить, он мне сказал, что если внешний кварц не определяется, то нужно также сделать внешний тактовый генератор и подать сигнал на МК XTAL 1 и далее прогр.посмотрю мк если кто сможет вквинтить не сложную схему внешний генератор тактовой частоты сколько гуглил ничего другого, а может и еще кого, но предохранитель, пришлось вспомнить позарез как на второй картинке ибо с завода не получится, спасибо за в помощь
  • Спасибо за статью! Отличный адаптер. Работает шустро, без ошибок. Первым делом припаял порт под LPT порт, под рукой не оказалось COM штекера. Дак LPT порт сгорел на первой же заливке. Пришлось бежать за COM-разъемом в магазин.Еще рекомендую припаять докторский предохранитель — очень полезная штука. Я первый расплавил кристалл, вроде бы он выпустил душу (синий дым), но нет! — Дохдур фуз тут же вернул его к жизни. Вот и выходит: этот переходник + предохранитель дока = полноценный параллельный программатор.
  • После «синей дымки» ни один врач не вернул бы его к жизни. А «Доктор Фьюз» — да, наверное, иногда может пригодиться. Но почти всегда можно обойтись и без него, нужно только тактировать МК не от кварца, а от внешнего генератора…
  • Но мне повезло, при первой же настройке предохранителей заглушить так, что ни один генератор не спасал. Не знал, что есть 2 варианта отображения фьюзов: Прямой (исторический, канонический) и инвертированный (интуитивно удобный). Так что ставлю канонические галки с перевернутым фото. Кстати, PonyProg оперирует фьюзами в инвертированном представлении.
  • Читать всем:

Еще один несложный, в плане изготовления, COM программатор.Если вы используете альтернативный режим COM-порта Bitbang, нет необходимости преобразовывать интерфейс COM-порта RS232 в SPI, необходимый для программирования. Осталось только довести уровни сигналов COM-порта (-12В, +12В) до требуемых (0, +5В). Вот что значит
Схема программатора COM для микроконтроллеров AVR:

Эта схема программатора довольно распространена и известна как программатор Громова. Название произошло от автора программы Геннадия Громова, предложившего такую ​​схему.

Для сборки программатора Громова нам понадобится:

Диоды КД522, КД510, 1Н4148 или подобные. Вы можете использовать любые резисторы, которые найдете. В качестве цикла вы можете использовать цикл IDE. При подключении шлейфа, для более стабильной работы программатора, каждый «сигнальный» провод должен чередоваться с «земляным» проводом. Это снизит уровень помех, наводимых в линиях, и тем самым увеличит длину провода программирования. Длина петли должна быть в пределах 50 см.Вам также понадобится разъем для подключения к программируемому устройству.
Для внутрисхемного программирования Atmel рекомендует стандартные разъемы:


Если вы планируете серьезно заняться микроконтроллерами, сделайте разъемы стандартными. Для разового программирования устройства рекомендую использовать его на программаторе (кнопки и светодиоды корпуса компьютера подключены к материнской плате такими разъемами — это я взял) и штырями PLS на плате. Это позволяет максимально упростить компоновку платы устройства, так как выводы для программатора установлены в непосредственной близости от ножек микроконтроллера.Выводы MOSI, MISO, SCK микроконтроллеров AVR всегда расположены вместе, поэтому для них можно использовать тройной разъем. Делаем отдельное подключение для «земли»-GND и «сброса»-Reset.

СОМ программатор собрать не сложно:

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

Для работы нашего COM программатора нужен , к которому будем подключать программатор и для микроконтроллера.

— Так как режим Bitbang нестандартен для COM порта компьютера, возможны сбои (хотя у меня такого не было). Особенно это касается ноутбуков. В качестве решения этой проблемы можно порекомендовать поиграться с настройками COM-порта (скорость, биты данных, параметры управления потоком, значения буфера…).
— Желательно сначала подключить отдельный разъем на «землю», чтобы уравнять «земляные» потенциалы программируемого устройства и компьютера.Для тех кто не знает, если ваш компьютер включен в обычную розетку, без заземляющего контакта, то в виду особенностей фильтра питания компьютера на корпусе компьютера всегда есть потенциал 110В.

Заключение:

— COM-программатор Громова прост и надежен. Я не перестал им пользоваться даже после сборки USB-программатора (если какой-то микроконтроллер перестанет программироваться USB-программатором, обязательно перепроверю на программаторе Громова).
— Поскольку программатор Громова собран на пассивных элементах, он не требует питания для себя. Более того, благодаря паразитному питанию микроконтроллер можно программировать вообще не подключая к нему источник питания! Хотя я не рекомендую программировать таким образом, сам факт интересен.
— Приятный бонус для пользователей Конструктора Алгоритмов! Этот программатор можно использовать для внутрисхемной отладки микросхемы (программное обеспечение JTAG).

В этой статье мы опишем «пошагово» этапы изготовления USBasp программатора для микроконтроллеров AVR … В отдельных статьях мы приведем описание установки драйверов для операционных систем Windows XP и Windows 7 (x64/x86). В конце поста есть ссылка с необходимой документацией для изготовления USBasp программатора своими руками.

Программатор USBasp, благодаря простоте изготовления и использованию недорогих и широкодоступных комплектующих, стал очень популярен среди радиолюбителей. Его рабочие параметры не уступают профессиональным и дорогим программаторам микроконтроллеров AVR.

Основные характеристики программатора USBasp

  • Работает с несколькими операционными системами — Linux, Mac OS X и Windows, включая Windows 8!
  • Не требует внешнего источника питания.
  • Может программировать на скорости до 5кБ/с
  • Есть опция (Switch 2) для снижения скорости программирования — для процессоров с кварцем менее 1,5МГц
  • Обеспечивает напряжение программирования (переключатель 1) 5 вольт
  • Индикация работы программатора светодиодом

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

  1. Выбор схемы/рисунка печатной платы
  2. Перенос печатной платы на фольгированный стеклотекстолит
  3. Травление печатной платы в растворе хлорного железа
  4. Сверление отверстий
  5. Элемент в сборе (пайка)
  6. Программатор Atmaga8
  7. Подключение программатора к компьютеру
  8. Установка драйвера — Windows XP, Windows 7
  9. Выбор программы с поддержкой USBasp

Существует множество версий программатора USBasp, но все они основаны на основной схеме Томаса Фишла.Прошивка микроконтроллера программатора тоже его авторства.

Оригинальная схема программатора:

В данном случае за основу была выбрана оригинальная схема. Поскольку использование перемычек в исходной схеме не очень удобно, было решено использовать DIP-переключатели. Также были изменены некоторые номиналы резисторов.
Более того, в исходной схеме линии TxD и RxD выведены на разъем ISP, хотя в этом нет необходимости (точнее, на практике они не используются).

Ниже представлена ​​схема с внесенными изменениями:

Конструкция программатора USBasp

Существует множество версий печатной платы этого программатора, некоторые можно найти на официальном сайте USBasp. Однако на основе вышеописанной схемы был сделан собственный.

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

Ниже приведен результат платы:

Как видно на рисунке SMD элементы в программаторе не использовались. Пустое место на плате «залито» заземленным полем, в основном для того, чтобы избежать вытравливания большого количества меди, а также для уменьшения влияния шумов на программатор.

Список элементов, используемых в программаторе USBasp:

  • Р1: 10к
  • R2: 180
  • R3: 100
  • R5, R6: 68
  • R7: 2d2
  • С1, С2: 22 шт.
  • С3: 10 мкм
  • С4: 100n
  • Светодиод 1: красный светодиод на 20 мА
  • LED2: Зеленый светодиод на 20 мА
  • Д2, Д3: 3.Стабилитроны 6В
  • X1: разъем USB типа B
  • SV1: гнездо IDC-10
  • Q1: Кварц 12 МГц, корпус HC49-S
  • SW1: DIP-переключатель 3 положения
  • IC1: Atmega8 ( ПРИМЕЧАНИЕ. Не используйте микроконтроллер Atmega8 — PU из-за его ограничения максимальной тактовой частоты до 8 МГц!)

Перенос рисунка печатной платы программатора USBasp на стеклотекстолит выполняется методом ЛУТ (). Как это сделать, описывать не будем, так как этой информации в сети очень много.

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

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


После завершения процесса травления удалите тонер ацетоном.

Теперь осталось только просверлить отверстия. После завершения процесса изготовления платы можно приступать к пайке элементов USBasp программатора, начиная с перемычек.

Готовый к печати (PDF) чертеж печатной платы находится в конце статьи. Вы также можете найти несколько вариантов на официальном сайте проекта.

Первый запуск программатора USBasp

Теперь, когда все детали спаяны, осталось только «прошить» микроконтроллер Atmegę8 самого программатора.Для этого нужен отдельный программатор, это может быть, например, STK 200 (LPT порт), STK500 и т.д. LPT программатор подключается к USBasp через разъем IDC-10.

Обратите внимание, что разводка пинов в разъеме оригинального программатора (USBasp) справа, а в версии, описанной в этой статье, слева:

Распределение, показанное на рисунке справа, соответствует дистрибутиву, используемому Atmel в своих оригинальных программаторах.Такое распределение снижает риск помех при программировании при использовании длинных проводов от программатора до контроллера, так как каждая сигнальная линия экранирована землей, кроме MOSI.

Во время программирования включите режим SELF, установив DIP-переключатель № 3 в положение ON. Это позволяет программировать Atmega8. После завершения программирования положение переключателя (3) должно быть установлено в положение OFF.

Последнюю версию прошивки можно скачать с официального сайта.Рекомендуем версию для Atmega8, которая находится в архиве: usbasp.2011-05-28.tar.gz.

Обратите внимание, что перед программированием Atmega8 необходимо установить фьюзы, которые имеют следующие значения:

  • # для Atmega8: HFUSE=0xC9 LFUSE=0xEF
  • # для Atmega48: HFUSE=0xDD LFUSE=0xFF

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

Установка драйверов программатора USBasp

Способ установки драйверов программатора описан в отдельных статьях, там же и сами драйвера. Ниже приведены прямые ссылки на эти статьи:

  • Установка драйверов для программатора USBasp под Windows XP
  • Установка драйверов для программатора USBasp Windows 7 x64/x86

Программы для программатора USBasp

Наиболее популярной программой, поддерживающей программатор USBasp, является консольная программа AVRdude.Также существует множество производных программ, использование которых намного удобнее. Они представлены в статье Сравнение программ для поддержки программатора USBasp.

Программатор avr для windows 10 своими руками. Миниатюрный USB программатор для микроконтроллеров AVR. Плата управления

В интернете есть много схем USB программаторов для микроконтроллеров AVR. Всех их можно разделить на три группы: программаторы на базе микроконтроллеров AVR, в которых интерфейс USB реализован программно, программаторы на базе микроконтроллеров AVR с аппаратной поддержкой USB и программаторы на базе микросхем FT232, работающие в режиме BitBang.

Одним из самых простых в воспроизведении USB-программаторов AVR является USBasp. Он построен на микроконтроллере Atmega8 (или Atmega48), требует минимум внешних компонентов, имеет несколько готовых разводок печатных плат и оболочек для программирования, а также может работать под Linux и MacOS.

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

Схема программатора USBasp представлена ​​на рисунке ниже. Я взял за основу схему с сайта автора http://www.fischl.de/usbasp и немного изменил ее. Диоды VD1 — VD3 добавлены для снижения напряжения питания и согласования логических уровней микроконтроллера и порта USB без стабилитронов. Схемы, подключенные к UART, выкинули, так как не использовались, и добавили перемычку JP1.

Расскажу о назначении светодиодов и перемычек.

HL1 сигнализирует о том, что идет процесс программирования. Горит во время записи прошивки.

HL2 указывает на то, что программатор находится в рабочем состоянии. Он загорается при подаче питания.

JP1 закорачивает цепочку диодов, что позволяет изменять напряжение на разъеме для программирования с 3 до 5 В. Однако без стабилитронов это будет работать не со всеми компьютерами. Многие компьютеры не распознают USBASP, если он имеет 5-вольтовые логические уровни.

JP2 изменяет частоту сигнала SCK.При открытой перемычке частота SCK будет 375 кГц, при закрытой перемычке — 8 кГц. Это требуется для программирования микроконтроллеров с низкими тактовыми частотами (менее 1,5 МГц).

JP3 соединяет контакт RESET с разъемом для программирования. Это необходимо для того, чтобы запрограммировать сам микроконтроллер программатора.

JP4 подключается к разъему для программирования +5 В от порта USB. Эта функция может понадобиться для питания платы программирования от программатора.

Для сборки программатора USBASP потребуются следующие комплектующие:

Изготовление платы методом ЛУТ не представляет особой сложности — плата односторонняя, дорожки широкие.При печати не нужно зеркально отображать рисунок платы.


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

Вы можете запрограммировать микроконтроллер прямо на плате.Для этого замкните перемычку JP3 и JP4, подключите USBasp к компьютеру для подачи питания и подключите программатор к разъему BH-10. Остальные шаги зависят от того, какой программатор вы используете.

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

atmega8 HFUSE=0xc9 LFUSE=0xef
atmega88 HFUSE=0xdd LFUSE=0xff

Я прошил USBASP с помощью родного программатора Atmel.В моей Atmel Studio окно с битами Fuse выглядело так.

Если прошить USBasp программатором FT232, то в SinaProg образ Fuse bits будет таким.


Разницы нет, так что не спрашивайте, какие Fuse биты ставить.

Для работы с программатором под Windows необходимо установить драйвера. Их можно скачать с сайта автора. Для операционных систем Linux и MacOS X USBasp не требует драйвера.

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


Выберите вариант — установить из указанного места


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


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


Если все прошло успешно, мастер оборудования закроется.


И Windows уведомит нас об установке нового оборудования


Теперь программатором можно пользоваться.

Описанная процедура может немного отличаться в зависимости от версии операционной системы, но суть одна — подсунуть драйвера из папки.

Есть несколько программ для работы с USBasp — avrdude, eXtremeBurner, Khazama и.. некоторые другие.

На мой взгляд, самой удобной программой для USBaspa является Khazama.Он имеет простой и интуитивно понятный оконный интерфейс. Процесс программирования микроконтроллера осуществляется в три этапа.

Для программирования микроконтроллеров AVR требуется программатор. Проще всего сделать программатор для COM или LPT. Но я работаю на ноутбуке, а сейчас только порты USB ставят. Так что есть необходимость достать программатор для AVR через USB. Сейчас я бы, скорее всего, купил этот программатор. На ebay они стоят недорого, наверное даже дешевле, чем покупать детали, делать плату и все паять.Хотя если посмотреть с другой стороны, то заказ с ebay будет идти по почте минимум месяц, а собрать avr usb программатор своими руками, в силу его простоты, можно за вечер. Более того, если начинающий радиолюбитель сам соберет программатор, то помимо программатора он получит опыт, бесценный опыт, а это дорогого стоит.
Это мой второй USB программатор для AVR, первый сделал программатор USB-asp, но он мне не очень понравился, так как иногда отваливался от компа, хотя на другом компе ничего подобного не наблюдалось.Решил попробовать собрать другой программатор, и мой выбор пал на программатор AVR910. У этого программатора немного другая схема подключения USB, и как потом выяснилось, на моем компьютере все работает очень хорошо. Я забыл о проблемах, которые у меня были с моим прошлым программистом. Программатор AVR910, описанный в этой статье, на данный момент является моим основным программатором AVR.
Схема и прошивка взяты с сайта проекта (http://prottoss.com/projects/AVR910.usb.prog/avr910_usb_programmer.хтм).


Программатор питается от порта USB. Чтобы не требовалось соответствие уровням линий данных USB-порта (3,6 В), микроконтроллер питается от 3,6 В. Для получения 3,6В из 5В в порту USB используется схема из двух напрямую соединенных последовательно кремниевых диодов. На каждом диоде падает 0,7В, всего 1,4В. Диоды должны быть кремниевые, использование диодов Шоттки не допускается, так как на них падает менее 0,7В. Выходы разъема программирования подключены через резисторы 330 Ом для согласования уровней.Устройство работает на микроконтроллере AtMega8-16 на тактовой частоте 12МГц. На схеме показаны номера контактов микроконтроллера в DIP-корпусе, хотя я разводил плату в SMD-корпусе под названием TQFP. Программатор имеет индикацию записи, чтения, питания. Также у этого программатора есть выход, на котором всегда присутствует меандр, с частотой 1МГц. Это очень крутая и полезная штука для восстановления микроконтроллеров, у которых из-за ошибочно запрограммированных Fuse-битов настроены часы от внешнего источника.тактовые импульсы. Я восстанавливал микроконтроллеры таким образом несколько раз. Нужно просто посмотреть в даташите на конкретный микропроцессор AVR, какой пин подключен к внешнему источнику тактового сигнала, и припаять к этому пину исток меандр. Подключите программатор и перепрограммируйте предохранитель. Это очень просто, но иногда очень помогает!
Имеющиеся варианты реализации печатных плат для программатора AVR910 меня не совсем устроили, и я проследил свой вариант (скачать файлы проекта можно в конце статьи).


Защитный рисунок на фольгированном стеклотекстолите наносится с помощью лазерного принтера и утюга.


После травления получилась вот такая красота. Я не сдержался и поцарапал тонер о дорожки между ножками микросхемы. Мне не терпелось увидеть, работают они или нет.


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

Выкладываю групповую заготовку для пластины для печати на фотобумаге размером 10х15 в архиве со всеми файлами для этой записи. Скачать его можно в конце этой статьи.
Прошивку для программатора можно скачать по ссылке в конце статьи.
Fuse биты устанавливаются согласно рисунку ниже:


Как запрограммировать микроконтроллер AtMega8 для программатора AVR910 можно посмотреть в моем видео:

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


С термоусадкой вроде все просто, а вот просверлить отверстия под штифты я заморочился. Если проколоть отверстия шилом, то при усадке термоусадочная трубка рвется начиная с этих отверстий. Я даже испортил несколько заготовок, но в конце экспериментов у меня все получилось.В итоге отверстия я не протыкал, а проплавлял горячим паяльником с жалом с иглой. По краям платы припаял концы термоусадочной трубки. Паяются они очень просто — оба конца трубки нагреваются, затем быстро, пока не успели остыть, зажимаются и держат зажатыми до полного остывания. Получается достаточно прочный стык. Я зажала его медицинским зажимом, термоусадка даже оставила следы насечек на губах.
При первом подключении программатора AVR910 к компьютеру в системе появится новое устройство AVR910.Теперь нужно установить драйвера и можно работать.
Я работал с этим программатором на 32-битных системах Windows XP и Windows 7. Все работает очень хорошо и проблем нет. У меня были проблемы, когда я пытался установить драйвера для 64-битной Windows 7. Дело в том, что этот драйвер не имеет цифровой подписи Microsoft, а 64-битная Windows 7, будучи более безопасной, блокирует все драйвера без цифровой подписи. Эту блокировку можно отключить, но это не совсем просто….. Так что имейте в виду.
Заливаю прошивку в микроконтроллер с помощью программы AvrOsp2.Он очень прост, не требует установки, бесплатен, поддерживает программатор AVR910 и огромное количество микроконтроллеров AVR, хорошо работает и имеет очень удобное меню для работы с FUSE битами. В общем классная программа, мне очень нравится, рекомендую! В видео ниже я показал процесс установки драйверов для AVR910, как настроить и пользоваться программой AvrOsp2.

В моей версии программатора я не устанавливал выходной электролитический конденсатор на 22 мкФ, который устанавливается со стороны, противоположной дорожкам, и впаивается в отверстия, которые находятся возле разъема USB.Возможно, потребуется установить дополнительный электролитический конденсатор 10-50 мкФ параллельно припаянному керамическому конденсатору 0,1 мкФ, рядом с зеленым светодиодом PWR. Ниже на картинке от руки показаны точки соединения.

Программатору требуется микроконтроллер, способный работать на частоте до 16 МГц. AVR AtMega8 выпускается в двух сериях работающих до 8 МГц (серия L), они нам не подходят, так как проект работает на кварце 12 МГц. Также есть обычная версия, работающая до частоты 16 МГц.Это то, что нам нужно. Ниже приведен кусок даташита AVR AtMega8, в котором зачеркнуты версии микроконтроллеров, которые не будут работать в этом программаторе, а зеленой рамкой выделены версии микроконтроллеров, которые будут работать в этом проекте.

Широкую популярность получили микроконтроллеры ATMEL

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

Для масштаба рядом обычный светодиод 5 мм.
Данный программатор USBASP поддерживает следующие микроконтроллеры:

Список поддерживаемых МК

ATtiny11, ATtiny12, ATtiny13, ATtiny15, ATtiny22, ATtiny2313, ATtiny24, ATtiny25, ATtiny26, ATtiny261, ATtiny28, ATtiny44, Attiny45, ATtiny461, ATtiny84, ATtiny85, ATtiny861
AT90S1200, AT90S2313, AT90S2323, AT90S2343, AT90S4414, T90S4433, AT90S4434, AT90S8515 , AT90S8535
ATmega8, ATmega48, ATmega88, ATmega16, ATmega161, ATmega162, ATmega163, ATmega164, ATmega165, ATmega168, ATmega169, ATmega32, ATmega323, ATmega324, ATmega325,
ATmega3250 ATmega329 ATmega64 ATmega640 ATmega644 ATmega645 ATmega6450 ATmega649 ATmega6490 ATmega128 ATmega1280 ATmega1281 ATmega2560 ATmega2561 ATmega103 ATmega406
AT90CAN32, AT90CAN64, AT90CAN128
AT90PWM2, AT90PWM2B, AT90PWM3, AT90PWM3B
AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647
AT89S51, AT89S52
AT86RF401


10-летний основной кабель с разъемами поставляется с программатором.


Питание программатора берется от USB порта компьютера.


На плате программатора есть место для выпайки LDO регулятора напряжения на 3,3В, но оно не припаяно.
Программатор поддерживается программой AVRDUDE. Сама программа является консольной, но есть файл . Утилиту avrdude можно найти в папке /hardware/tools/ в дистрибутиве Arduino IDE или скачать из интернета.
Прежде чем приступить к работе с программатором, вам необходимо скачать драйвер с .
Программатор также поддерживается средой разработки Arduino.


Для программатора есть прошивка под названием , которая превращает его в STK500-совместимый и воспринимаемый фирменной средой разработки ATMEL AVR Studio, но в связи с высокой вариативностью китайского железа использовать его можно только на свой страх и риск и риск. Планирую купить +32 Добавить в избранное Понравился обзор +17 +42

Сегодня я вам расскажу про недорогой и очень простой USBAsp v.Программатор 2.0 для микроконтроллеров AVR (на основе разработки Томаса Фишла), с его помощью можно прошивать контроллеры AVR через ISP интерфейс (не выпаивая его из платы), и самое главное, можно прошивать загрузочный сектор на контроллерах Arduino.

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

Напряжение питания: 5 В постоянного тока.
Интерфейс: USB 2.0.1 / 10.

Общая информация

Программатор USBAsp также распространяется в открытом виде, так что при желании вы можете сделать его самостоятельно, скачав печатную плату и прошивку с сайта Томаса, из-за этого в разных интернет-магазинах есть разные версии программатора с одинаковыми функциональность. В моем случае речь пойдет о USBAsp V2.0 китайского производителя L.C. Технологии.

Программатор собран на синей печатной плате, слева находится разъем USB, необходимый для подключения к компьютеру.В центре расположен контроллер ATmega8A, рядом установлены кварцевый резонатор на 12 МГц и электропроводка (резисторы, конденсаторы). Справа — 10-контактный разъем (два ряда по пять контактов, шаг 2,54 мм), обеспечивающий обмен данными с прошиваемым микроконтроллером (интерфейс ISP). В комплекте идет кабель, на каждой стороне которого есть разъем IDC (10 контактов), для удобства прошивки некоторых плат (например, Arduino) советую приобрести переходник-переходник с 10-ти контактного на 6-ти контактный штырь.Назначение выводов программатора USBAsp можно увидеть на рисунке ниже, вид сбоку программатора.

Назначение контактов:
1-MOSI
2 — VCC
3, 8, 10 – GND
4-TXD
5 — RESET
6-RXD
7-SCK
9-MISO

Световая индикация
Красный светодиод G — вкл.
Красный светодиод R — связь

Перемычки
JP1- питание, управляет напряжением на разъеме ISP VCC (вывод 2), можно установить на +3.3В, +5В или вообще убрать перемычку, если программируемое устройство имеет собственное питание.
JP2- сервис, обновления прошивки USBasp.
JP3- медленный, программирование на низких скоростях Если программируемое устройство работает на частоте ниже 1,5 МГц, SCK (контакт 7) уменьшит частоту с 375 кГц до 8 кГц.

Принципиальную схему программатора USBAsp V2.0 можно увидеть на рисунке ниже.

Список поддерживаемых AVR микроконтроллеров:
Mega Series:
ATmega8, ATmega8A, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega328, ATmega328P, ATmega103, ATmega128, ATmega128P , ATmega1280, ATmega1281, ATmega16, ATmega16A, ATmega161, ATmega162, ATmega163, ATmega164, ATmega164A, ATmega164P, ATmega164PA, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega2560, ATmega2561, ATmega32, ATmega32A, ATmega324, ATmega324A, ATmega324P, ATmega324PA, ATmega329, ATmega329A , ATmega329P, ATmega329PA, ATmega3290, ATmega3290A, ATmega3290P, ATmega64, ATmega64A ATmega640 ATmega644 ATmega644A ATmega644P ATmega644PA ATmega649 ATmega649A ATmega649P ATmega6490 ATmega6490A ATmega6490P ATmega8515 ATmega8535
Крошка Серия: ATtiny12, ATtiny13, ATtiny13A, ATtiny15, ATtiny25, ATtiny26, Attiny45, ATtiny85, ATtiny2313 , ATtiny2313A
Классическая серия: AT90S1200, AT90 S2313, AT90S2333, AT90S2343, AT90S4414, AT90S4433, AT90S4434, AT90S8515, AT90S8535
Серия банок: AT90CAN128
Серия PWN: 9009WMP, 9009WMP 7

Установка драйвера USBAsp в Windows 8/10

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

Поскольку в операционной системе нет необходимого драйвера, в « Диспетчере устройств » появляется устройство « USBAsp » с восклицательным знаком.

Загрузите из цифровой подписи, разархивируйте и запустите « InstallDriver.exe»

Драйвер установлен, в диспетчере устройств » исчезает восклицательный знак С « USBAsp ».

Установка драйвера на Windows XP и Windows 7 аналогична, программатор готов к работе.

Программа разработана Боднар Сергей », работает не только с китайским программатором USBAsp v.2.0, но и с другими программаторами. Первым делом скачиваем программу, разархивируем и запускаем « AVRDUDEPROG.exe «.
В качестве примера попрошу китайскую плату, в которой установлен чип ATmega328P. В программе нажимаем на вкладку « Микроконтроллеры » и выберите ATmega328P.

Далее нужно выбрать прошивку, в строке « Flash » нажать « . . . », заходим в папку « C:\Program Files\Arduino\hardware\arduino\avr\bootloaders\atmega » и выбираем « ATmegaBOOT_168_atmega328.hex », нажимаем « Open »

Подключаем программатор к плате « Arduino UNO R3 », и нажимаем кнопку « Programming ».

В конце появится диалоговое окно об успешном завершении программирования.

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

В данной статье приведено описание USB программатора для микроконтроллеров AVR, который можно собрать своими руками. Он построен на микроконтроллере Atmega8 и способен работать от USB-разъема компьютера.Этот программатор совместим с STK500 v2.

Описание USB программатора

USB программатор построен на плате из одностороннего фольгированного стеклотекстолита. На плате есть 2 перемычки: одна находится под разъемом SPI, вторая перемычка возле этого же разъема.

После того, как все детали спаяны, нужно прошить микроконтроллер Atmega8 прошивкой, приведенной в конце статьи. Фьюзы, которые необходимо установить при программировании микроконтроллера Atmega8, должны выглядеть так:

  • SUT1 = 0
  • САПОГИZ1 = 0
  • САПОГИZ0 = 0
  • СКОПТ = 0
  • SPIEN = 0

Нужно напомнить, что в некоторых программах фьюзы выставляются наоборот.Например, в программе CodeVisionAVR нужно поставить галочки на указанные выше фьюзы, а в программе PonyProg наоборот.

Программирование Atmega8 через LPT-порт ПК

Самый быстрый и дешевый способ запрограммировать Atmega8 — использовать LPT-программатор для AVR. Аналогичная схема показана ниже.

Микроконтроллер питается от простого стабилизатора напряжения 78L05. В качестве оболочки для программирования можно использовать программу UniProf.

При первом включении программы и при не подключенном контроллере нажатием кнопки «LPTpins» необходимо настроить пины LPT порта следующим образом:

В момент запуска UniProf автоматически определяет тип микроконтроллера.Загружаем в память UniProf прошивку Atmega8_USB_prog.hex, отказываемся от подключения файла EEPROM.

Фьюзы ставим следующим образом (для программы UniProF) нажатием кнопки «FUSE»:

Для сохранения настроек нажмите все три кнопки «Запись». Затем нажатием на «Стереть» предварительно очищаем память микроконтроллера, который необходимо прошить. После этого уже нажимаем на «Prog» и ждем завершения прошивки.

Настройка USB программатора

После того, как наш микроконтроллер прошит, его необходимо установить на плату USB программатора.Далее подключаем программатор к USB порту компьютера, но питание пока не подаем.

Настройка порта:

Настройка терминала:

Параметр ASCII:

Теперь после всех проделанных процедур подаем питание на USB программатор. Светодиод HL1 должен мигнуть 6 раз, а затем загореться.

Для проверки соединения USB программатора с компьютером нажмите 2 раза клавишу «Enter» в программе HyperTerminal. Если все в порядке, мы должны увидеть следующую картину:

Если это не так, проверьте установку еще раз, особенно линию TxD.

Далее вводим версию программатора 2.10, так как без него программатор не будет работать с программами «верхнего уровня». Для этого введите «2» и нажмите «Enter», введите «a» (англ.) и нажмите «Enter».

USB-программатор способен распознавать подключение программируемого микроконтроллера. Это сделано в виде управления «подтягиванием» сигнала Reset к источнику питания. Этот режим включается и выключается следующим образом:

  • «0», «Ввод» — режим выключен.
  • «1», «Ввод» — режим включен.

Изменение скорости программирования (1 МГц):

  • «0», «Enter» — максимальная скорость.
  • «1», «Enter» — скорость снижена.

На этом подготовительная работа завершена, теперь можно попробовать прошить какой-нибудь микроконтроллер.

(скачано: 1 203)

КГ4ЛНЕ | GE-Flash-USB

GE-Flash-USB — это мое следующее поколение X2212 и X2444 EPROM программатор на базе микроконтроллера Atmel AT90USB1286-AU с USB 2.0 поддержка. Новая бета-версия программного обеспечения GE-Flash v2.0 использует стандартные драйверы WinUSB, встроенные в Vista, Windows 7 и Windows 8 для связи с программатором. Windows XP также поддерживается с установленным SP2 или выше. Этот новый программатор обеспечивает быстрое и надежное программирование для ваших винтажных радиостанций GE. Теперь вы можете программировать свои радиоприемники с ноутбуки или любой компьютер с современной версией Windows.

Версия 2.0 приложения GE-Flash для Windows включает прямая поддержка программатора GE-Flash-USB. GE-Flash v2.0 приложение использует существующий интерфейс WinUSB который встроен в Vista, Windows 7 и Windows 8 операционных систем.

Линии ввода-вывода микроконтроллера AVR связаны непосредственно с контакты гнезда программатора для интерфейса X2212 и Выводы последовательного интерфейса SPI привязаны к нижней части сокет для поддержки X2444 в собственном режиме SPI.Таким образом, микроконтроллер напрямую связан с EPROM в типичной конфигурации на основе микроконтроллера. С линии ввода-вывода процессора подключаются непосредственно к розетка, вы должны использовать надлежащую защиту от статического разряда процедуры при обращении с платой или установке/удалении EPROM из сокета.

На плате также имеется порт RS-232, но в настоящее время он не используется. Я использовал последовательный порт для начальной разработки, чтобы эмулировать загрузку VX2212 через RS-232 перед USB драйверы и код были завершены.Это можно использовать для загрузки Данные EPROM для радиостанций, оснащенных эмулятором EPROM VX2212. позже по желанию.

Позже я могу добавить код для выполнения загрузки VX2212 из последовательный порт всякий раз, когда кнопка «программа» нажата. Тем не менее, на данный момент компоненты кнопки и последовательного порта могут быть опущены. при сборке с текущим релизом прошивки. В этом отношении, DB9 и все связанные с ним компоненты RS-232 можно не использовать.В большинстве случаев последовательный порт никогда не понадобится среднего пользователя, так как поддержка USB-устройств теперь полностью реализована. Последовательный порт может быть временным вариантом для Пользователи Windows XP путем эмуляции протокола загрузки VX2212 через RS-232.

Я сделал программатор GE-Flash-USB открытым исходным кодом, чтобы вы могли Построй свой собственный. Схема, полный исходный код и GERBER файлы для заказа печатных плат перечислены ниже. Если у вас есть опыт сборка SMD-плат и прошивка прошивки, затем этот проект должно быть относительно легко.Если вам нужен хороший надежный программатор интернет-провайдера для прошивки микроконтроллера можно приобрести Программатор Atmel AVR ISP от Digikey по разумной цене.

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

Файл Описание
Репозиторий исходного кода GE-Flash-USB на GitHub Этот репозиторий содержит все необходимые файлы Eagle PCB CAD, Gerber и BOM. построить программатор.Полный исходный код прошивки и файлы проекта для Atmel’s AVR Studio v6.1 также включены. Спецификация представлена ​​в общем формате CSV. для импорта в программу электронных таблиц. Файл загрузки заказа предоставляется разрешить загрузку списка деталей в Digikey, включая корпус и все детали нужно для сборки.
Репозиторий драйверов GE-Flash-USB на GitHub Конфигурация и установщик INF-файла драйвера WinUSB файлы для драйверов WinUSB, которые поставляются предварительно установленными на Windows Vista, Windows 7 и Windows 8.Эти файлы включены уже с программным обеспечением GE-Flash, но я включил репозиторий здесь, который содержит только необходимые файлы драйверов для программатора GE-Flash-USB.

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

В НАСТОЯЩЕЕ ВРЕМЯ ПРОДАНО. ПОЖАЛУЙСТА, НАПИШИТЕ МНЕ ПО ЭЛЕКТРОННОЙ ПОЧТЕ, ЧТОБЫ ПРОВЕРИТЬ НАЛИЧИЕ, ПЕРЕД ЗАКАЗОМ.

UNPOPULATED REV-B GE-FLASH-USB PROGRAMMER PCB (25 долл. США за штуку + 3 долл. США за пересылку)

Вы должны заказать детали из файлов BOM выше и заполнить плату самостоятельно. Вам также понадобится программатор Atmel ISP или JTAG для прошивки прошивки на плате. Исходный код прошивки и HEX-файл объектного кода можно найти в архиве исходного кода выше. Вы можете приобрести программатор Atmel AVR ISP у Digikey. ЗДЕСЬ.

ПОЛНОСТЬЮ СОБРАННАЯ И ИСПЫТАННАЯ ПЛАТА ПРОГРАММАТОРА GE-FLASH-USB (320 долл. США + 25 долл. США за доставку)

Как говорится, «я не часто собираю USB-программаторы, но когда делаю, то беру за них много». Требуется время, чтобы тщательно набить все SMD детали вручную, загрузить прошивку и все протестировать. Предусмотрен пластиковый корпус корпуса, но вы должны вырезать и просверлить все отверстия, необходимые для всех светодиодов, разъемов, розеток и т. д. ЭТО НЕ ВКЛЮЧАЕТ ЛИЦЕНЗИЮ НА ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ GE-FLASH, ЛИЦЕНЗИИ НА ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРОДАЮТСЯ ОТДЕЛЬНО.СУЩЕСТВУЮЩИЕ ПОЛЬЗОВАТЕЛЬСКИЕ ЛИЦЕНЗИИ GE-FLASH МОЖНО ИСПОЛЬЗОВАТЬ С ПОСЛЕДНЕЙ ВЕРСИЕЙ GE-FLASH ДЛЯ ПОДДЕРЖКИ USB 2.X.

Создание FabTinyISP

Создание FabTinyISP

Содержание

Введение

FabTinyStar — это еще одна версия программатора/платы AVR ISP, которая может быть изготовлен в производственной лаборатории с использованием фрезерованной печатной платы и легко доступен компоненты. Проект основан на усилиях многих людей. Для большего историю FabTinyStar и людей, которые внесли свой вклад, пожалуйста обратитесь к Zaerc’s Страница FabTinyStar.

Эта версия («FabTinyISP Minimal» является незначительным изменением Версия Zaerc’а 0.3 (Bas), с небольшими изменениями:

  • Переключатель сброса и целевой переключатель питания удалены. Сброс переключатель увеличивает стоимость и не очень полезен для программиста интернет-провайдера, так как цель может быть легко сброшена с помощью команды программного обеспечения. Целевая мощность swtich был удален как обеспечивающий питание цели через порт программирования обычно не рекомендуется. Пользователи, понимающие Последствия этого приветствуются для создания одного из проектов FTS с выключатель.
  • Заливка медного грунта удалена и заменена индивидуальной следы земли; это позволяет начинающим паяльникам отшлифовывать больше медь. Все компоненты припаяны к четко определенным контактным площадкам с обеих сторон.
  • Убраны дополнительные контактные площадки для подключения к линиям передачи данных USB; это версия предназначена исключительно для того, чтобы быть программистом интернет-провайдера, а не быть универсальная плата tiny45.
  • Термистор PTC удален; так как этой части в настоящее время нет в инвентарь, большинство пользователей в любом случае построили бы его с резистором 0 Ом.Как убрана возможность обеспечения мощности цели, ее должно быть гораздо больше трудно создать условия, при которых полифьюз был бы необходим.
  • Makefile заменен. Цели для программирования предохранителей на были добавлены ATtiny45. Исходный Makefile также приводит к проблемы с файловыми системами, нечувствительными к регистру (например, Windows).

На этой странице описывается сборка, программирование, тестирование и отладка платы.

Примечания

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

Заметки о современном USB

FabTinyISP — это «низкоскоростное» устройство USB 1.1. Это самый медленный (и один из самых старых) типов USB-устройств. Обычно используется для мышей и клавиатур низкоскоростные устройства работают на 1.5МГц и гораздо меньше строгие временные требования, что позволяет реализация используемого протокола USB (у ATtiny45 нет аппаратная возможность USB).

Хотя все более поздние версии USB должны быть обратно совместимы со старыми таких устройств, как FabTinyISP, следует помнить о нескольких вещах, чтобы избежать выпусков:

  • Избегайте использования USB 3 концентраторы. Они не всегда хорошо работают с низкоскоростными устройствами и могут влияют на синхронизацию сигналов, от которых зависит FabTinyISP.USB-концентраторы 2 кажется, работает нормально в большинстве случаев.
  • Если вам нужно адаптироваться от USB-C, лучше всего использовать переходник кабельного типа. Это ставит намного меньше нагрузка на порты (на вашем ноутбуке, сам адаптер и программатор) по сравнению со штекерным адаптером без кабеля.
  • Остерегайтесь адаптеров USB-C с несколькими портами, так как они, скорее всего, содержат концентратор USB3. Если вам нужно несколько портов USB-A, лучше всего подключить концентратор USB2 в адаптер USB-C.

Изготовление печатных плат

Загрузите файлы PNG для дорожек и контура платы:

Исходные файлы Altium доступны здесь, если вы хотите изменить дизайн.

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

Готовая печатная плата должна выглядеть примерно так:

В зависимости от количества смещений, которые вы фрезеровали, может быть немного медь слева на краю платы перед контактами USB. 5 смещений должно быть достаточно, чтобы удалить всю медь в процессе фрезерования, но требуется немного больше времени для фрезерования.Если вы фрезеруете меньше смещений (я сделал 3 в приведенном выше фото), лишнюю медь можно удалить ножом. Только медь в передние колодки нужно снять; медь слева по бокам отлично.

Сборка печатной платы

Получить компоненты:

  • 1x ATtiny45 или ATtiny85
  • 2 резистора по 1 кОм
  • 2 резистора по 499 Ом
  • 2 резистора 49 Ом
  • 2 стабилитрона 3,3 В
  • 1 красный светодиод
  • 1 зеленый светодиод
  • 1 конденсатор 100 нФ
  • 1x 2×3 контактный разъем

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

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

Обратите внимание на компоненты, которые должны быть установлены в правильной ориентации:

  • Стабилитроны маркируются, как на чертеже, так и на упаковках, с линией со стороны катода.
  • Катоды светодиодов на чертеже печатной платы отмечены точками и толще линии. Условные обозначения для маркировки упаковки различаются у разных производителей светодиодов, но на катодной стороне обычно видна зеленая или черная линия. эпоксидная линза. Некоторые светодиоды имеют дополнительный медный маркер на катодной площадке. дно. Некоторые печатают маленькую стрелку внизу, что соответствует условное обозначение: стрелка указывает на катод. Если сомневаешься, можно использовать мультиметр в режиме проверки диодов; светодиод будет светиться слегка, когда красный щуп находится на аноде, а черный щуп на катод (это также полезно для определения цвета).
  • ATtiny45 помечает контакт 1 точкой, выгравированной лазером в углу посылка. Контакт 1 также отмечен на чертеже точкой.

Используйте припой для создания перемычки на перемычке возле разъема ISP (J1). Этот временно подключает V CC к V prog булавка на заголовке ISP, чтобы заголовок мог использоваться для программирования tiny45. (Программа подает напряжение на этот пин и программатор это обнаружит).Как только это будет запрограммировано, мы удалим это мост, чтобы превратить плату в программатор, а не программатор.


Перемычка под пайку, с перемычкой и без.

Улучшить разъем USB

Печатная плата немного тонкая, чтобы хорошо работать с большинством портов. Чтобы обеспечить хорошее USB-соединение, я рекомендую следующие одно или два улучшения.

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

В большинстве случаев этого достаточно, но я все же предпочитаю добавлять немного увеличить толщину, приклеив дополнительный материал к нижней части печатной платы.Небольшой кусочек пластиковой раскладушки упаковка работает хорошо. Я использую крошечную каплю клея CA, чтобы прикрепить небольшой кусочек в нижней части области USB-разъема, затем обрежьте лишнее пластик, как только он установлен. (Будьте осторожны, чтобы суперклей не попал на остальную часть плату, особенно контакты USB на другой стороне).

Проверьте свою работу

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

  • Сравните свою плату со схемой и изображением компоновки печатной платы, чтобы сделать убедитесь, что вы установили правильные компоненты в правильные места и ориентиры.
  • Осмотрите плату. Компоненты должны лежать на плате ровно, не наклоняется булавками в воздухе. Паяные соединения должны быть гладкими и припой должен был затекать и на штифт, и на контактную площадку.если ты все еще видно много оголенной меди на контактной площадке, или припой комковатый и доходит до точки, где вы сняли утюг, у вас, вероятно, нет хорошая связь. Оплавление путем применения тепла и флюса (либо из флюсовой ручки или добавив чуть больше припоя). Также ищите нежелательный припой мосты между соседними дорожками и штырями.
  • С помощью мультиметра проверьте наличие коротких замыканий между V CC и GND.

Установка программного обеспечения

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

Вы будете использовать оболочку командной строки (bash) в терминале вашей платформы для выполните все приведенные ниже команды. Если вы не знакомы с использованием командной строки, вы можете просмотреть руководство.

Linux (настоятельно рекомендуется)

Для Ubuntu и других дистрибутивов на основе Debian введите следующее команда, за которой следует ваш пароль при появлении запроса:

 sudo apt установить avrdude gcc-avr avr-libc сделать 

МакОС

Загрузите и установите CrossPack.

Окна

Установка цепочки инструментов в Windows немного сложнее. Отдельный инструкции приведены здесь.

Получить и собрать прошивку

Загрузите исходный код прошивки и распакуйте zip-файл (в Linux распакуйте fts_firmware_bdm_v1.zip). Открытым вашу терминальную программу и перейдите в каталог исходного кода.

Запустить сделать. Это создаст шестнадцатеричный файл, который будет запрограммирован на ATtiny45. Когда команда завершится, у вас должен появиться файл называется fts_firmware.шестнадцатеричный Если команда не завершается успешно, что-то не так с вашей установкой набора инструментов. Проконсультируйтесь сообщения об ошибках для информации, которая поможет вам отладить его.

Запрограммируйте ATtiny45

Сначала обновите Makefile для типа программатора, который вы собираетесь использовать чтобы запрограммировать вашу доску. Makefile по умолчанию предполагает, что вы собираетесь используйте программатор семейства usbtiny (например, другую плату FabISP). Если вы используете другой программатор, сначала выясните, что такое avrdude. (программное обеспечение) называет это.Вот некоторые часто встречающиеся AVR программисты:

Отредактируйте файл Makefile. Важно использовать текст редактор, предназначенный для программистов; такие программы, как Блокнот или WordPad, могут добавлять информация о форматировании, которая разрушает файл. В Linux gedit (графический интерфейс) или nano (командная строка) — хорошие варианты; Пользователи Windows могут захотеть используйте Блокнот++. TextEdit в OS X обычно работает, просто убедитесь, что вы сохраняете как обычный текст, а не RTF (и сделайте убедитесь, что к имени файла не добавляется «.txt»). Sublime Text — еще один популярный выбор на нескольких платформах.В общем, все, что вы используете для редактирования своего HTML-кода, наверное нормальный выбор.

В верхней части файла найдите строку, которая говорит:

.
 ПРОГРАММИСТ ?= usbtiny 

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

Вставьте плату в порт USB. Используйте порт USB 2.0, а не чем порт USB 3.0, если он у вас есть. Также рекомендуется использовать короткий Удлинительный кабель USB или USB 2.0 концентратор, а не подключаться непосредственно к порту, особенно если ваши USB-порты находятся вверх ногами.Это снимет напряжение и уменьшит риск повредить встроенные порты USB. Например:

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

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

Запустите make flash. Это удалит целевой чип и запрограммирует его флэш-память с содержимым файла .hex, который вы создали ранее.Вы должны увидеть несколько индикаторов выполнения, пока avrdude стирает, программирует, и проверяет чип.

Если что-то пошло не так, проверьте:

  • что программатор подключен правильно и пин 1 на разъеме соответствует контакту 1 на плате
  • что ваша плата хорошо встала в порт USB
  • что ATtiny45 установлен в правильной ориентации
  • , что ваша пайка выглядит нормально на разъеме ATtiny45 и ISP (примечание что короткое замыкание может произойти там, где дорожки проходят под разъемом)

Если вы проверили все вышеперечисленное, но по-прежнему не можете запрограммировать плату, используйте мультиметр, чтобы проверить, есть ли непрерывность между контактами на чипе и заголовок ISP, и что нет преемственности там, где не должно быть (короткое замыкание между соседними контактами или дорожками).

После того, как вы успешно запрограммировали флэш-память, пришло время установить конфигурационные предохранители. Сделаем это поэтапно:

  • Сначала установим фьюзы, которые управляют попаданием микроконтроллера его источник часов от. (USB требует, чтобы часы поступали от PLL, и не делиться на 8). Это позволит нам проверить, что плата работает как USB-устройство, но пока не сможет программировать другие доски.
  • Только после подтверждения работы USB ставим фьюз отключающий контакт сброса и превращает его в обычный контакт GPIO.Это позволит чип использует контакт сброса для программирования других плат, но отключит возможность повторного программирования этого чипа. Потому что это не легко обратимо, мы хотим сначала убедиться, что все остальное работает!

Запустите команду make fuses. Это установит все предохранители , кроме , который отключает вывод сброса. Опять же, вы должны увидеть несколько индикаторов выполнения от avrdude. Если этот шаг не удается, но предыдущий работал, у вас, вероятно, где-то прерывистое соединение.

Проверка работоспособности USB

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

Линукс

Введите lsusb в терминале, в котором появится список USB-устройств. если ты см. устройство «USBtiny от нескольких поставщиков», оно сработало! Если это не так, команда dmesg может предоставить дополнительную информацию о том, что пошло не так.Ты хотите увидеть сообщение о «Новом низкоскоростном USB-устройстве» без каких-либо дальше ошибки. (Обратите внимание, что sudo dmesg -c очистит сообщения после их распечатки, что полезно сделать перед подключением платы так что вы сможете точно сказать, какие сообщения являются результатом его подключения в). Если вы не видите сообщение «новое низкоскоростное устройство», проверьте подтяжка на линии USB (резисторы 1 кОм и 499 Ом, R1 и R2, последовательно между V CC и D-) для правильных значений и хорошего соединений (компьютер использует эти резисторы и их значения для обнаружения какой тип USB-устройства был подключен).Если вы видите «новый низкоскоростное устройство», но после него появляются другие ошибки, попробуйте далее:

  • Иногда просто плохое соединение с портом; попробуй отключить и переподключение. Убедитесь, что контакты USB чистые и одинаковое количество припоя на всех из них, и что поверхности гладкий; плавный.
  • Порты USB 2.0 работают с большей вероятностью, чем порты USB 3.0. если ты нет портов USB 2.0, попробуйте подключить через USB 2.0 концентратор.
  • Проверьте дорожки и компоненты между контактами данных USB и микроконтроллер. Убедитесь, что стабилитроны установлены правильно. ориентации, что последовательные согласующие резисторы (R3 и R4) являются правильные значения (49 Ом) и что соединения хорошие. Мера непрерывность между резисторами и контактами USB, и резисторы и выводы микроконтроллера, к которым они подключаются (выводы 2 и 3). Проверять на предмет короткого замыкания между выводами 2 и 3 микроконтроллера и другими соседними следы.
  • Попробуйте подключиться к компьютеру, который, как вы знаете, работал с кем-то чужую плату или попробуйте подключить чужую известную рабочую плату к своей компьютер. Это поможет вам определить, есть ли у вас несовместимость с вашими портами USB или проблема с вашей платой.

MacOS

Откройте Apple System Profiler (Меню Apple → Об этом Mac → Дополнительная информация; или из папки «Утилиты»). Выберите USB из списка слева, и вы должен увидеть USBTiny в списке устройств справа.Если он появится, значит работает должным образом. В противном случае следуйте приведенным выше инструкциям по отладке (примечание что в MacOS нет команды dmesg, хотя похожая информация может быть доступно где-то в консольном приложении). Либо все проверить выше, или подключитесь к компьютеру с Linux, чтобы увидеть, получите ли вы Сообщение «новое низкоскоростное устройство» в dmesg.

Окна

Windows отображает USB-устройства в диспетчере устройств (Пуск → Панель управления → Система). → Диспетчер устройств), хотя он не всегда говорит вам, что это такое, пока установлены правильные драйвера.Устройства USB также могут отображаться в разделе «Устройства». и принтеры» или «Оборудование и звук». Если вы не знаете Машина Windows достаточно хороша, чтобы определить, является ли устройство USBtiny появится, вы можете захотеть подключиться к чьему-то Linux-компьютеру или Mac, чтобы проверьте наверняка, работает ли он.

Перегорел предохранитель сброса

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

Во-первых, нам нужно изменить бит, который поворачивает вывод сброса ATtiny45. в контакт GPIO. Еще раз, это лишит нас возможности перепрограммировать это ATtiny45 в будущем, поэтому мы хотели убедиться, что все работать до этого. Подключите ваш ISP программатор к вашей плате еще раз раз и запустите make rstdisbl. Это делает то же самое, что и команда make fuses, но на этот раз она будет включать этот сброс отключить бит, а также.Вы должны увидеть несколько индикаторов выполнения, и с этим, avrdude больше никогда не сможет связаться с этим чипом через провайдера заголовок.

Во-вторых, нам нужно отключить V CC от V prog пин на ISP заголовке сняв мост на перемычке для пайки. Иногда излишки припоя прилипают к чистой жало паяльника; если нет, используйте демонтажную оплетку, чтобы удалить припой из перемычку, тем самым разорвав соединение.

Проверьте свой программатор

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

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

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