Usb avr910 – USB программатор микроконтроллеров AVR — AVR910 — Меандр — занимательная электроника

USB программатор AVR (AVR910) — DRIVE2

Программатор выполнен на основе драйвера от Objective Development и полностью совместим по командам с оригинальным программатором AVR910 от ATMEL. Описание оригинальной схемы программатора можно взять в Application Note AVR910: In-System Programming, а список поддерживаемых команд можно посмотреть в Application Note AVR109: Self Programming.

Не вдаваясь в теорию, которой предостаточно в интернете, отмечу лишь основные моменты. Официальный сайт программатора prottoss.com/projects/AVR…avr910_usb_programmer.htm, там есть описание, драйвера и прошивка. Вроде бы этого достаточно, но, можно ошибиться на этапе программирования fuse-битов, и долго думать, почему это западло не работает.

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

Собираем программатор по предложенной схеме, разводку платы делал под ATMega8 – 16AU, поэтому брать нужно именно его, а не 16PI, все SMD компоненты размера 0508. В эту схему можно добавить стабилитроны для защиты линий данных USB порта, т.к. по инструкции напряжение не должно превышать 3.6 вольта, это не обязательно, может работать и так, однако есть вероятность ушатать порт.
Собранный программатор подключаем через пять проводков к LPT, перемычку ставим в режим MODIFY, запускаем UniProf, проверяем почему не заработало, материмся и идём собирать примочку к COM порту, может случиться и так, что через LPT шиться не станет, не вытянет уровни.

Допустим что UniProf радостно сообщил нам что mega8 найдена. После этого нужно снять галку EEPROM (его шить не нужно), нажать кнопку ERASE, Open HEX, выбрать прошивку, нажать Prog. После успешного программирования необходимо выставить FUSE биты, как показано на рисунке. LOCK-биты трогать вообще не нужно.
Теперь для проверки закрываем программатор и заново его запускаем, если контроллер не определился, то не работает кварцевый резонатор. Проверяем генерацию осциллографом, смываем лишний флюс, проверяем номиналы конденсаторов (у меня заработало с номиналом 4,7pf).
Если всё заработало, то ставим перемычку в режим NORM, подключаем к компьютеру. Венда сразу должна определить USB Programmator и предложить поискать драйверы в интернетах, на что указываем ей путь к файлу inf. Теперь в системе появится виртуальный COM порт, на который можно настроить CodeVisionAVR.

Оригинал статьи phreakerclub.com/46

www.drive2.ru

Переделываем AVR 910 в USB ASP для штатной работы драйвера в x64 Windows — Good Chip

При переходе  с Windows x86 на Windows x64 столкнулся с проблемой, что мой программатор AVR910 от Protoss не желает в ней работать. Точнее x64 Windows отказывается устанавливать драйвера без цифровой подписи. Подписать родные драйвера от Protoss  не представляется возможным без покупки лицензии Developer у корпорации зла. Остается как вариант либо отключить проверку подписи драйверов. Либо перевести ОС в Тестовый режим. Постоянная работа в тестовым режиме тоже не сулит ничем хорошим, да и решение — это не решение, а костыль….  Альтернатива только найти драйвер подписанный сертификатом.

В процессе решения данной проблемы мой взгляд пал на альтернативные прошивки для AVR910 by Protoss. Так я встретил довольно много переделок  AVR910 в STK500… На форуме некий Ink подготовил несколько альтернативных прошивок для AVR910.

  • Doper-CDC —  нам не подходит, так как там используется тот же lowcdc.sys без подписи…
  • Doper-HID — нам подходит, он вообще не требует стороннего драйвера, но скорость записи в 260 б/с вызывает панику…
  • USBasp — имеет скорость записи в 1.5 кБ/с, и использует драйвер libusb. Который мы и будем использовать.

libusb  начиная с версии 1.2.0 имеет цифровую подпись, соответственно эти драйвера будут работать в штатном режиме на x64 системе.

Скачать — прошивка для превращения AVR910 в USBASP.

Fuse bit:

  • Должны быть запрограммированы  — SPIEN, CKOPT, SUT0 и BODEN;
  • Или High Fuse:0*CF; Low Fuse:0*AF;

Скачать —  драйвер для Windows (x64 и x32). Этот драйвер проходит проверку цифровой подписи! При установки необходимо разрешить установку драйвера неизвестного производителя!!!

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

Для прошивки контролеров программатором USBASP необходимо другое программное обеспечение:

  • AVRDUDE — консольная кроссплатформенная программа для прошивки микроконтроллеров.
  • e-Xtrem burner — индийская разработка конкретно для USBASP.
  • SinaProg — GUI для AVRDUDE
  • AVRDUDE PROG — еще один GUI для AVRDUDE

В статье AVR910 программатор — описано как собрать программатор, приведена печатная плата и список деталей.

Так же как установить драйвер для USB ASP для Windows 10 (7/8) x64 с помощью программы Zadig можно прочитать тут.


Купить готовый программатор на aliexpress

 

ISP Программатор для ATMEL AVR ATMega ATTiny

MiniPro TL866CS

good-chip.in.ua

Фрикер Клуб » USB программатор AVR (AVR910)

Программатор выполнен на основе драйвера от Objective Development и полностью совместим по командам с оригинальным программатором AVR910 от ATMEL. Описание оригинальной схемы программатора можно взять в Application Note AVR910: In-System Programming, а список поддерживаемых команд можно посмотреть в Application Note AVR109: Self Programming.

Не вдаваясь в теорию, которой предостаточно в интернете, отмечу лишь основные моменты. Официальный сайт программатора http://prottoss.com/projects/AVR910.usb.prog/avr910_usb_programmer.htm, там есть описание, драйвера и прошивка. Вроде бы этого достаточно, но, можно ошибиться на этапе программирования fuse-битов, и долго думать, почему это западло не работает.

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

Собираем программатор по предложенной схеме, разводку платы делал под ATMega8 – 16AU, поэтому брать нужно именно его, а не 16PI, все SMD компоненты размера 0508. В эту схему можно добавить стабилитроны для защиты линий данных USB порта, т.к. по инструкции напряжение не должно превышать 3.6 вольта, это не обязательно, может работать и так, однако есть вероятность ушатать порт.
Собранный программатор подключаем через пять проводков к LPT, перемычку ставим в режим MODIFY, запускаем UniProf, проверяем почему не заработало, материмся и идём собирать примочку к COM порту, может случиться и так, что через LPT шиться не станет, не вытянет уровни.

Допустим что UniProf радостно сообщил нам что mega8 найдена. После этого нужно снять галку EEPROM (его шить не нужно), нажать кнопку ERASE, Open HEX, выбрать прошивку, нажать Prog. После успешного программирования необходимо выставить FUSE биты, как показано на рисунке. LOCK-биты трогать вообще не нужно.
Теперь для проверки закрываем программатор и заново его запускаем, если контроллер не определился, то не работает кварцевый резонатор. Проверяем генерацию осциллографом, смываем лишний флюс, проверяем номиналы конденсаторов  (у меня заработало с номиналом 4,7pf).
Если всё заработало, то ставим перемычку в режим NORM, подключаем к компьютеру. Венда сразу должна определить USB Programmator и предложить поискать драйверы в интернетах, на что указываем ей путь к файлу inf. Теперь в системе появится виртуальный COM порт, на который можно настроить CodeVisionAVR.

Файлы по теме:

UniProf — программатор «по пяти проводкам» LPT\COM

AVR910.Driver — драйвера для Windows

USB.910.Programmer — прошивка hex

usb_prog_smd — плата в формате Layout 5.0

(C) exchange
www.phreakerclub.com

phreakerclub.com

AVR910-совместимого USB программатора

Программатор выполнен на основе драйвера от Objective Development и полностью совместим по командам с оригинальным программатором AVR910 от ATMEL.
Исходно схема устройсва выглядит следующим образом

 

для увеличения изображения кликните на нем

Светодиоды VL1, VL2 сигнализируют о текущих действиях программатора, и, соответственно, обозначают режимы чтения и записи. Светодиод VL3 служит для сигнализации подачи питания на программатор. Резисторы R10 — R14 предназначены для согласования уровней сигналов контроллера программатора и программируемого контроллера. С помощью J3 LOW SCK возможно понижать тактовую частоту порта SPI МК программатора до ~20 кГц. При разомкнутом джампере частота SPI нормальная, при замкнутом — пониженная. Переключать джампер можно «на ходу», так как управляющая программа МК программматора проверяет состояние линии PB0 при каждом обращении к порту SPI. Не рекомендуется переключать джампер при запущенном процессе записи/чтения программируемого МК, т.к., скорее всего, это приведет к искажению операции записи/чтения. Данный джампер введен для возможности программирования МК AVR, тактированных от внутреннего генератора 128 кГц.
Схема была несколько переработана, в нее внесены следующие изменения.
Питание МК осуществляется от USB, но не через диоды, как в исходной схеме, а через LDO стабилизатор LM1117 на 3.3В. Замечу, что при таких напряжениях питания (как 3.3 В здесь, так и 3.6 В в исходной схеме) и частоте кварца 12 МГц Atmel не гарантирует устойчивую работу своих МК, однако к чести производителя ни один из тестировавшихся микроконтроллеров работать не отказался. Тем не менее, стоит учитывать такую возможность. Еще раз: чем больше напряжение питания (в пределах до 5В, естественно), тем выше вероятность того, что контроллер запустится и будет устойчиво работать, поэтому многие отказываются от LDO в пользу двух диодов. Да, предохранитель тоже отсутствует, но, если добавить, хуже точно не будет.
В обе цепи питания МК (VCC и AVCC) введены дополнительные LC-фильтры в виде SMD-индуктивностей на 10мкГн и конденсаторов 0.1 мкФ (в принципе, дроссель в AVCC можно заменить перемычкой, его установка — совсем уж перестраховка), кроме того, на плате появился дополнительный джампер, позволяющий запитывать целевую плату от программатора напряжением 5В или 3.3 В или, естественно, вообще не питать ее от программатора. В цепь питания целевой платы также включена индуктивность и установлен диод 1N4148, препятствующий попаданию питающего напряжения с целевой платы (если оно там есть) на программатор. Замечу, что поскольку на диоде имеет место падение напряжения, то напряжение питания целевой платы будет меньше заявленного на величину этого самого падения. В зависимости от диода и некоторых других условий теоретически оно может снизиться настолько, что его не хватит для нормального функционирования целевой платы. Для уменьшения эффекта можно использовать в этой цепи диод Шоттки, а вообще, может быть стоит вообще отказаться от такой возможности, решайте сами, насколько оно вам надо… 🙂
Исчез джампер NORM/MOD, предназначенный для ввода программатора в режим обновления прошивки, вместо этого на плате установлен полноценный разъем для программирования МК программатора (разъем имеет несколько нестандартный вид и представляет собой контактную гребенку PLS-6, на которую выведены следующие сигналы в последовательности MOSI-MISO-SCK-Reset-Vcc-GND. В такой же последовательности эти сигналы расположены на выводах МК ATMega16 в корпусе DIP-40, именно оттуда я ее и «срисовал». Такой разъем занимает меньше места на плате и как правило проще разводится, чем стандартный 10-ти контактный ISP-коннектор, поэтому лично я часто им пользуюсь в своих конструкциях).
Кроме того, уменьшены до 220 Ом последовательные резисторы в линиях программирования (вообще, их номинал — отдельный открытый вопрос) и до 22 Ом в линиях USB.
Все эти изменения можно проследить на печатной плате (кроме изменения номиналов резисторов, в подписях элементов они оставлены прежними), разводку которой можно скачать в конце статьи. Плата получилась односторонняя с парой перемычек и рассчитана на установку МК ATMega8 в кроватке, у которой удалены неиспользуемые выводы. Можно, конечно, и впаять туда Мегу, откусив лишние выводы, но это на ваш страх и риск. Собранный программатор выглядит так:

 

После сборки программатора следует прошить МК в нем (прошивка в конце статьи), при этом фьюзы для МК нужно выставить следующим образом:

 

Теперь, если все собрано правильно, при подключении программатора к ПК обнаружится новое устройство и потребуется установка драйверов. Драйвера, естественно, без цифровой подписи, так что просто игнорируем предупреждения ОС по этому поводу. В общем-то, на этом установка и заканчивается. Если у вас не ХР, а Win2000, то требуются некоторые дополнительные манипуляции, за подробным описанием которых (как, впрочем, и всей конструкции вцелом) я попрошу вас обратиться на сайт автора. В системе должен появиться новый виртуальный СОМ-порт, через который и работает этот программатор, стоит настроить номер этого порта и скорость. Естественно, используемый вами софт нужно будет настроить на работу именно с этим портом.

Вот еще вариант платы этого программатора на микроконтроллере в корпусе TQFP, делал под конкретный корпус, схема та же, работает не хуже:

 

 

shemu.ru

ISP Программатор avr910 для AVR микроконтроллеров схема и драйвера

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

Название программатора avr910 как ни странно это номер аппноута(документации по применению avr микроконтроллеров) под номером 910.
В данной документации собраны стандарты и требования к программатору для работы по командам требуемым для корректной прошивки микроконтроллера посредством интерфейса SPI.

В интернете есть довольно хороший проект программатора совместимого по набору команд с AVR910, автор проекта программатора PROTTOSS(prottos.com).

Схема программатора AVR 910:

Для защиты USB порта компьютера необходимо установить предохранитель, хоть USB портов в современном компьютере хватает с головой но все же выгорание одного порта маленькая трагедия для современного пользователя ПК.
Основа программатора AVR 910 это микроконтроллер ATmega8 без разницы можно использовать как микроконтроллер в DIP корпусе так и в TQFP.
Программатор AVR 910 имеет переключатель, который предусматривает заливку свежего программного обеспечения программатор со стороннего программатора. В исходном положении программатор работает в штатном режиме.
Программатор AVR 910 имеет три индикатора:
1. индикатор чтения данных из подключенного микроконтроллера,
2. индикатор записи данных в микроконтроллер,
3. индикатор питания программатора.

На всякий случай для защиты микроконтроллера от выгорания из-за превышения напряжения питания в схеме установлены два диода, которые понижаю примерно на 0,7 Вольта 5 Вольт, которые выходят из USB порта компьютера.

Одной из изюминок данной версии программатора является выведенный на отдельный вывод выход генератора с частотой 1МГц, его назначение следующее:
часто случается что микроконтроллер с неправильно запрограммированными фьюзами не хочет отвечать подключенному программатору. В основном фьюзы в таком случаи лечатся при помощи подключения генератора, частота которого должна составлять 1МГц или меньше.

Программатор AVR 910 имеет перемычку для понижения скорости работы программатора с подключенными микроконтроллерами, сделано для того, что бы понизить скорость работы до 20кГц.

Программатор совместим с такими программами и комплексами:
— пакет программ AVR Studio 5,
— вражеский CV AVR,
— ChipBlaster AVR.

Драйвер, программа прошивки и информация по сборке в архиве.

Скачать драйверы программатора avr910

Из личного опыта:
Программатор работает хорошо, единственное что не устроило это скорость работы.
Заливка программы в микроконтроллер ATmega328 заняла по времени почти 30 минут. К сведению объем памяти микроконтроллера ATmega328 32 килобайта.

avrlab.com

USB программатор микроконтроллеров AVR и AT89S, совместимый с AVR910MEGA-AVR

В статье приводится  USB программатор микроконтроллеров AVR и AT89S, совместимый с AVR910 — с журнала Радио №7, 2008г.

Это устройство поддерживает пословную и постраничную запись, используемую при программировании МК семейства AVR, и побайтную запись для МК AT89S53 и AT89S8252 семейства AT89S. Таким образом, с помощью программатора можно программировать все ныне существующие МК семейства AVR и МК AT89S53 и AT89S8252 семейства AT89S при поддержке этих МК со стороны управляющего программного обеспечения, установленного в компьютере. Программатор выполнен на основе драйвера от Objective Development и полностью совместим по командам с оригинальным программатором AVR910 от ATMEL. Рекомендую повторять его точно по схеме, показанной на рисунке. Удаление «лишних», на первый взгляд, деталей может привести либо к неправильному функционированию программатора, либо к выходу из строя порта USB компьютера.

Разъем Х1 соединяют стандартным кабелем с одним из имеющихся в компьютере гнезд порта USB. Плавкая вставка FU1 служит для защиты линий питания этого порта от случайного замыкания по цепям программатора. Диоды VD1 и VD2 — обычные выпрямительные с прямым падением напряжения 0,6…0,7 В — предназначены для понижения питания микроконтроллера DD1 до 3,6 В. Согласно документации, он может работать при таком напряжении питания с тактовой частотой вплоть до 14 МГц или немногим более. Разъем Х2 соединяют с разъемом ISP программируемого устройства или с панелью программируемой микросхемы, напряжение питания на которую необходимо подать отдельно. На контакт 3 разъема Х2 выведены прямоугольные импульсы с частотой 1 МГц для «оживления» МК, у которого были ошибочно запрограммированы разряды конфигурации (fuses), отвечающие за тактирование. Этот сигнал генерируется постоянно и не зависит от режима работы программатора. Светодиоды HL1 и HL2 сигнализируют о текущих действиях программатора — соответственно о чтении информации из памяти программируемого микроконтроллера и о записи в нее. Светодиод HL3 включен, когда на программатор подано питание. Резисторы R11- R15 предназначены для согласования уровней сигналов МК DD1 с действующими во внешних цепях. Перемычку S1 при начальном программировании МК DD1 устанавливают в положение «Мод.» (противоположное ее положению на схеме). Подключив к разъему Х2 внешний программатор, выполняют загрузку управляющей программы в МК. После этого перемычку следует вернуть в показанное на схеме положение «Норм.». Для нормальной работы загруженной программы необходимо, чтобы в МК DD1 были запрограммированы (установлены в 0) разряды конфигурации SPIEN, CKOPT, SUT0 и BODEN, а остальные оставлены установленными в 1. Обычно в МК АТmega8, полученных непосредственно от изготовителя, разряд SPIEN уже запрограммирован. Установив перемычку S2, возможно понизить тактовую частоту интерфейса SPI МК DD1 приблизительно до 20 кГц. Это необходимо для программирования МК семейства AVR, тактируемых от внутреннего генератора частотой 128 кГц. При отсутствующей перемычке S2 интерфейс SPI работает с частотой около 187,5 кГц. Это позволяет программировать МК с минимальной тактовой частотой 570 кГц (семейств ATtiny и ATmega), 750 кГц (семейства AT90S) и 7,5 МГц (семейства AT89S). Снимать и устанавливать перемычку S2 можно «на ходу», потому что при каждом обращении к интерфейсу SPI программа МК DD1 проверяет ее наличие. Не рекомендуется этого делать лишь при запущенном процессе записи/чтения программируемого МК, что может привести к искажению записываемой или читаемой информации. Программирование МК при использовании утилиты AVRProg v.1.4 из пакета AVR Studio занимает вместе с верификацией 10…30 с в зависимости от объема памяти и тактовой частоты. Программатор был успешно протестирован и с программами ChipBlasterAVR v.1.07 Evaluation, CodeVisionAVR, AVROSP. Были запрограммированы МК AT89S53, AT89S8252, AT90S2313, AT90S8515, ATtiny13, ATtiny26, ATtiny45, ATtiny2313, ATmega48, ATmega8, ATmega8515, ATmega8535, ATmega16, ATmega32, ATmega64, ATmega128, AT90CAN128. Программа AVRDUDE оказалась с данным программатором несовместимой, она не все команды протокола AVR910 отрабатывает корректно. При первом подключении изготовленного программатора с правильно запрограммированным МК DD1 к компьютеру операционная система найдет новое устройство — AVR910 USB Programmer. Необходимо заметить, что этого не произойдет, если номинальная частота резонатора ZQ1 в программаторе отличается от 12 МГц. Это связано с особенностями работы USB и программы МК DD1.

mega-avr.com.ua

USB программатор микроконтроллеров AVR / 89S совместимый с AVR910 CAVR.ru


Рассказать в:

Программатор выполнен на основе драйвера от
Objective Development
и полностью совместим по командам с оригинальным программатором AVR910 от ATMEL.
Описание оригинальной схемы программатора можно взять в Application
Note AVR910: In-System Programming, а список поддерживаемых команд можно
посмотреть в Application Note AVR109: Self Programming

Конструкция:
 Схема программатора приведена на рисунке ниже. Предохранитель F1 служит
для защиты линий питания порта USB от случайного замыкания по цепям питания
программатора. Диоды VD1, VD2 – обычные выпрямительные, с прямым падением
напряжения ~0,6…0,7В, предназначены для понижения питания микроконтроллера DD1
до 3,6 В. Согласно документации ATMEL на ATmega8(L), микроконтроллер может
работать при таком напряжении питания до частоты немногим выше 14 МГц.
Светодиоды VL1(“RD”), VL2(“WR”) сигнализируют о текущих действиях программатора,
и, соответственно, обозначают режимы чтения и записи. Светодиод VL3(“PWR”)
предназначен для сигнализации подачи питания на программатор.


Джампер J1 – (MODify) служит для начального программирования управляющего МК
программатора. При его замыкании, к разъему ISP подключается внешний
программатор и производится загрузка в МК управляющей программы. После
программирования управляющего МК программатора этот джампер необходимо
разомкнуть и замкнуть джампер J2 — NORMal.
С помощью джампера J3 LOW SCK возможно понижать тактовую частоту порта SPI МК
программатора до ~20 кГц. При разомкнутом джампере частота SPI нормальная, при
замкнутом — пониженная. Переключать джампер можно на ходу, так как управляющая
программа МК программатора проверяет состояние линии PB0 при каждом обращении к
порту SPI. Не рекомендуется переключать джампер при запущенном процессе
записи/чтения программируемого МК, т.к., скорее всего, это приведет к искажению
записываемых/читаемых данных. Джампер J3 введен для возможности программирования
МК AVR, тактируемых от внутреннего генератора 128 кГц.
Резисторы R10 — R14 предназначены для согласования уровней сигналов МК
программатора и внешних, подключенных к программатору, цепей (программируемый МК
или другой программатор).
Тактовая частота порта SPI МК программатора при разомкнутом джампере J3 равна
187,5 кГц. Это позволяет программировать контроллеры с тактовой частотой
примерно от 570 кГц для ATtiny/ATmega, 750 кГц для 90S и 7,5 МГц для 89S.
Контроллеры программируются от 10 до 30 секунд (при использовании утилиты
AVRProg v.1.4 из пакета AVR Studio) вместе с верификацией в зависимости от
объема FLASH памяти и тактовой частоты.
На вывод LED разъема ISP выведен меандр с частотой 1 МГц для «оживления» МК, у
которых были ошибочно запрограммированы фьюз-биты, отвечающие за тактирование.
Сигнал генерируется постоянно и не зависит от режима работы программатора.
Программатор тестировался с программами AVRProg v.1.4 (входит в
пакет
AVRStudio), AVROSP (ATMEL AVR Open Source
Programmer), CodeVisionAVR,
AVROSP (ATMEL AVR Open Source Programmer). Кроме того, программатор тестировался
с программой AVRDUDE, однако, программа с данным программатором не совместима,
так как не все команды протокола AVR910 отрабатывает корректно.
На данный момент с вышеперечисленными программами протестировано
программирование контроллеров: 89S53, 89S8252,
90S2313, 90S8515, ATtiny13, ATtiny26, ATtiny45, ATtiny2313, ATmega48, ATmega8,
ATmega8515, ATmega8535, ATmega16, ATmega32, ATmega64, ATmega128, AT90CAN128.

Я рекомендую повторять схему один-в-один, так как выкидывание «лишних» деталей
из схемы может привести либо к неправильному функционированию программатора,
либо к возможному выходу из строя USB порта на РС, за что, естественно, я ни
какой ответственности не несу.

Детали
Управляющий МК без переделки схемы можно заменить на ATmega8-16PU (Корпус
PDIP-28). Можно так же использовать МК ATmega8-16 c другими буквенными индексами
(корпуса TQFP или MLF). Но, следует помнить, что нумерация выводов у МК в
корпусах TQFP и MLF отличается от нумерации выводов МК в корпусе PDIP-28.
Диоды VD1 и VD2 – любые выпрямительные малогабаритные с прямым падением
напряжения ~0,6…0,7В.
Светодиоды типа АЛ307БМ.
Конденсатор С5 – электролитический, с номинальным напряжением не менее 10 вольт.
Остальные конденсаторы – обычные малогабаритные керамические.
Резисторы – МЛТ-0,125.
Разъем USB – типа USBB-1J (Разъем USB(м) на плату. Тип В).
Разъем ISP – типа BH-10 (Двурядный разъем IDC-Вилка 2х5 на плату.

Прошивка FUSE BITS

Для нормального функционирования контроллера в схеме необходимо, чтобы были
запрограммированы (установлены в «0») биты SPIEN, CKOPT, SUT0 и BODEN. Обычно
микроконтроллеры , идущие с завода, т.е. новые, имеют уже запрограммированный
бит SPIEN. Остальные биты должны быть незапрограммированные (установлены в «1»).

Инсталляция

Прошить контроллер. Подключить свежеиспеченный программатор к РС через свободный
разъем USB. Операционная система найдет новое устройство – AVR910 USB Programmer,
при предложении автоматически найти драйвер, отказаться, и указать путь к
inf-файлу, в зависимости от установленной на вашем компьютере операционной
системы.
В архиве с прошивкой имеется папка «AVR910.Driver» в которой расположены три
директории для разных вариантов операционных систем:
2k_xp_32» — для операционных систем Windows 2000/XP 32-bit (используется
штатный драйвер usbser.sys)
vista_xp_32» — Для операционных систем Windows XP/Vista/Seven
32-bit
(usbser.sys +
lowbulk.sys[32-bit] от Osamu Tamura)
vista_xp_64» — Для операционных систем Windows XP/Vista/Seven
64-bit
(usbser.sys +
lowbulk.sys[64-bit] от Osamu Tamura)

Особенности установки:

Windows 2000
В принципе, инсталляция не отличается от подобной для Windows XP, но есть одно
НО — задержки в драйвере usbser.sys данной ОС портят цепочку команд от ПО на РС
до программатора и, соответственно, цепь ответов обратно от программатора до ПО
на РС… Проблему я пока не установил, но есть решение. Конечно не самое
красивое, но работает надежно 🙂 Необходимо заменить файл usbser.sys в
системных папках Windows 2000 на аналогичный от Windows XP. Это папки …\winnt\system32\drivers\
и …\winnt\system32\dllcashe\. Естественно, что
драйвер придется подменять загрузившись под другой ОС (например с загрузочного
диска).

Windows XP/Vista/Seven 64 bit
Windows Vista 64-bit не принимает драйверы привилегированного режима без
цифровой подписи. Чтобы использовать данный драйвер на 64 битной платформе, Вы
должны отключить проверку цифровых подписей драйверов, нажимая функциональную
клавишу F8 во время начала загрузки системы.
Второй вариант, использование программы «Driver
Signature Enforcement Overrider», которая подписывает драйвер как «testdriver»
и активизирует «testmode», таким образом Вы можете загрузить драйвер без
реальной цифровой подписи. Вы можете найти более детальное описание на странице
программы, пройдя по ссылке выше.

 Установка:
1. Загрузить «»Driver Signature Enforcement Overrider»;
2. Запустите DSEO (инсталляция не требуется).
3. Выберите «Sign a System File», нажмите кнопку «Next» и выберете файл
avr910.usb.vista.xp.64.inf из директории AVR910.Driver/vista_xp_64.
4. Выберите «Sign a System File» еще раз, нажмите кнопку «Next» и выберете файл
lowbulk.sys из директории AVR910.Driver/vista_xp_64.
5. Выберите «Enable Testmode» и нажмите кнопку «Next».
6. Перезапустите свой компьютер.

Оригинальные драйвера для AVR CDC от Osamu Tamura можно взять
здесь.

Настройка

Как правило, правильно собранный, программатор с правильно
запрограммированным МК в настройке не нуждается. Есть единственное замечание –
если у программируемого МК вход RESET подтянут к напряжению питания резистором,
то номинал резистора не должен быть ниже 10 кОм – это связанно с пониженным
напряжением питания управляющего МК программатора и введением ограничительных
резисторов на шине ISP-разъема.

Если возникли проблемы

  • Проверить схему на отсутствие ошибок, обрывов и коротких замыканий.
  • Проверить напряжение питания на выводах питания (7, 8) МК программатора – оно должны быть в пределах 3,5 – 3,8 вольт.
  • Проверить, запустился ли кварцевый генератор МК. Это можно сделать с помощью осциллографа,
    подключив его к выводу 10 МК. Если нет осциллографа, то можно определить запуск генератора и с
    помощью обычного светодиода. Для этого к выводу 10 МК через токоограничительный резистор номиналом 330 – 510 Ом
    подключается светодиод, анодом к МК, катодом на землю. При подаче питания светодиод должен слабо светиться.
    Следует заметить, что программатор не будет определяться ни одной ОС, если номинальная частота кварца отличается от 12 МГц.
    Это связанно с особенностями работы USB – тактовая частота передачи данных по USB для Low Speed Device равна 1, 5 МГц – тактовая частота
    управляющего МК программатора должна быть ровно в 8 раз выше.
  • Проверить, запустилось ли внутренняя программа в МК программатора. На контакте LED ISP-разъема должен присутствовать меандр частотой
    1 МГц. Наличие меандра так же можно проконтролировать с помощью осциллографа. Если нет осциллографа, можно произвести проверку при помощи
    светодиода. Светодиод подключается анодом к контакту LED, катодом к любому контакту GND ISP-разъема. При подаче питания светодиод должен
    светится в «полнакала». При замыкании пинцетом ножек кварцевого генератора светодиод должен либо засветится в «полный накал», либо свечение
    должно отсутствовать.

Файлы:
Все архивы содержат файл прошивки, установочный inf-файл и схему в формате Adobe
pdf. Кроме этого старые версии содержат описание в виде старой html страницы.

avr910 usb programmer ver.1.04 Версия от
16.12.2006. Добавлено подключение внутреннего pull-up резистора ко входу MISO МК
программатора во время программирования таргета. Возможно, будет полезно при
чтении плат с пониженным напряжением питания, да и вообще, думаю, положительно
скажется на надежности чтения программируемого МК…

avr910 usb programmer ver.1.05 Версия от 17.01.2007. Добавлен джампер
J3 LOW SCK для понижения тактовой частоты порта SPI программатора.
В настоящий
момент самая свежая версия прошивки.

avr910 usb programmer source.v.1.05 Исходники версии 1.05 Заточенно и
обкатанно на IAR v.4.10B

Автор проекта Рыжков Андрей aka PROTTOSS. Новокузнецк.



Раздел:
[Программаторы микроконтроллеров]

Сохрани статью в:

Оставь свой комментарий или вопрос:



www.cavr.ru