С какой программой работает avr910


Программатор для AVR usb. (AVR910)

Для программирования микроконтроллеров 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.htm). Питается программатор от USB порта. Для того чтобы не требовалось согласование с уровнями линий данных USB порта (3.6В) питание микроконтроллера составляет 3.6В. Для получения из 5В в USB порте 3.6В, используется схема их двух последовательно прямо включённых кремниевых диодов. На каждом диоде падает по 0.7В, а в сумме получается 1.4В. Диоды должны быть кремниевыми, не допускается использование диодов шотки, так как на них падает меньше 0,7В. Выходы разъёма программирования подключены через резисторы на 330 Ом для согласования уровней. Работает устройство на микроконтроллере AtMega8-16 на тактовой частоте 12МГц. На схеме приведены номера выводов для микроконтроллера в DIP корпусе, хотя я отраcсировал плату под SMD корпус, который называется TQFP. Программатор имеет индикацию записи, чтения, наличия питания. Также данный программатор имеет выход, на котором всегда присутствует меандр, частотой 1 МГц. Это очень классная и полезная штука для восстановления микроконтроллеров, у которых из-за ошибочно запрограммированных Fuse битов тактирование сконфигурировано от внешнего источника тактовых импульсов. Я таким образом уже несколько раз восстанавливал микроконтроллеры. Нужно всего лишь посмотреть в даташите на конкретный микропроцессор AVR, к какому выводу подключается внешний источник тактового сигнала, и подпаять к данному выводу источник меандра. Подключить программатор, и перепрограммировать fuse. Всё очень просто, но иногда здорово выручает! Имеющиеся варианты реализации печатных плат под программатор AVR910 не совсем меня устраивали, и я выполнил трассировку своего варианта (скачать файлы проекта можно в конце статьи).

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

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

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

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

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

Программирование AVR.

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

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

Заливаю прошивку в микроконтроллер я при помощи программы AvrOsp2. Она очень простая, не требует установки, бесплатна, поддерживает программатор AVR910 и огромное кол-во микроконтроллеров АВР, хорошо работает и имеет очень удобное меню для работы с FUSE битами. В общем, классная программка, мне она очень нравится, рекомендую! В видео ниже я показал процесс установки драйверов для AVR910, как настроить и пользоваться программой AvrOsp2.

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

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

Скачать файлы проекта можно по ссылке — Programmator-dlja-AVR-usb.(AVR910)

UPDATE: Слава Корнев прислал модифицированную версию печатной платы. Модификация заключается в смене разъёма на ISP10. Скачать можно здесь: Программатор-AVR910-с-ISP-коннектором

www.elenblog.ru

Программирование в USB программаторе AVR-910

Запись от russ2356 размещена 14.07.2012 в 13:05 Обновил(-а) russ2356 14.07.2012 в 18:46

Метки

Я собрал себе USB программатор AVR910, просто захотел выложить, потому что некоторые моменты не сразу понятны и чтобы у желающих его собрать было больше информации в плане прошивки. Повторюсь, и приведу тут схему данного программатора. Единственный недостаток этого программатора — для прошивки контроллера программатора нужен программатор. Для этого нужен компьютер с COM портом, чтоб прошить контроллер при помощи программатора Громова. Джампер J1-J2служит как для начального программирования микроконтроллера (замкнут J1 — MOD), так и для использования в качестве разъема программатора (замкнут J2 — NORM) Была разведена печатная плата.

Подключил собранный программатор к программатору Громова, поставил джампер J1, воткнул программатор Громова в COM порт, запустил Uniprof и прошил. Сложного ничего вроде нет, просто не забываем записать фьюзы. После система определит новое устройство — AVR910 USB Programmer, при предложении автоматически найти драйвер, отказаться, и указать путь к файлу avr910.usb.inf Система начнет устанавливать драйвер. Программатор установлен в системе. Теперь настроим его для работы в программе прошивальщике. Рассмотрим настройку данного программатора в программном пакете CodeVisionAVR. Теперь самое главное. Щелкаем левой кнопкой на значке „Мой компьютер“, в выпадающем меню выбираем „Свойства“ переходим на вкладку „Оборудование“ запускаем „Диспетчер устройств“ Выбираем „Порты (COM и LPT)“. Видим там „Virtual Communications Port“ и в скобочках указан номер присвоенного порта, в моем случае это COM5. Запоминаем этот номер. Теперь запускаем CodeVision AVR. В основном меню нажимаем кнопку „Setting“, в выпадающем меню нажимаем „Programmer“:

Появится вот такое окошко:

В самой первой строчке из списка выбираем наш AVR910, во второй строчке выставляем номер Com порта, который смотрели в диспетчере оборудования. Остальное оставляем без изменений. Все, программатор настроен. Теперь немного о том как прошить контроллер в CodeVision AVR. Итак, в основном меню выбираем „Tools“, далее нажимаем „Chip Programmer“,

появится вот такое окошко:

Рассмотрим, что тут есть и как это работает. Программатор уже должен быть подключен к Usb, а к программатору подключен контроллер, в моем случае это будет Atmega 8. В списке Chip выбираем наш контроллер, теперь нажимаем в меню сверху Read.

В этом меню мы можем запустить чтение содержимого контроллера. Пока, что нас интересуют два пункта, это FLASH и Fuse Bit(s). Если нажать на FLASH, то начнется чтение содержимого FLASH памяти контроллера, на программаторе будет мигать зеленый светодиод. Итак, FLASH прочитана, а где же глянуть, что же там прочиталось. А вот где. Нажимаем в главном меню Edit, а выпавшем списке FLASH.

Появится вот такое окно:

Вот, собственно, все содержимое FLASH памяти контроллера, тут можно и отредактировать, если нужно определенные блоки. Но, пока тут все чисто, во всех ячейка — FFFF. Если нужно прочитать Fuse Bit(s), то делаем следующее — Read — Fuse Bit(s). Пройдет чтение и вот в таком окошке появятся заводские фьюзы контроллера (если он новый):

С этим думаю, понятно. А как же здесь загрузить прошивку в контроллер. Тоже просто! Сперва нужно указать сам файл прошивки, которым будем загружать в контроллер. Делается это так. выбираем в меню File, далее выбираем Load FLASH.

Жмем Load FLASH и в появившемся окне выбираем файл прошивки. Нажимаем Открыть. Теперь заходим в меню Program.

Если в контроллере были какие-то данные, то сперва стираем его, нажав на Erase Chip, если контроллер новый, то стирать не надо. Теперь нажимаем на FLASH. Программа спросит, действительно ли хотите запрограммировать, на что ответьте ОК. Пойдет процесс прошивки. Когда он закончился, то теперь нужно запрограммировать фьюз биты. Сперва необходимые фьюз биты выставляем в том же окошке

Запомните, если в квадратике, напротив названия фьюз бита стоит галочка, то фьюз бит не запрограммирован, если не стоит, то запрограммирован.

Когда выставили необходимые фьюз биты, то в пункте меню Program нажимаем Fuse Bit(s). Вот теперь все. Можно еще раз прочитать содержимое FLASH и удостовериться, что все за программировалось.

Миниатюры    

www.tehnari.ru

Программатор AVR910: перезагрузка! Ускорение работы + «превращение» в STK500

Сегодня ночью я не лег спать. Включил фоном какую-то киношку с Джеки Чаном и быстренько спаял второй USB-программатор AVR-ок из датагорского кита Project-5 D-AVR910.

Теперь у меня на столе лежит два одинаковых программатора. А всё для того, чтобы попробовать новую прошивку. Эти близняшки буду шить друг друга. Все опыты проводятся под MS Windows XP SP3.

Цель — увеличение скорости работы и расширение совместимости программатора.

Содержание / Contents

Михаил (dust112) оставил интересную ссылочку в теме техподдержки нашего кита. Проследовав по ней я нашел тему об альтернативных прошивках для AVR910, над созданием которых потрудился уважаемый Inc. Ему удалось без потерь портировать на AVR910 программу от другого известного проекта AVR-Doper.

С новой прошивкой при подключении программатора появляется COM-порт, перемычка 'low sck' так же работает для понижения частоты, красный светодиод мигает при записи/стирании чипа, зеленый горит при «подключении к девайсу», на выходе «LED» генерируется 1 МГц.

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

Так вот! Уважаемый Inc, автор новых прошивок, обещал прирост производительности.

Далее опишу, что у меня получилось.

Зашил я программатор новым хексом с фьюзами, как в оригинале (установлены в «0» биты SPIEN, CKOPT, SUT0 и BODEN), подключил его в порт USB, программатор нашелся в системе и захотел поставить драйвера от Протосса. Я это безобразие отменил и установил новый драйвер, указав на inf из нового комплекта (см. Файлы внизу).

После этого в системе появился новый Communications Port, севший на COM4. Номер COM важно знать, что бы указать его далее в программах — прошивальщиках.

Далее, открываем CodeVisionAVR и настраиваем соединение с нашим обновленным программатором:

Settings > ProgrammerПрограмматор AVR910: перезагрузка! Ускорение работы + «превращение» в STK500Вы поняли в чем фикус-пикус? Легким движением руки брюки превращаются… и силой мысли уважаемого Inc мы превратили наш USB-шный AVR910 в STK500. Именно так он отныне будет определяться софтом. Не дурно, правда? smile

Да, ребяты… Я получил такой ошеломительный прирост скорости, что прежнее значение даже скоростью стыдно называть!

Для чистоты эксперимента шьём одинаковый чип Atmega8-16, одинаковым хексом 13,3 КБ (13 647 байт), в одной и тойже софтине с одинаковыми настройками: проверяем сигнатуру чипа (Check Signature), проверяем Flash на чистоту-пустоту (Check Erasure), пишем Flash, пришем EEPROM, все делаем с проверкой (Verify) — т.е. максимально загружаем программатор работой и «тянем время».

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

Программатор с альтернативной прошивкой STK500 проделывает всё это за 30 секунд. М-да, не почаевничаешь! crazy

AVR910 конечно спасает программа AVRprog от ATMEL, с ней он тоже шьёт быстро, но сама прога давно не обновляется и многие новые чипы AVRprog не знает.

Смотрите картинку. Да, да! Перешитый программатор может работать с AVR Studio 5.0. На предложение обновить Firmware следует отказаться. Всё-таки у нас не настоящий STK500.Проверить работу на железе было уже некогда и не начем. Но в Сети народ пишет, что всё ОК.Итого: скорость и совместимость выше, да еще и светодиоды стали работать «по человечески», более четко и ярко. В оригинальной прошивке Протосс сделал попытку яркостью отражать скорость работы, но на деле это оказалась не такая уж хорошая идея. Кто пользовался — понимает.

По моему скромному мнению, нужно перешиваться!!! Любым способом, хоть пятью проводками, если нет другого программатора. Оно того стоит.

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

Кто пожелает пройти моими тропами и получит новые данные по совместимости с чипами — милости прошу в комменты.

Использованные мной файлы см. в архивах.

Прошивка. Это порт c AVR-Doper для AVR910 от Inc. Стандартная CDC (эмуляция COM-порта), без отладочного интерфейса.

▼ avr910-cdc-no_debug.7z 🕗 11/11/11 ⚖️ 4,62 Kb ⇣ 566

Драйвер у меня есть только под Винду Windows 2000/XP/Vista.

▼ win-driver.7z 🕗 11/11/11 ⚖️ 931 b ⇣ 517

Вариант драйверов от Osamu Tamura, Recursion Co под Windows 2000/XP/Vista/7 (прислал dimamukhin 11.23.2011)

▼ avrcdc_inf.zip 🕗 23/11/11 ⚖️ 39,51 Kb ⇣ 552

Выражаю благодарность Prottoss, HSL, Inc, dust112. Спасибо вам, друзья!Всем здоровья и счастья!

Игорь Котов (Datagor)

Россия, Сибирь, г.Новокузнецк

Основатель, владелец и главный редактор Журнала практической электроники datagor.ru.Founder, owner and chief editor of datagor.ru.

datagor.ru

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

При переходе  с 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) — 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 / 89S совместимый с AVR910

    Схема программатора приведена на рисунке ниже. Предохранитель 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), ChipBlasterAVR v.1.07 Evaluation, 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 на плату.

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

Windows 2000/XP/Vista/Seven 32-bit

    Прошить контроллер. Подключить свежеиспеченный программатор к РС через свободный разъем 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\. Файл usbser.sys от Windows XP SP1 можно взять здесь. Естественно, что драйвер придется подменять загрузившись под другой ОС (например с загрузочного диска).

Windows XP/Vista/Seven 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.files.ver.1.04.rar Версия от 16.12.2006. Добавлено подключение внутреннего pull-up резистора ко входу MISO МК программатора во время программирования таргета. Возможно, будет полезно при чтении плат с пониженным напряжением питания, да и вообще, думаю, положительно скажется на надежности чтения программируемого МК… Обновлен драйвер для Windows XP/Vista 32/64-bit.

  1.     avr910_usb_programmer.files.ver.1.05.rar Версия от 17.01.2007. Добавлен джампер J3 LOW SCK для понижения тактовой частоты порта SPI программатора. Обновлен драйвер для Windows XP/Vista 32/64-bit. В настоящий момент самая свежая версия прошивки

    avr910_usb_programmer_source.v.1.05.rar Исходники версии 1.05. Заточено и обкатано на IAR v.4.10B

печатная плата  скачать

три варианта печаток, два с них смд  скачать

elektro-shemi.ru


Смотрите также