Приветствую Вас ГостьСреда, 27.11.2024, 01:22

Микроконтроллеры для всех


Каталог статей

Главная » Статьи » Мои статьи

Программатор с USB




USBasp
  Сегодня все меньше встречаются ПК , а тем более ноутбуки, со встроенным COM и LPT портами. А как-то ведь надо шить наши микросхемы с помощь хорошо зарекомендовавших себя последовательных программаторов. На сегодняшний день имеются схемные и программные решения последовательных программаторов, которые могут сообщаться с ПК посредством USB портов. Здесь я приведу реализацию двух USB-программаторов: USBASP и USB-DOPER. Более подробно отличия и сходства я приведу позже. Пока только могу сказать, что схемные решения абсолютно не отличаются, а отличия лишь в программном коде. Сложность этих программаторах лишь в том, что сам программатор придется запрограммировать, поскольку ядром его является либо Mega8, либо Mega48. Я здесь использовал Mega8, разницы нет (только прошивка разная).
  Начнем, пожалуй, с более понятного, с USBASP. Для реализации этого программатора вам понадобится, сторонний программатор, например, тот же программатор c LPT интерфейсом. Принципиальная схем USB-программатора приведена на рисунке 1.
  
Рисунок 1 Схема USB-программатора

   На схеме перемычки (я их реализовал в дип-переключателе) J1, J2, J3.
  J1- переключатель, который служит для выбора режима работы программатора, а точнее самого МК в нем. Если J1 замкнут, то МК (который в программаторе Mеga8 или Mega48) доступен для программирования. Этот режим когда сам программатор программируют. После чего эту перемычку можно снять и пользоваться программатором для прошивки других МК.
  J2 – если замкнут, то питания с программатора на программируемый МК поступает, если разомкнут, то программатор не питает плату с программируемым МК. Удобнее, конечно, чтоб эта перемычка была замкнута всегда, тогда не нужно дергать питание на отладочной плате.
  J3 – перемычка, якобы позволяющая, программировать МК с тактовой частотой не более 1.5 МГц. Понятно, что когда он замкнут, можно шить МК с тактовой частотой не более 1.5МГц.
Зеленый светодиод предназначен для индикации процесс программирования.
После того как спаяли плату делаем следующее:

1. Замкнуть перемычку J1 и естественно J2.
2. Установить фьюзы согласно вот этому:
    Mega8. старший байт- 11001001, младший байт -11101111
    Mega48.старший байт-11011101, младший байт -11111111
3. Прошить этот программатор вот
этим хексом.(Прошивка находится в скаченой папке по адресу usbasp.2009-02-28\bin\firmware\usbasp.atmega8.2009-02-28  или usbasp.2009-02-28\bin\firmware\usbasp.atmega48.2009-02-28)
4. Снимаем перемычку J1, в результате ПК должен обнаружить USB устройство.
5. Устанавливаем драйвера к программатору они находятся в той же папке по адресу usbasp.2009-02-28\bin\win-driver\libusb_0.1.10.1. После чего Виндоус обнаружит новое устройство USBASP. Если все правильно, то в диспетчере устройств должно отобразится имя LibUSB-Win32Devices   USBasp.
6. Скачиваем программу
AVRDUDEи пользуемся новым программатором
  Работа в AVRDUDE ничем не отличается от обычных программ - программаторов. Т.е. выбрали микросхему, открыли HEX, прошили.
 
Адреса официальных источников программатора по этой ссылке
USBASP(тут вы всегда можете скачать свежачек для прошивки вашего программатора) и программы - официальная ссылка AVRDUDE(программа для прошивки МК программатором USBASP).

USB-doper

  А вот эта интересная вещь способна стыковаться с AVRstudio. Программа видит этот программатор как STK-500. Очень удобно, когда программу откомпилировал, отладил и сразу же нажал на кнопочку – прошил.

   Чем же USBdoper отличается от USBasp? Физически ничем!! Принципиальная схема их абсолютно одинакова!!!! Поэтому, если у вас уже есть USBasp , то чтобы превратить этот программатор на псевдо STK-500 , достаточно поменять прошивку программатора вот на этот HEX. Единственное, замечу что применять исключительно Mega8.

  Теперь что нужно делать, чтобы все заработало:

    - возьмем наш готовый USB-asp и перешьем его мегу8 прошивкой, которая находится в скачаной папке (фаил avr-doper-mega8-12mhz.hex ).  Конечно же для прошивки нужен другой программатор.
    -устройство USB -doper готово. После чего компьютер обнаружит сразу же новое USB-устройство, скармливаем м драйвером и пользуемся. Драйверы приведены в той же скаченом папке, для Windows XP свой ,для Windows Vista свой драйвер.
   - после того, как все будет верно сделано устройство будет определятся в деспетчере устройств, как communications port. При подключении Winows должен определить устройство USB-doper.
   -далее после всего этого открываем AVRstudio, ваше устройство там обнаруживается как STK -500. Находим в AVRStudio, Tools -> Programm AVR -> Connect... и шьем).
  По скольку наш программатор не является фирменой продукцией фирмы ATMEL,  нам будет почти сразу же предложено обновить через интернет программное обеспечение. Отклоняйте подобные предложения.
  Кстати, у меня этот программатор работает только без перемычки J3 и J1 !
 
ПО для USB -doper качаем здесь

  Не будем нарушать авторские права.:-) Все это чудо придумано не мною, открыто товарищем
   
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


Рисунок 2 А так выглядит мой первый USB-программатор.              Рисунок 3 А так выглядит последний.
 
Тут все перемычки заменены дип-переключателем, появился корпус и дополнительная индикация (питания, процесс программирования и ошибка программирования).
Для любителей шить МК в Си-коде USB-Doper также совместим и CodeVision.
 
Рисунок 4 В полной готовности USB-Doper

  Еще одно! Бывает такое, что програматор не хочет съедать  драйвер на вашем компе. Приходится помучаться и тогда на раз ...надцатый выйдет. Это происходит из-за того что плохое согласование уравней программатор-компьютер. С этим борятся обычно подпаивая к выводам D+ и D- стабилитроны на 3,6 В.   

Фотки моего предлогаемого программатора в корпусе, без корпуса и в разборке смотрим здесь.








USBASP и  USB-doper модернизация
 
Здесь я немного модернизировал схему этих двух программаторов. Схема разработана в программе DIPtrace.
схема мантажка здесь.  Параметры схемы и внешний вид фото показаны на рисунке ниже.

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












Категория: Мои статьи | Добавил: Alex_Sky (03.11.2009)
Просмотров: 58816 | Комментарии: 6 | Теги: usb, программирование микроконтроллеров, USB-программатор, AVR, проект, программатор, микропроцессорное устройство, схема USB-программатор, микроконтроллер | Рейтинг: 4.0/3
Всего комментариев: 6
5 Виктор  
0
всем привет
кто нибудь помогите у меня есть чип и есть программа которую надо залить на чип! не запросто так !!!

6 Alex_Sky  
0
1) какой чип?
2) что за программа, в чем написана?
3) программатор есть?
Самый простой способ. Это собрать на коленке свой простенький программатор.(http://microelectronic.at.ua/publ/programmator_s_lpt/1-1-0-5) А потом, пользуясь им через Пони Прог вшейте программу. !!!!Это если у вас микруха АВРовская.

4 Dundel1  
0
Большое спасибо за статью. Не мог 2 дня запустить Допер после сборки. Оказалось, что мне подсунули стабилитроны на 5,6В, прочитав эту статью, воткнул на 3,3. Ба-а-а! Да он работает!:)

2 Роман  
0
схема заработала. АВРстудио просит обновлять ПО на программатор при каждом его подключении. что с этм делать? нажимаю ОК. прога виснет. не определяется программатор.

3 Alex_Sky  
0
сообщение типа

говорит о том, что на ваш STK500 появилось обновленное программное обеспечение. А по скольку у вас не STK500, а его симулятор, то при каждом подключении отказуйтесь от предложения обновить код. Иначе будет сделана попытка обновить ваш код для DUPERa. Оно конечно без болезнено для него, но система повиснуть может.

1 Alex_Sky  
0
Так как при написании статьи все мелочи срузу не учтешь, буду признателен за вопросы и замечания. Коментим... smile

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск
Категории раздела
Мои статьи [19]
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Друзья сайта
  • Yourdevice