Универсальный адаптер-программатор
Современные средства для работы с программируемыми микросхемами отличаются большим разнообразием. На сегодняшний день созданна масса различных адаптеров и программаторов для программирования микросхем ПЗУ, Flash памяти, различного типа микроконтроллеров, логических матриц ПЛИС. Кроме того существует масса платных и бесплатных компьютерных программ для управления этими программаторами и адаптерами.
Часто в радиолюбительской практике возникает необходимость программирования разных типов микросхем, которые требуют наличия разных адаптеров или программаторов для программирования микросхем конфигурационной памяти ПЛИС, которые программируются по интерфейсу типа I2C, микроконтроллеров, которые программируются по интерфейсу SPI. Покупать для этих целей разные адаптеры это довольно накладно, а делать каждый из них самому проблематично.
В данной статье представлен адаптер-программатор который объединяет в себе некоторые часто используемые программаторы и адаптеры, что экономит и деньги и время радиолюбителя или разработчика электронной аппаратуры.
- Byte Blaster MV Altera
- Byte Blaster 2 Altera
- Parallel Download Cable Xilinx CPLD
- Parallel Download Cable Xilinx FPGA
- Загрузочный адаптер для конфигурационных ПЗУ AT17(Atmel) типа CPS
- Программатор Pony Prog (Parallel mode) типа STK200/300
- Программатор Pony Prog (Serial mode)
- Программатор и отладчик Wiggler JTAG для программирования и отладки микроконтроллеров ARM Atmel
- Программатор и отладчик MSP430 JTAG для программирования и отладки микроконтроллеров MSP430 Texas Instruments
Устройство выполнено на базе микросхемы ПЛИС XC95108-15PC84 фирмы Xilinx и импульсного преобразователя MAX856 фирмы Maxim. Устройство содержит однотипные SMD элементы, резисторы, конденсаторы, рзъемы (общей стоимостью около 6$) плюс микросхема ПЛИС (стоимостью около 9$). Вместе со стоимостью платы себестоимость адаптера-программатора будет в пределах 20$, что значительно ниже себестоимости всех устройств, входящих в состав адаптера, если-бы они были собраны по отдельности. Подключается адаптер-программатор к LPT и RS232 портам компьютера, что дает возможность одновременной работы с микроконтроллерами и ПЛИС.
Вся необходимая документация по сборке программатора, печатная плата, принципиальная схема, файл прошивки прилагается
Источник
Адаптеры для программирования микроконтроллеров АVR
Многие радиолюбители (и я в том числе), наконец-то решившиеся поддаться соблазну использования в своих работах микроконтроллеры (МК), сталкиваются с необходимостью программирования этих самых МК. Кто-то опускает руку в карман, достает банкноты, и без всякого угрызения совести отдает их «дяде», получая взамен черную или цветную коробочку с неизвестным содержимым (или известным) за большие деньги, а кто-то пытается сделать программатор своими руками, при этом получая дополнительный опыт. Поприветствуем этих энтузиастов и попробуем хоть немного посодействовать им в их нелегком, но очень интересном и благородном труде.
Схем программаторов во всемирной паутине выложено огромное количество, выбор поистине неограниченный, и программное обеспечение имеется на все вкусы и потребности, поэтому не будем навязывать какие либо идеи, тем более, что схемы с вариациями одного из пожалуй самых повторяемых программаторов на этом сайте уже предоставлены. В данной статье поговорим немного об адаптерах, коими оконечиваются все программаторы.
Существует несколько видов подключения программатора к программируемому MK. Он (МК) либо вставляется в СОКЕТ (ZIP) адаптера, либо программирование осуществляется внутрисхемно, с помощью спец. разъёма устанавливаемого вблизи программируемого МК, либо шлейф программатора подпаивается проводниками непосредственно к ножкам микроконтроллера со стороны паек.
Безусловно, подключение непосредственно к МК на плате весьма удобны, и практически все микроконтроллеры фирмы Atmel поддерживают режим ISP, а при работе с ними вполне достаточно адаптера внутрисхемного программирования представляющего из себя плоский кабель с разъемами на концах, либо с одной стороны разъем, а другой он распущен и промаркированы проводники.
Так уж получилось, что не существует единого стандарта подключения адаптеров к программатору, 2 из них, самых популярных (от Атмел), приведены на следующей картинке:
Лично я использую в своих изделиях 10 пиновый коннектор. Обьяснение данному предпочтению простое, у нас всегда в запасе 3-4 свободных пина, посаженных на землю, которые можно не нарушая совместимости со стандартным интерфейсом задействовать в «мирных целях» для дополнительных сервисов, таких как дополнительное питание, внешний генератор тактирования и прочих.
Теперь перейдем ближе к микроконтроллерам. К нашему счастью здесь все более-менее стандартизировано по группам, по этому не надо на каждую микросхему паять свой сокет, достаточно 1 на группу со схожими распиновками. Вот таблица распиновки наиболее популярных микроконтроллеров фирмы Атмел:
Для наглядности можно привести еще такую вот удобную картинку соответствия
Первый — это изготовить под каждый тип микросхем адаптеры, аналогичные этому, и применять их по мере необходимости.
Файл с примерами можно посмотреть в архиве от автора с ником AHEIR, найденном на одном из форумов e-kit.su .
Второй адаптер для AVR — это коммерческий вариант адаптера, поэтому ни печатки ни подробной схемы не привожу.
Скажу по секрету, по этому фото была восстановлена схема и печатка, и даже сделан мною адаптер для себя. Очень он мне нравится, с помощью его даже кварцы проверяю. Печатной платы для раздачи нет, но есть фото и sprintlayout. Выводы делайте сами 🙂
Еще на форумах был найден такой вот похожий адаптер, тоже грамотно выполнен, но уже для МК в корпусах SOI и TQFP
печатная плата от автора plumber и еще одна в архиве .
Про адаптеры для Pic контроллеров и микросхем последовательной памяти читайте в последующей статье «PIC & SEEPROM Adapters». Это будет уже чисто моя разработка, так что печатку и схему обязательно предоставлю. При написании статьи были использованы фото и другие материалы, найденные в интернете на форумах. На авторство никак не претендую, материал использован исключительно в просветительных целях. По конкретным вопросам пишите в личку. С уважением, Oleg63m.
Внимание, в статье есть неточности! Один из внимательных читателей reis заметил их и любезно поделился с нами, за что скажем ему спасибо. В ATmega64 и ATmega128 выводы MOSI и MISO не применяют для ISP. Внимательно смотрите ДатаШит! Например для ATmega128 сигналы MISO подключают к ножке PE1, MOSI подключают к ножке PE0. В первоисточнике, автор в комментариях сам указывает, что 128 разведена не правильно. Кстати и в стате, плата которая в архиве имеет неточность. Посадочное место AtMega какое-то кривое. А исправить все легко — MOSI—> 2-я нога, MISO—> 3-я нога для 128.
Источник
Адаптер QFP32 в DIP28 для ATMEL AVR контроллеров — быстрая прошивка контроллеров для поверхностного монтажа
Данный ресурс читает немало любителей что-то поделать руками. Многие конструируют свои электронные устройства. Современные электронные устройства, в большинстве случаев, содержат контроллер, при этом, народ очень любит контроллеры компании ATMEL. На данных контроллерах построены любимые (и не любимые) многими Arduino. В обзоре устройство для быстрой прошивки контроллеров планарного исполнения, в частности: ATmega8, ATmega48, ATmega88, ATmega168, ATmega328.
Преимущества qfp исполнения:
— компактный размер,
— не нужно сверлить плату при изготовлении устройства,
— низкая цена.
Недостатки:
— сложность монтажа,
— сложность изготовления платы (миниатюрность),
— трудности заливки прошивки.
Типовая распиновка перечисленных контроллеров в корпусе tqfp32:
Типовая распиновка перечисленных контроллеров в корпусе dip28 (с указанием эквивалентных выводов Arduino):
Задача предмета обзора — получить из tqfp32 распиновку dip28, с соответствующим расположением выводов.
Фотографии предмета обзора:
Адаптер сделан качественно, люфтов нет, плотный зажим контроллера.
Вес устройства:
Контроллер следует ставить точкой от шарнира:
Если в качестве программатора используется Arduino Uno, то схема подключения будет такой:
Я прошиваю без конденсаторов и резистора на reset (проблем нет), вид:
При этом, можно использовать как внутренний источник опорной частоты (как правило 8 MHz), так и внешний кварц. Я припаял проводки к кварцу, для удобства прошивки:
Для того, чтобы понять как предмет обзора будет выглядеть на макетке:
Расстояние между рядами выводов (6 * 2.54 = 15.24 мм). Шаг выводов стандартный: 2.54 мм.
Альтернатива предмету обзора плата перехода из tqfp32 в dip:
С припаянным контроллером:
Недостатки:
— необходимо паять (некоторые используют прищепку — на любителя),
— нестандартное расположение выводов,
— дополнительное время на все танцы с бубном.
Также можно на готовом устройстве вывести пины для прошивки и заливать загрузчик прямо на устройство, что не всегда возможно, да и знать иногда хочется, что контроллер заведомо исправен.
В целом устройство полезное. В ближайшее время расскажу об устройствах дачной автоматики построенных с применением данного адаптера.
На этом заканчиваю. Спасибо всем, кто дочитал до конца! Надеюсь, что кому-то приведенная информация окажется полезной.
Источник
Адаптеры для программирования своими руками
Как самому легко и просто сделать универсальный кабель
Изучаем схему, найденную на www.chiptuner.ru и понимаем, что кабель очень простой. Нам понадобится:
- Немного разноцветных проводов длиной 60 см.
- Коннекторы от 55 -пинового разъема 11 – 13 шт.
- Коннекторы от 81 -пинового разъема 7 – 9 шт.
- Термоусадочная трубка разных диаметров ( 2 , 5 mm; 4 mm; 8 mm).
- 2 переключателя ножевых.
- Светодиод обычный.
- Резисторы 1 кОм и 120 Ом.
- Колодка DB- 25 «Папа» в корпусе.
- Уплотнительная резинка для корпуса DB- 25
- Провод питающий 2 x 0 . 35 2 метра.
- Разъем прикуривателя.
- Колодка OBD‑ 2 .
- Кабельные стяжки.
- Паяльник.
- Кусачки.
- Кримпер.
- Термофен или зажигалка.
Итак, начинаем изготовление универсального кабеля Combiloader.
Приступаем к реализации.
Контакты, малый от колодки 81 -pin, большие от колодки 55 -pin:
Для начала нам нужно подготовить разноцветные провода одинаковой длины. Цвет проводов – из раздела «Справка» программатора Combiloader: черный, красный, серый, синий, желтый, оранжевый, зеленый. Длина провода 60 см. От каждого провода нужно отрезать 10 см, главный кабель не должен превышать 60 см., согласно справке, поэтому первый, большой, контакт опрессовывается на расстоянии 50 см, длина проводника до малого – 10 см.
После опрессовки контакты закрываются термоусадкой. В результате должно получиться примерно так:
Аналогично делаем все семь проводов:
Далее работаем с OBD коннектором, купленным на Aliexpress:
Изоляцию с колодки нужно снять и прозвонить все провода. Нам понадобятся провода 4 и 5 – это масса (на фото – синий и зеленый), их нужно обрезать для соединения с основным жгутом, провод питания ( 16 контакт, этот провод пойдет в сторону DB- 25 ). Провода от 7 и 15 (на фото – коричневый и коричнево/черный) контактов можно сразу свить в витую пару, это у нас будет GPT. Их можно не запоминать, какой где, провода GPT могут меняться местами при программировании.
CAN шина, для полной совместимости с режимом BSM должна быть «запаралелена», нам нужно объединить 2 + 6 и 10 + 14 , второй провод обрезать, оставив немного для подпайки терминатора CAN-шины. На фото CAN – желтый и бело/черный.
Подготавливаем отключаемый терминатор. Резистор на 120 Ом просто монтируется на контакт, подключается к шине CAN средний контакт и контакт с резистора. Это позволит подключать – отключать резистор от шины CAN:
И припаиваем его к оставленным проводникам. Шину CAN теперь тоже можно скрутить в витую пару, а переключатель вместе с резистором «прячется» в термоусадку:
Прикладываем колодку к нашему разноцветному кабелю с таким расчетом, что бы CAN и GPT были примерно на одинаковом расстоянии с большими коннектором основного кабеля и прихватываем кабельной стяжкой. После этого нам нужно присоединить контакты 4 и 5 к массе.
Собираем с помощью стяжек жгут. Неиспользуемые проводники колодки можно обрезать. Но я рекомендую просто немного их укоротить и спрятать в проводке. Мало ли что, вдруг понадобится впоследствии какой – либо контакт OBD. На скрученные витые пары GPT и CAN нужно опрессовать малые контакты. У нас должно получиться примерно так:
Приступаем к распайке стороны с DB- 25 . Можно сделать специальную платку для припаивания к разъему DB- 25 . Но можно обойтись без нее. Основная функция платы – фиксация переключателя и светодиода.
Вот так незамысловато это выглядит после сборки 🙂
Сами же провода подпаиваются непосредственно к контактам, согласно справке.
Немного «дорабатываем» корпус:
И припаиваем на питающий провод стандартный коннектор в прикуриватель. Кстати, не понимаю, зачем это нужно, но так повелось и стало негласным стандартом. Так что этот пункт можно смело пропустить, если вы делаете кабель для себя.
Любуемся на готовый вариант.
Ну и напоследок, делаем дополнительные провода массы и питания. Они нужны для того, что если на каком – нибудь хитром блоке не хватит стандартных коннекторов, можно отрезать большой или малый контакт и присоединить к основному проводу.
Источник