Usbasp ошибка при программировании

X-Fear

Стажер

    • Поделиться

Здравствуйте, на днях купил usbasp и atmega8-16pu, подключил через макетную плату, использовал внешнее питание 5В. Программатор, по словам продавца, уже прошит самой новой версией. Драйвера поставил. Вроде встали нормально. При попытке прошить avrdude выдает ошибку. 

Cформированная командная строка:
avrdude.exe -p m8 -c usbasp -P usb -U calibration:r:calibration.hex:r

avrdude.exe: error: programm enable: target doesn’t answer. 1 
avrdude.exe: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

avrdude.exe done. Thank you.

4z7b2n64k.jpg

  • Цитата

Ссылка на комментарий
Поделиться на другие сайты

солар

Профи

    • Поделиться

3 часа назад, X-Fear сказал:

Double check connections

Проверьте в десятый раз подключение.

Внешнее питание отключите, т.к. мк запитывается от usbasp.

  • Цитата

Я не раздаю удочки. Я продаю рыбу.

Ссылка на комментарий
Поделиться на другие сайты

X-Fear

Стажер

  • Автор
    • Поделиться

пробовал, и внешнее, и от программатора, и 3,3В, и 5В. Одинаково

  • Цитата

Ссылка на комментарий
Поделиться на другие сайты

Вебинар «Мощные модульные системы питания MEAN WELL 3+N. Новинки и хиты» (22.06.2023)

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

На вебинаре мы рассмотрим новинки и серийную продукцию в концепции «3+N», расскажем об этой концепции и о том, как создать из готовых модулей систему питания мощностью до 360 кВт с напряжением до 380…400 В (постоянного тока). Будут представлены ИП с рециркуляцией энергии для тестового оборудования и модули управления питанием. Подробнее>>

Alexeyslav

Ветеран

    • Поделиться

Уменьши скорость программирования. Перемычка JP3 на USBASP…

  • Цитата

Учение — изучение правил. Опыт — изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

Геннадий

Мастер

    • Поделиться
Ссылка на комментарий
Поделиться на другие сайты

X-Fear

Стажер

  • Автор
    • Поделиться

Перемычка не помогла, атмега8 новая, из магазина

  • Цитата

Ссылка на комментарий
Поделиться на другие сайты

Alexeyslav

Ветеран

    • Поделиться

Проверь подключение ещё раз, особенно нумерацию контактов на разъёме(не отразил ли случайно?). Убедись что питание поступает на контроллер… да, и подключи на всякий случай AGND и AVCC тоже.

Проверь осциллографом или ещё чем есть ли импульсы на SCK программатора в момент попытки прошивки.

  • Цитата

Учение — изучение правил. Опыт — изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

X-Fear

Стажер

  • Автор
    • Поделиться

Заметил одну особенность: когда подключаю МК с питанием от usbasp,  красный индикатор загорается и сразу же затухает, и комп не видит программатора. При отключение земли(10 ножки, именно 10, остальные GND нормально работают) индикатор опять загорается, подключал землю и к 22 ножке (там тоже земля МК). Может это из-за того, что я по-дурости подключал контакты при включеном внешним питанием? Просто слышал, что надо всегда сначало землю подключать, а потом VCC, а я наооборот.

  • Цитата

Ссылка на комментарий
Поделиться на другие сайты

COKPOWEHEU

Профи

    • Поделиться

7 минут назад, X-Fear сказал:

При отключение земли(10 ножки, именно 10, остальные GND нормально работают)

Проверьте что в самом usbasp’e на 10 ноге висит.

  • Цитата

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

X-Fear

Стажер

  • Автор
    • Поделиться

16 минут назад, COKPOWEHEU сказал:

Проверьте что в самом usbasp’e на 10 ноге висит.

эмм, на 10 ножке висит gnd. На программаторе 10 ножка не подключена к дорожкам, просто запаяна за корпус, то есть как я поеимаю корпус это и есть земля

  • Цитата

Ссылка на комментарий
Поделиться на другие сайты

Alexeyslav

Ветеран

    • Поделиться

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

  • Цитата

Учение — изучение правил. Опыт — изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

nvju1967

Специалист

    • Поделиться

Ножки 4, 6, 8, 10 — GND. Питание использовать от программатора. Можно подключить кварц 1-10 МГц. И прежде чем прошивать, нужно хотя бы прочитать.

  • Цитата

Ссылка на комментарий
Поделиться на другие сайты

Alexeyslav

Ветеран

    • Поделиться

А вот нифига. По стандарту Атмела 4, 6, 8, 10 это общий провод, но вот в жизни сплошные отклонения от стандартов… чего там только не встречается. В новых USBASP 4 и 6 выводы это RX/TX отладочного интерфейса, его конечно можно заземлить он допускает КЗ но если вывод использовать как общий то будет большой сюрприз. При том что функция недокументированная… типа на будущее, и как ей пользоваться Х.З.

  • Цитата

Учение — изучение правил. Опыт — изучение исключений.

Ссылка на комментарий
Поделиться на другие сайты

X-Fear

Стажер

  • Автор
    • Поделиться

Да, действительно. Я перепутал распиновку, счёт начал не с того контакта. Но ошибка та же.

Мультиметром проверил: 5В на выход через шлейф


Изменено 12 февраля, 2017 пользователем X-Fear

  • Цитата

Ссылка на комментарий
Поделиться на другие сайты

X-Fear

Стажер

  • Автор
    • Поделиться

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

  • Цитата

Ссылка на комментарий
Поделиться на другие сайты

Не работает программатор

Данная статья написана для тех, кто только начинает учиться программировать микроконтроллеры.
Гуру микроконтроллинга здесь делать нечего, а вот новичкам, столкнувшихся с проблемами китайского производства. Или нелепой фасовкой готовых программаторов или людей делающих первый шаг в радиоэлектронику эта статья может быть весьма-весьма полезной. Я так же опишу методы поиска неисправностей, с которыми столкнулся сам. Не у всех людей есть выдержка, тем более Интернет для этого и создан, что бы делиться опытом, не так ли?
Не работает программатор AVR — тысячи запросов в Яндексе и Гугл. Не работает USB asp — еще больше. Сотни сайтов, на которые попадаешь и везде читаешь одно и тоже, как кто то собирает очередной программатор, но ни кто, повторюсь НИ КТО не пишет, почему не работает именно твой личный девайс.

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

Покупка и внешний вид

Посещая радио-рынок в нашем городе наткнулся я на конструктор Радио-Кит — аналог известного Радио-Кот. Поторговавшись с любезной мадам, выкупил сие чудо за 65 украинских тугриков — 8.2 долл. Вот фото.
набор конструктор usb avr программатора

Дальше предстояло все это собрать и спаять — благо это дело я люблю, и на пайку ушло полчаса — час.

Итак. Мы собрали все, что было в пакете, спаяли по инструкции — у нас получился USBasp программатор. Подключаем его к компьютеру и о боже — Неизвестное устройство. Поиск «программатор USBasp неизвестное устройство» и получаем сотни обсуждений на форуме, где такие же, как и я обманутые или молодые и неопытные юзеры, желающие начать программировать микроконтроллеры — попадают в засаду. Ужас. Еще раз проверяем все ли правильно спаяно и не спаяли ли мы вместе две ножки AtMega8 контроллера? Нет? Правильно ли припаяли все микросхемы? Мы не будем останавливаться на этой ерунде, ведь если да — то вам стоит скачать энциклопедию юного радиолюбителя и читать. Как делал я в свое время. Но мой программатор был спаян идеально. Мультиметром я прозвонил каждую дорожку и проблем не обнаружил! И начал искать в Интернете ответ. Тем более что я не новичок в этом деле. В 2005 году я впервые столкнулся с программированием PIC контроллеров для спутниковых карт. Даже откопал древний программатор UNIPROG 2003. Вот фотки — раритет. Работал как часы. Я еще школьником был, а столько карт перешил.
Достаешь контроллер с карты, вставляешь его в специальную карту с мостиком, вставляешь карту в программатор, и PonyProg творит чудеса на 700м целероне. Вставляешь обратно карту в тюнер — каналы раскодированные. Чудо техники было на то время. Вот фото.
uniprog 2003 раритет
программирует старые AVR и PIC контроллеры

Решение проблемы

Дело в том, что в инструкции и на всех сайтах, где рекламируют этот программатор — советуют не ставить джампер — перемычку JP3 — в моей инструкции написано: «Перемычка ставиться в случае перепрошивки внутреннего контроллера ATMega8» Я и так долгое время грешил на то, что контроллер не прошит. И продавец просто всунул в пакет чистый чип. Но через пару часов, когда начал искать в плате пробел или обрыв — заметил маленькие полосочки и четыре дырки, соединяющие 20ю и 4ю ножку Меги8.
Выход SCK и 19ю ножку Меги8.
Почему так, вы скоро поймете. Вот скриншоты с обведенными в кружочек местами.
в верхнем кружочке недостающий джампер и перемычка

Как вы заметили на первой и предыдущей картинке — кроме двух перемычек я обвел еще и джампер. В комплекте повторюсь, не было ни джампера ни перемычки. Её пришлось докупать отдельно, цена 5грн за 40 ячеек. Джампер был в старой материнской плате. Повторюсь в инструкции и схеме — он НЕ НУЖЕН. Но разобравшись со схемой понимаешь что программируемый чип не получает питание +5V. Очень небрежная ошибка производителей. Припаяйте перемычку и замкните джампер.
Обратная сторона платы
Внимательно изучите основную работу чипа. Основные ножки:
1 ножка — RESET
17я — MOSI
18z — MISO
19 — SCK
20 — AVCC ( в инструкции к программатору именовалась как VTG)
RESET — МИНУС а VCC — ПЛЮС ( исправьте если я не прав)
На одном сайте вычитал, что при программировании чипов питание должно подключаться ко всем ножкам VCC (AVCC)

Как работает программатор

Самый глупый и самый главный вопрос возникший у меня и сотни других новичков в Интернете купивших микроконтроллер скажем ATTINY2313 и программатор — что дальше? И вот на этот вопрос так же мало ответов в сети. Очень мало фотографий реально работающей схемы. Специально для неопытных, только начинающих знакомиться с этим удивительным миром пару фотографий, что еще необходимо для прошивки чипа:
image
Как вы видите на фотографии нам необходимо следующее:
-Кабель, соединяющий USBasp программатор с самим контроллером(на фото он на плате с кварцевым генератором( в чипе уже есть свой генератор)
Плата собрана по статье с сайта Простая отладочная плата для устройств AVR ATTiny2313 с кварцем
Отладочная плата с кварцем
Пример отладочной платы

-Как вы поняли, что бы выходы из программатора MOSI, MISO, USCK, VCC(VTG) и RESET подключались к выходам на настроечной плате, где установлен программируемый чип. На многих ATMEL’овских контроллерах 1я ножка RESET напротив — 4 ножки подряд ( сверху вниз с 20й по 17ю) идут VCC, SCK, MISO, MOSI. То есть в ATTINY2313 — 20ножка VCC, 19 — USCK, 18-MISO, 17-MOSI.
Соедините выход на программаторе и плату с установленным чипом соответственно.
Если вы хотите узнать расположение и распиновку чипа — вы можете скачать ДАТАШИТ любого контроллера с сайта alldatasheet.com Вот даташит на ATTINY2313
В TINY13 и в 2313 и в МЕГЕ8 одинаковая распиновка для программного ISP программирования. Только питание придется менять на плате. Но не для каждого контроллера. Например, TINY13 — так же идеально работает и без кварца на той же плате что я сделал по статье для 2313. MOSI MISO SCK VCC RESET в одинаковых местах. Так что одной платы хватит пока для тестов.

Послесловие

После проделанных манипуляций. Измерения подающего на плату от программатора питания. После того как я разобрался в каждой ножке и допаял третий джампер — наконец-то заработал мой программатор. Он определился компьютером после припайки двух металлических дорожек — как libusb-win32 devices. Но работать не хотел.

Extreme Burner писал «Cannot Comunicate with TargetChip». Я не буду писать, сколько методов я использовал, когда думал что проблема в драйверах — сотню. Даже посоветовали войти в безопасный режим и установить программу по подписыванию драйверов — но он определялся как неизвестное устройство. Вот определился, но не работал. У кого таже проблема вы поняли, да?

И на всех схемах JP3 — ТОЛЬКО для перепрошивки внутреннего чипа. Это так. Но и питание через него необходимо подавать на программируемую плату.

Повторюсь ГУРУ — эта статья для новичков. Если можете дополнить статью, или подправить я буду только рад, так как сам еще новичок. Но очень много людей не могли толком ответить на данную проблему ни в одном из форумов. Даже перечитал все англоязычные форумы.
Даже спаял Программатор Громова. Но деньги та уже потрачены — необходимо довести до ума. Вот им и посвящается данная статья. Спасибо за внимание

avrdude: warning: cannot set sck period, please check for usbasp firmware update

Если при использовании USBasp в логе avrdude у вас появляется сообщение
avrdude: warning: cannot set sck period, please check for usbasp firmware update, но при этом программатор исправно выполняет команды, то, скорее всего, проблема в устаревшей прошивке USBasp. В этой статье я по шагам расскажу, как обновить прошивку USBasp, используя Ардуино в качестве программатора.

1. Подготовка Ардуино

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

ArduinoISP sketch file

2. Подключение USBasp к Ардуино

Микроконтроллеры семейства AVR, а значит и базирующиеся на них платы (как Ардуино, так и USBasp) поддерживают программирование по ISP-технологии с использованием линий связи SPI. Поэтому сейчас нам нужно:

  • соединить выводы Ардуино MOSI, MISO, SCK GND и VCC (5В или 3.3В) с одноименными выводами USBasp;
  • цифровой вывод 10 Ардуино подключить к выводу RESET USBasp;
  • установить электролитический конденсатор на 10мкФ между RESET и GND Ардуино, чтобы предотвратить автоматическую перезагрузку. Хотя возможно будет работать и без конденсатора, зависит от используемой платы Ардуино.

Для подключения можете использовать как ICSP разъем Ардуино, так и цифровые выводы — не принципиально. Я, например, взял MOSI, MISO, SCK, GND и VCC с ICSP разъема:

Обновление прошивки USBasp через Ардуино

На всякий случай приведу таблицу соответствия сигналов MOSI, MISO и SCK цифровым выводам различных плат Ардуино:

Плата Ардуино MOSI MISO SCK
Uno, Duemilanove 11 или ICSP-4 12 или ICSP-1 13 или ICSP-3
Nano 11 или ICSP-4 12 или ICSP-1 13 или ICSP-3
Pro Mini 11 12 13
Mega1280, Mega2560 51 или ICSP-4 50 или ICSP-1 52 или ICSP-3
Leonardo ICSP-4 ICSP-1 ICSP-3 
Due ICSP-4 ICSP-1 ICSP-3 
Zero ICSP-4 ICSP-1 ICSP-3
101 11 или ICSP-4 12 или ICSP-1 13 или ICSP-3

3. Установка джампера JP2 на USBasp

На плате USBasp присутствуют 3 джампера, хотя распаян у вас, скорее всего, будет только JP1 — выбор напряжения питания программируемого микроконтроллера. Для прошивки USBasp (и любых других манипуляций с ним при помощи программатора) необходимо установить джампер JP2. Советую не мучиться с замыканием контактов подручными средствами и впаять пару штырьков, так будет надежней:

4. Скачивание прошивки

Заходим на страничку автора USBasp https://www.fischl.de/usbasp/ и скачиваем последнюю версию прошивки в разделе Download — Firmware and circuit. На момент написания данной статьи актуальной является версия от 28.05.2011. Файлы прошивки находятся внутри архива по пути usbasp.2011-05-28binfirmware, их там три штуки, для каждого типа микроконтроллера (программатор USBasp может быть построен на базе ATmega8, ATmega48 или ATmega88). У меня в USBasp установлен микроконтроллер ATmega8, поэтому я буду использовать файл usbasp.atmega8.2011-05-28.hex.

Прошивать USBasp будем при помощи уже знакомого нам avrdude, входящего в состав IDE Arduino. Файл прошивки нужно поместить в каталог avrdude, чтобы потом не пришлось указывать полный путь к нему. Для этого запускаем Проводник Windows и переходим в каталог Arduino_dirhardwaretoolsavrbin, где Arduino_dir — это путь к IDE Arduino. В моем случае он выглядит так: d:Arduinoarduino-1.6.12hardwaretoolsavrbin, сюда я копирую файл usbasp.atmega8.2011-05-28.hex.

5. Прошивка USBasp

После копирования файла прошивки в каталог avrdude поместите курсор в адресную строку Проводника, удалите из нее путь, введите cmd и нажмите Enter.

Запустится интерпретатор командной строки. В нем нужно ввести команду:

avrdude -C ..etcavrdude.conf -p m8 -c arduino -P com18 -b 19200 -U flash:w:usbasp.atmega8.2011-05-28.hex

Не забудьте проверить и с корректировать ее параметры:

-C ..etcavrdude.conf — путь к конфигурационному файлу (без этого параметра avrdude иногда ругается: can’t open config file «»: Invalid argument)


-p m8 — определяет тип микроконтроллера. Значение m8 сообщает avrdude о том, что мы собираемся работать с ATmega8. Если у вас в USBasp установлен ATmega48 или ATmega88, то замените это значение на m48 или m88 соответственно.

-P com18 — определяет COM порт, присвоенный плате Ардуино. У меня это com18, вам нужно подставить свое значение.


-U flash:w:usbasp.atmega8.2011-05-28.hex — определяет действие, которое мы хотим выполнить. В данном случае мы хотим записать в FLASH память данные из файла usbasp.atmega8.2011-05-28.hex. При необходимости скорректируйте имя файла прошивки в соответствии с типом микроконтроллера в USBasp.

Убедитесь, что команда набрана верно и программатор правильно соединен с Ардуино. После этого подключаем Ардуино к компьютеру и нажимаем Enter в интерпретаторе командной строки. Должен отобразиться прогресс перезаписи содержимого FLASH памяти, а затем сообщение об успешном выполнении команды — avrdude done. Thank you:

Теперь можно отключить USBasp от Ардуино, снять джампер JP2 и проверить работу программатора. Сообщения avrdude: warning: cannot set sck period, please check for usbasp firmware update больше быть не должно.

Загрузка прошивки


В этом уроке мы рассмотрим загрузку прошивки в ардуино через внешние “программаторы”. Давайте вспомним, о чем уже говорили в одном из первых уроков: загрузка прошивки в Arduino возможна двумя способами:

  • “Напрямую” во flash память микроконтроллера при помощи ISP (In System Programming) внутрисистемного программатора.
  • При помощи загрузчика (bootloader), который живёт в конце Flash памяти МК, принимает программный код по протоколу TTL (UART) и записывает его во Flash память.

Загрузчик (bootloader)


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

  • Загрузчик позволяет прошивать МК через UART;
  • Загрузчик замедляет запуск МК, т.к. при каждом запуске ждёт некоторое время для потенциальной загрузки прошивки;
  • Загрузчик занимает место во Flash памяти. Стандартный старый для Arduino NANO занимает около 2 кБ, что весьма существенно!
  • Именно загрузчик мигает светодиодом на 13 пине при включении, как индикация работы.

Программатор


Помимо записи прошивки во flash память, программатор позволяет:

  • Считывать содержимое Flash памяти (скачать прошивку на компьютер)
  • Полностью очищать чип от всех данных и настроек
  • Записывать и читать загрузчик
  • Считывать/записывать EEPROM память
  • Читать и настраивать фьюзы (fuses, fuse-bits) и лок биты.

Программатор – ваш единственный друг при работе с “голым” микроконтроллером, то есть для его низкоуровневой настройки и загрузки прошивки.

USB-TTL (UART)


Этот способ реализован прямо на платах Arduino при помощи USB-TTL (USB-UART) преобразователя, именно поэтому мы можем подключить плату к компьютеру и загрузить код. USB-TTL позволяет только загрузку данных во flash, остальные возможности (как у ISP программатора) ему недоступны. В то же время он ограничен только возможностями загрузчика, но в этом уроке мы рассматриваем только стандартные. Также USB-TTL мост позволяет микроконтроллеру общаться с компьютером по последовательному соединению (тот самый Serial и монитор com порта). Есть платы без бортового USB-TTL, например Arduino Pro Mini. Для работы с ними нужно купить внешний USB-TTL преобразователь. Также загрузка прошивки через UART возможна и в “голый” микроконтроллер при условии наличия там загрузчика, который запишет принятый код во flash. Про запись загрузчика мы поговорим ниже. UART “загружатор” подключается к пинам RX и TX Ардуино (или микроконтроллера), RX->TX и TX->RX, также обязательно подключается земля GND. Если у прошиваемой платы нет своего питания, то подключается и питание. Загрузчик отрабатывает при запуске МК, поэтому непосредственно перед загрузкой прошивки МК должен быть сброшен (перезагружен), и для этого на платах USB-UART есть вывод DTR (Data Terminal Ready), который подключается к пину RST Reset и собственно выполняет сброс перед перед загрузкой прошивки. На платах Pro Mini есть отдельный пин DTR.

USB-TTL Arduino
DTR DTR
RX TX
TX RX
GND GND
VCC/5V/3.3V VCC

blank   Китайцы выпускают USB-TTL модули в широком ассортименте, но в целом они все одинаковые по своей сути. Ссылка на результат поиска на aliexpress, и ссылка на все USB-TTL в моём любимом магазине WAVGAT. Что использую я? В основном платку на CP2102. Перед заказом модуля обязательно убедитесь в том, что у него есть выход DTR, иначе этот модуль можно будет использовать только для “общения” с контроллером через COM порт.   Для работы с таким преобразователем нужно установить драйвер для чипа, на базе которого собран модуль, это может быть CP2102, CH340/341, FT232, PL2303 и другие. Прошивка загружается как обычно: выбираем порт, на котором сидит преобразователь, версию загрузчика и жмём загрузить, всё! Важный момент: на некоторых китайских версиях плат Arduino Pro Mini не распаян пин DTR, т.е. он не идёт на RST и автоматический сброс перед загрузкой прошивки не выполняется. В этом случае сброс нужно производить вручную, кнопкой RST, непосредственно перед загрузкой прошивки… Загрузка прошивки посредством загрузчика (bootloader) возможна с любого UART устройства, даже через Bluetooth. Но об этом мы поговорим в отдельном уроке.

ISP программатор

USBasp


Дешёвые ISP программаторы также есть в ассортименте у китайцев, рекомендую брать USBasp как самый распространенный. Поискать на алиэкспресс, мне нравится версия в корпусе. USBasp имеет не очень удобный выход 10-пин на шлейфе, поэтому рекомендуется купить также переходник 10-пин на 6-пин, который позволяет сразу подключаться к ISP header’у, который есть на большинстве плат Arduino. Внимание! Очень часто встречается брак в виде непропая контактов, поэтому во избежание проблем рекомендуется пропаять переходник и отмыть флюс (зубная щётка + бензин калоша).

Быстрый старт:

  • Подключить usbasp к компьютеру
  • Скачать и установить драйвера на usbasp (скачать с моего сайта, скачать с Яндекс диска, ещё есть тут и тут)
  • Открыть диспетчер устройств и убедиться, что программатор определился системой
  • Открыть Arduino IDE
  • Выбрать usbasp в Инструменты > Программатор

Решение проблем


Решение большинства проблем с загрузкой через программатор (независимо от того, что написано в логе ошибки):

  • Вытащить и обратно вставить usbasp в usb порт
  • Вставить в другой usb порт
  • Переустановить драйвер на usbasp
  • Проверить качество соединения USBasp с МК
  • Перепаять переходник и отмыть флюс

Для прошивки микроконтроллера, тактирующегося низкой частотой (менее 1 МГц внутренний клок):

  • USBasp: на плате есть перемычка JP3, которая включает режим низкой скорости загрузки. В новых версиях прошивки для USBasp скорость выбирается автоматически, но китайцы продают старую версию. Как прошить новую – ищите в интернете.

Основные ошибки в логе Arduino IDE


avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp' Причина – компьютер не видит USB ASP

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

avrdude: error: program enable: target doesn't answer. Причина – usbasp не видит подключаемый микроконтроллер

  • Проверить правильность и целостность соединения с МК
  • Попытаться снизить частоту прошивки, джампером или же указав более низкую скорость в среде программирования
  • Проверить пайку разъема 10 pin и переходника 10 pin – 6 pin
  • Возможно прошиваемый микроконтроллер попался с браком, или же мертв.

Arduino as ISP


Почти любая другая плата Arduino может стать ISP программатором, для этого нужно просто загрузить в неё скетч ArduinoISP:

  • Открыть скетч Файл > Примеры > 11. ArduinoISP > ArduinoISP
  • Всё! Ваша Arduino теперь стала ISP программатором
  • Подключаем к ней другую Arduino или голый чип по схеме ниже
  • Выбираем Arduino as ISP в Инструменты > Программатор
  • И можем писать загрузчики, фьюзы или загружать прошивку напрямую во Flash

ISP программатор подключается к четырем пинам микроконтроллера, не считая питания: один из пинов передает сброс, остальные – для передачи данных. Чтобы плата-программатор не сбрасывалась при загрузке, на неё нужно:

  • Либо поставить поставить конденсатор ёмкостью ~10 мкФ между RST и GND (рекомендуется)
  • Либо просто закоротить пины RST и 5V проводом

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

Решение проблем


Для прошивки микроконтроллера, тактирующегося низкой частотой (менее 1 МГц внутренний клок):

  • Arduino ISP: нужно изменить частоту загрузки прошивки в скетче Arduino ISP и снова прошить его в ардуино-программатор (см. строку в скетче 45 и ниже);

Работа в Arduino IDE

Прошивка загрузчика


Из Arduino IDE при помощи ISP программатора мы можем записать другой загрузчик (по факту загрузчик + фьюзы) и загрузить скетч, а также настроить/прошить фьюзы и лок-биты, но не очень удобным способом. Когда мы выбираем плату в Инструменты > Плата и загрузчик в Инструменты > Плата (загрузчик, bootloader), Arduino IDE автоматически делает “активным” нужный загрузчик. Нажимая Инструменты > Записать загрузчик мы прошиваем загрузчик, соответствующий выбранной плате и её настройкам. Также одновременно с загрузчиком прошиваются фьюзы и лок-биты, соответствующие выбранной плате в Arduino IDE. Как и где их поменять, смотрите чуть ниже. Рассмотрим на примере записи загрузчика для atmega328, стоящей на китайской плате Arduino NANO. На данный момент китайцы прошивают в МК старую версию загрузчика, которая называется old bootloader в меню платы. Оригинальные платы идут с более современным загрузчиком, поэтому при работе с китайскими платами нам приходится выбирать old bootloader для загрузки прошивки через бортовой usb порт. Подключим usbasp по схеме выше, выберем его как программатор в Инструменты > Программатор, выберем плату Arduino NANO, загрузчик для atmega328 (первый в списке). Нажмём записать загрузчик. Всё! Теперь плату можно шить через бортовой usb порт, выбирая первый загрузчик. Он кстати легче, быстрее “прошивает” и сама прошивка быстрее “запускается”.

Как убрать загрузчик?


В стандартном “ядре” Arduino не предусмотрен вариант “без загрузчика”. Для того, чтобы вручную убрать поддержку загрузчика, нужно уметь работать с boards.txt и фьюзами: нужно будет изменить фьюз BOOTRST и подправить максимальный размер скетча. Есть более простой вариант – найти и установить ядро, в котором реализован выбор загрузчика с вариантом “без загрузчика”, например для ATmega328 это miniCore и наше GyverCore. Нужно установить поддержку ядра по рассмотренной ранее инструкции, выбрать плату, указать вариант “без загрузчика” и нажать “Записать загрузчик”. В МК будут прошиты соответствующие фьюзы.

Загрузка скетча


В Arduino IDE можно зашить скетч через программатор, для этого надо нажать Скетч > Загрузить через программатор. Это очень удобно в том случае, когда МК используется без загрузчика, или просто голый МК.

Внимание! Загрузчик будет стёрт!

Фьюзы


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

  • Загрузчик (путь к файлу)
  • Скорость загрузки (через загрузчик)
  • Объем доступной flash и sram памяти
  • Весь набор фьюзов и лок-биты

Файл конфигурации называется boards.txt и найти его можно в папке с ядром Arduino: C:Program Files (x86)Arduinohardwarearduinoavrboards.txt. Документацию на boards.txt можно почитать здесь. При желании можно вывести нужные фьюзы через калькулятор (читайте выше), изменить их в boards.txt (главное не запутаться, для какой выбранной конфигурации платы делается изменение) и прошить в МК, нажав Инструменты > Записать загрузчик.

  • Фьюзы подписаны как low/high/extended fuses, можно вставлять полученное в калькуляторе значение.
  • Локбиты работают следующим образом: unlock_bits это локбиты, которые прошьются до записи загрузчика (при нажатии на кнопку Записать загрузчик). А вот после прошивки загрузчика будут автоматически прошиты lock_bits, которые и определят доступ к памяти контроллера во время его работы. Чтобы защитить прошивку от чтения – ставим lock_bits 0x3C.

Такая работа с фьюзами максимально неудобна, но есть и другие варианты:

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

Фьюзы (Pro)


Фьюзы (фьюз-биты) являются низкоуровневыми настройками микроконтроллера, которые хранятся в специальном месте в памяти и могут быть изменены только при помощи ISP программатора. Это такие настройки как выбор источника тактирования, размер области памяти под загрузчик, настройка отсечки по напряжению и прочее. Фьюз-биты собраны по 8 штук в байты (т.н. байты конфигурации), как типичный регистр микроконтроллера AVR. Таких байтов может быть несколько, они называются low fuses, high fuses, extended fuses. Для конфигурации байтов рекомендуется использовать калькулятор фьюзов (например, вот такой), в котором просто ставятся галочки на нужных битах, и на выходе получается готовый байт в hex виде. Рассмотрим на примере ATmega328p:

Важный момент: в AVR биты у нас инверсные, то есть 1 это выкл, 0 это вкл. Расставляя галочки в калькуляторе, мы формируем байт, галочка стоит – бит включен, но в результирующем байте включенные биты являются нулями. Об этом стоит задумываться при ручном составлении фьюз-байта, при использовании калькулятора можете об этом даже не вспоминать. Что позволяют настроить биты?

  • CKSEL0CKSEL3 – выбор источника и частоты тактирования (уточняй в даташите на свой МК, какая конфигурация за что отвечает)
  • SUT0SUT1 – задержка старта МК после перезагрузки
  • CKOUT – дублирование тактирования на один из пинов (см. в даташите на какой)
  • CKDIV8 – делит тактовую частоту на 8
  • BOOTRST – если включен, МК запускается с загрузчика
  • BOOTSZ0BOOTSZ1 – задаёт размер сектора загрузчика
  • EESAVE – защита EEPROM от стирания во время выполнения полной очистки чипа
  • WDTON – если включить, то Watchdog будет принудительно включен без возможности отключения
  • SPIENопасный бит, при его отключении пропадает возможность прошивки через ISP, и возможность выключить этот бит в том числе*
  • DWEN – вкл/выкл отладочный интерфейс DebugWire. На других моделях бывает и JTAG, и его бит – JTAGEN
  • RSTDISBLопасный бит, при его включении можно использовать ногу RST как обычный цифровой пин, но пропадает возможность прошивки через ISP и выключить этот бит как следствие*
  • BODLEVEL0BODLEVEL3 – настройка контроля напряжения (МК сбросится при падении ниже установленного напряжения)

* – прошивка возможна при помощи высоковольтного программатора

Лок-биты (Pro)


Лок-биты (lock-bits) позволяют управлять доступом к памяти микроконтроллера, что обычно используется для защиты устройства от копирования. Лок-биты собраны опять же в конфигурационный лок-байт, который содержит: BOOTLOCK01, BOOTLOCK02, BOOTLOCK11, BOOTLOCK12, LOCKBIT1, LOCKBIT2 (для ATmega328). Калькулятор лок-битов можно использовать этот. BOOTLOCK биты позволяют запретить самому МК запись (самопрограммирование) во flash память (область программы и область загрузчика)

А вот локбиты LOCKBIT позволяют запретить запись и чтение flash и EEPROM памяти извне, при помощи программатора, т.е. полностью защитить прошивку от скачивания и копирования:

Таким образом включив LOCKBIT1 (лок-байт будет 0x3E) мы запретим внешнюю запись во Flash и EEPROM память, т.е. при помощи ISP программатора, а включив LOCKBIT1 и LOCKBIT2 (лок-байт: 0x3C) полностью заблокируем заодно и чтение данных из памяти микроконтроллера. Повторюсь, всё описанное выше относится к ATmega328p, для других моделей МК читайте в соответствующих даташитах.

Avrdudeprog


Avrdudeprog – утилита от русского программиста, являющаяся удобной оболочкой для avrdudue. Скачать AVRDUDE_PROG можно с официального сайта (прямая ссылка на загрузку, на всякий случай зеркало на моём ЯД и FTP этого сайта). В рамках этого урока, программа умеет следующее:

  • Чтение/запись/очистка flash памяти
  • Чтение/запись/очистка eeprom памяти
  • Полная очистка чипа
  • Калькулятор фьюзов и локбитов (чтение/запись)

Более подробный обзор на avrdudeprog можно посмотреть здесь. Давайте посмотрим на калькулятор фьюзов. Выбираем свой микроконтроллер и программатор (можно добавить другие модели микроконтроллеров и программаторов, читай тут). Переходим во вкладку Fuses, нажимаем прочитать. При успешном чтении увидим текущий набор настроек своего чипа. Можно их поменять и загрузить. Важно! Галку инверсные биты не трогаем! Лок-биты и отключение RST заблокирует микроконтроллер, не трогайте их, если такой цели нет! Можно загружать прошивку или загрузчик из .hex файла, указав путь к ней на первой вкладке в окне Flash. Очень удобная утилита для низкоуровневой работы с МК.

Видео


Полезные страницы


  • Набор GyverKIT – большой стартовый набор Arduino моей разработки, продаётся в России
  • Каталог ссылок на дешёвые Ардуины, датчики, модули и прочие железки с AliExpress у проверенных продавцов
  • Подборка библиотек для Arduino, самых интересных и полезных, официальных и не очень
  • Полная документация по языку Ардуино, все встроенные функции и макросы, все доступные типы данных
  • Сборник полезных алгоритмов для написания скетчей: структура кода, таймеры, фильтры, парсинг данных
  • Видео уроки по программированию Arduino с канала “Заметки Ардуинщика” – одни из самых подробных в рунете
  • Поддержать автора за работу над уроками
  • Обратная связь – сообщить об ошибке в уроке или предложить дополнение по тексту ([email protected])

В инете сказано, что USBasp — один из наиболее простых для повторения AVR USB программаторов.
Требует минимум внешних компонентов, имеет несколько много готовых вариантов разводки печатной платы и оболочек для программирования, а также может работать под Linux и MacOS.

Оригинальная статья по программатору: www.fischl.de/usbasp/
Статья, по которой собирал: easyelectronics.ru/usb-pr…grammator-avr-usbasp.html
Автором печатной платы является DiHalt.

Значит собираем )

Сборка устройства USBasp

1. Сборка производилась по следующей схеме. Это самая распространенная схема. Требуется минимум навесных элементов. Не смог достать емкости для кварца на 18пФ, заменил их на 22пФ. Светодиоды можно использовать любого цвета (от того, что красный с зеленым местами поменяются, принцип работы не изменится)

Подробный процесс изготовления выкладывал тут:
USBasp программатор AVR микроконтроллеров (Сборка устройства)

2. Модифицировал печатную плату под свой корпус. Пришлось немного попотеть при переделке, чтоб впихнуть в корпус от сплиттера в одну линейку и МК, и USB-разъем и IDC-10. Результат превзошел мои ожидания )
Доработанная печатная плата USBasp программатора: Скачать в формате Lay

Сверху авторская плата, снизу — мой вариант

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

4. А теперь сравним оба устройства: авторское и получившееся. Чего хотел — добился. Устройство помещается в корпусе от плиттера. Найдите 10-ть отличий…

Сверху фото авторского устройства. Снизу — фото моего девайса.

Программирование микроконтроллера Mega8

1. Прошиваем микроконтроллер с помощью этого программатора:
Простой LPT программатор AVR микроконтроллеров (5-ть проводков)
Заливаем файл прошивки под названием «usbasp.atmega8.2007-10-23.hex» из этого архива:
Прошивка, программа, печатка. Установка фьюзов тоже в архиве.

Если же фьюзы установлены были неверно, и теперь микроконтроллер не определяется (т.е. был затронут одby из критичных фьюзов), а вам хотелось заново прошить МК, то исправить их можно с помощью такого устройства:
Фьюзбит Доктор. Исправляем AVR при неправильно прошитых фьюзах

на фото прошивка Mega8 с помощью 5-ти проводков

2. Подключаем к программатору адаптер для программирования микроконтроллеров.
Сам адаптер был собран ранее в этой теме:
Адаптер для прошивки AVR микроконтроллеров (8pin-20pin-28pin)

При подключении USB будет постоянно светиться зеленый (красный) светодиод

Установка драйвера для USBasp

1. Можно было запрограммировать и в самом USBasp программаторе, подключив к нему простой программатор согласно распиновке. Если все собрано и запрограммировано верно, то устройство при подключении к ПК определится и «попросит» установить двайвер.

2. На что ему вежливо ответим выбрав папку со скаченными и разархивированными двайверами.

3. Драйвера успешно установятся, если схема собранна верно и МК тоже прошит верно.

4. В диспетчере устройств определится программатор как: LibUSB-Win32 Device.
Радуемся, и тестируем )

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

1. В качестве програмки использовал avrdude в оболочке Sinaprog1.5.5.10.
Можно использовать и приложенное к архиву оболочку USBASP_AVRDUDE_PROG
Для проверки доступа к Attiny13A привожу пошагово такую инструкцию. Контроллер опознан, можно заливать прошивку в Attiny13A .

Необходимые данные для повторения устройства находятся в этом архиве:
Прошивка, программа, печатка, драйвер

Всем удачи!

Содержание

      • 0.0.1 error: usbasp_transmit: libusb0-dll:err [contorl_msg]
  • 1 Программатор USBasp. : 7 комментариев
      • 1.0.1 error: usbasp_transmit: libusb0-dll:err [contorl_msg]
  • 2 Программатор USBasp. : 7 комментариев
    • 2.1 Популярное
  • 3 Программатор USBASP
  • 4 Программирование микроконтроллеров AVR фирмы Atmel

Для прошивки своих поделок на AVR я использую программатор USBasp, купленный сто лет назад за 100р на AliExpress. Пользоваться очень удобно, никаких тебе древних COM или LTP портов, современный USB!
Вот так выглядит это чудо китайской промышленности!

Ну а теперь по подробнее)

Автором данного программатора является немец Thomas Fichl, страничка его разработки со схемами, файлами печатных плат и драйверами.
Работает этот программатор через ISP.

Распиновка контактов на самом программаторе

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

Ну а теперь рассмотрим с каким же софтом работает данная поделка!
Скачиваем драйвера с офф сайта, страничка для загрузки.
Устанавливаем. Внимание! Компьютер будет ругаться на то что драйвер без цифровой подписи. В Windows 7 просто подтверждаем что хотим продолжить,

а для Windows 8 и новее используем инструкцию.

Все теперь программатор готов к работе.
Я использую бесплатный прошивальщик Khazama AVR Programmer. Отличная прога с минималистичным дизайном!
Выбираем чип и поехали!

Тут можно поиграться с FUSES битами, все с описаниями за что отвечают!

Ну вот пожалуй и все!

Не знаю как у всех, но именно на мой экземпляр USBASP v2.0, Khazama ругается при перепрошивке Error Setting USBASP ISP Clock…

Игра с выставлением разной частоты не дает результатов.

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

Для исправления этого досадного косяка, нужно перепрошить программатор)) Для такого трюка нам понадобится еще один USBasp!

Вот так нужно все соеденить. Теперь заливаем прошивку

Выставляем Fuse биты и прошиваем!

После этого доставучие ошибки пропадут!

Update 2016

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

error: usbasp_transmit: libusb0-dll:err [contorl_msg]

Решение было найдено не незамедлительно, нужно понизить частоту программирования. Идем в Command — > Program Options — > ISP CLK Speed и выставляем 187.5 KHZ (или AUTO).

После этого все снова работает!

Update 2017

Вставляем новую не разу не прошитую Atmega8 и видим такое!

100500 раз проверяем схему и программатор, все в норме! И у же почти сдавшись, находим косяк! При первом включении Atmega8 работает от внутреннего генератора на частоте 1 Mhz, она просто не успевает определиться в программе. Решение простое, нужно уменьшить частоту чтения в Khazama.

После этого прошиваем контроллер на 8 Mhz и выставляем AUTO.

И решение еще проще))) Нужно замкнуть контакты на программаторе JP3, для понижения частоты, а после выставления фьюзов на более высокую частоту работы atmega, разомкнуть.

Спасибо за статью.Такой же случай.Только не было 2го usbasp.Сначала прошил AVR910 в usbasp,этой
прошивкой(usbasp.atmega8.2011-05-28),а потом им исправил прошивку в usbasp по вашей инструкции.

Рад что вам помогло!

А у меня на проце atmega 48 20au. работал, после перепрошивки никак не определяется. не пойму как оживить. Можете подсказать?

Вы FUSES правильно выставили? Если после перепрошивки не определяется то скорее всего выставили работу не от кварца а от внешнего генератора. я в таком случае делал из Ардуино простейший генератор и подавал сигнал на мертвый чип, а уж потом спокойно прошивал.

Автору от души огромное спасибо, благодаря тебе вернул к жизни 3 штуки attiny2313, у которых из-за незнания выставил (при помощи фьюзов) слишком маленькую тактовую частоту. Программатор из-за старой прошивки работал только со старой казамой (1.6.2), в которой нельзя выбрать частоту ISP. Теперь обновил прошивку и новая версия (1.7) работает как надо. Жму руку, братишка.

Добрый день!
Имеются два программатора USPasp.
С родной прошивкой ведут себя так

Если прошить последнюю, то в AVRdude можно сделать только одну операцию. То есть, например, прочитали микроконтроллер — и всё, все последующие попытки что-либо сделать выдают вот такую ошибку

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

Обновил прошивку прогером dapa, не надо народ пугать вторым usbasp, всё нормально любым путём. Интересуют простые и дешёвые hvsp & hvpp, бывают ли?

Для прошивки своих поделок на AVR я использую программатор USBasp, купленный сто лет назад за 100р на AliExpress. Пользоваться очень удобно, никаких тебе древних COM или LTP портов, современный USB!
Вот так выглядит это чудо китайской промышленности!

Ну а теперь по подробнее)

Автором данного программатора является немец Thomas Fichl, страничка его разработки со схемами, файлами печатных плат и драйверами.
Работает этот программатор через ISP.

Распиновка контактов на самом программаторе

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

Ну а теперь рассмотрим с каким же софтом работает данная поделка!
Скачиваем драйвера с офф сайта, страничка для загрузки.
Устанавливаем. Внимание! Компьютер будет ругаться на то что драйвер без цифровой подписи. В Windows 7 просто подтверждаем что хотим продолжить,

а для Windows 8 и новее используем инструкцию.

Все теперь программатор готов к работе.
Я использую бесплатный прошивальщик Khazama AVR Programmer. Отличная прога с минималистичным дизайном!
Выбираем чип и поехали!

Тут можно поиграться с FUSES битами, все с описаниями за что отвечают!

Ну вот пожалуй и все!

Не знаю как у всех, но именно на мой экземпляр USBASP v2.0, Khazama ругается при перепрошивке Error Setting USBASP ISP Clock…

Игра с выставлением разной частоты не дает результатов.

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

Для исправления этого досадного косяка, нужно перепрошить программатор)) Для такого трюка нам понадобится еще один USBasp!

Вот так нужно все соеденить. Теперь заливаем прошивку

Выставляем Fuse биты и прошиваем!

После этого доставучие ошибки пропадут!

Update 2016

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

error: usbasp_transmit: libusb0-dll:err [contorl_msg]

Решение было найдено не незамедлительно, нужно понизить частоту программирования. Идем в Command — > Program Options — > ISP CLK Speed и выставляем 187.5 KHZ (или AUTO).

После этого все снова работает!

Update 2017

Вставляем новую не разу не прошитую Atmega8 и видим такое!

100500 раз проверяем схему и программатор, все в норме! И у же почти сдавшись, находим косяк! При первом включении Atmega8 работает от внутреннего генератора на частоте 1 Mhz, она просто не успевает определиться в программе. Решение простое, нужно уменьшить частоту чтения в Khazama.

После этого прошиваем контроллер на 8 Mhz и выставляем AUTO.

И решение еще проще))) Нужно замкнуть контакты на программаторе JP3, для понижения частоты, а после выставления фьюзов на более высокую частоту работы atmega, разомкнуть.

Программатор USBasp. : 7 комментариев

Спасибо за статью.Такой же случай.Только не было 2го usbasp.Сначала прошил AVR910 в usbasp,этой
прошивкой(usbasp.atmega8.2011-05-28),а потом им исправил прошивку в usbasp по вашей инструкции.

Рад что вам помогло!

А у меня на проце atmega 48 20au. работал, после перепрошивки никак не определяется. не пойму как оживить. Можете подсказать?

Вы FUSES правильно выставили? Если после перепрошивки не определяется то скорее всего выставили работу не от кварца а от внешнего генератора. я в таком случае делал из Ардуино простейший генератор и подавал сигнал на мертвый чип, а уж потом спокойно прошивал.

Автору от души огромное спасибо, благодаря тебе вернул к жизни 3 штуки attiny2313, у которых из-за незнания выставил (при помощи фьюзов) слишком маленькую тактовую частоту. Программатор из-за старой прошивки работал только со старой казамой (1.6.2), в которой нельзя выбрать частоту ISP. Теперь обновил прошивку и новая версия (1.7) работает как надо. Жму руку, братишка.

Добрый день!
Имеются два программатора USPasp.
С родной прошивкой ведут себя так

Если прошить последнюю, то в AVRdude можно сделать только одну операцию. То есть, например, прочитали микроконтроллер — и всё, все последующие попытки что-либо сделать выдают вот такую ошибку

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

Обновил прошивку прогером dapa, не надо народ пугать вторым usbasp, всё нормально любым путём. Интересуют простые и дешёвые hvsp & hvpp, бывают ли?

Популярное

  • Устройство и программирование микроконтроллеров AVR для начинающих — 143
  • Трехканальный термостат, терморегулятор, таймер на ATmega8 — 70
  • Двухканальный термостат, терморегулятор на ATmega8 — 67

Программатор USBASP — устройство, распиновка, подключение, прошивка

Сегодня мы рассмотрим как, без особых затрат и быстро, запрограммировать любой микроконтроллер AVR поддерживающий режим последовательного программирования (интерфейс ISP) через USB-порт компьютера. В качестве программатора мы будем использовать очень простой и популярный программатор USBASP, а в качестве программы — AVRdude_Prog V3.3, которая предназначена для программирования МК AVR.

Программатор USBASP

Для того, чтобы запрограммировать микроконтроллер необходимо иметь две вещи:
— программатор
— соответствующее программное обеспечение для записи данных в МК
Одним из наиболее простых, популярных и миниатюрных программаторов для AVR является USBASP программатор, созданный немцем Томасом Фишлем.
Имеется много разных схемотехнических решений этого программатора, программатор можно собрать самому или купить (стоимость — 2-3 доллара). При самостоятельной сборке следует учитывать, что собранный программатор необходимо будет прошить сторонним программатором.

Мы рассмотрим наиболее «навороченную» версию программатора:


Характеристики программатора:
— работает с различными операционными системами — Linux, Mac OC, Windows (для операционной системы Windows, для работы программатора, необходимо установить драйвера — архив в конце статьи)
— скорость программирования до (скорость программирования можно устанавливать самому, к примеру в AVRDUDE_PROG) 375 (5) кб/сек
— имеет 10-контактный интерфейс ISP (соответствует стандарту ICSP с 10-контактной распиновкой)
— поддерживает два напряжения питания программатора — 5В и 3,3В (не все USB порты ПК работают при 5 Вольтах)
— питается от порта USB компьютера, имеет встроенную защиту по току (самовосстанавливающийся предохранитель на 500 мА)

Назначение джамперов:
разъем JP1 — предназначен для перепрошивки микроконтроллера программатора (для перепрошивки — необходимо замкнуть контакты)
разъем JP2 — напряжение питания программатора — 5 Вольт или 3,3 Вольта (по умолчанию — 5 Вольт, как на фотографии). Программируемый микроконтроллер, или конструкцию, в которой он установлен, при токе потребления 300-400 мА можно запитать с программатора, для этого на разъеме есть выход +5В (VCC).
разъем JP3 — определяет частоту тактирования данных SCK: разомкнутый — высокая частота (375 кГц), замкнутый — низкая частота (8 кГц)
Подробнее о разъеме JP3
Джампер JP3 предназначен для уменьшения скорости записи данных в микроконтроллер. Если у микроконтроллера установлена частота тактирования более 1,5 мГц — джампер может быть разомкнут, при этом скорость программирования высокая. Если тактовая частота менее 1,5 мГц — необходимо закоротить выводы джампера — снизить скорость программирования, иначе запрограммировать микроконтроллер не получится. К примеру, если мы будем программировать микроконтроллер ATmega8 (в принципе, практически все МК AVR настроены на тактовую частоту 1 мГц по умолчанию), у которого частота тактирования по умолчанию 1 мГц, необходимо будет замкнуть выводы джампера (как на фотографии). Лучше, наверное, держать этот джампер постоянно замкнутым, чтобы, забыв о его существовании, не мучиться вопросом — почему микроконтроллер не прошивается.

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

Программатор поддерживается следующим программным обеспечением:
— AVRdude
— AVRdude_Prog
— Bascom-AVR
— Khazama AVR Prog
— eXtreme Burner AVR

Работать с таким программатором очень просто — соединить соответствующие выводы программатора с микроконтроллером, подключить к USB-порту компьютера — программатор готов к работе.
Распиновка 10-контактного кабеля программатора USBASP :


1 — MOSI — выход данных для последовательного программирования
2 — VCC — выход +5 (+3,3) Вольт для питания программируемого микроконтроллера или программируемой платы от порта USB компьютера (максимальный ток 200 мА — чтобы не сжечь порт USB)
3 — NC — не используется
4 — GND — общий провод (минус питания)
5 — RST — подключается к выводу RESET микроконтроллера
6 — GND
7 — SCK — выход тактирования данных
8 — GND
9 — MISO — вход данных для последовательного программирования
10 — GND

Установка драйверов для программатора USBASP

Установка драйвера для программатора USBASB очень проста:
— подсоедините программатор к USB порту компьютера, при этом в диспетчере устройств появится новое устройство «USBasp» с желтым треугольником и восклицательным знаком внутри, что означает — не установлены драйвера
— скачайте и разархивируйте файл «USBasp-win-driver-x86-x64-ia64-v3.0.7»
— запустите файл «InstallDriver» — будут автоматически установлены драйвера для программатора
— проверьте диспетчер устройств — желтый треугольник должен исчезнуть (если нет, щелкните правой кнопкой по устройству «USBasp» и выберите пункт «Обновить»
— программатор готов к работе

FUSE-биты при программировании USBASP AVR:

Архив «usbasp.2011-05-28» содержит папки:
= BIN:
— win-driver — драйвера для программатора
— firmware — прошивка для микроконтроллеров Mega8, Mega88, Mega48
= circuit — схема простого программатора в PDF и Cadsoft Eagle

При перепрошивке китайского программатора рекомендую установить FUSE-бит CKOPT. CKOPT взаимосвязан с предельной тактовой частотой. По умолчанию CKOPT сброшен и стабильная работа микроконтроллера программатора при применение кварцевого резонатора возможна только до частоты 8 МГц ( а МК программатора работает на частоте 12 МГц). Установка FUSE-бита CKOPT увеличивает максимальную частоту до 16 МГц. Китайцы не трогают этот FUSE-бит, что довольно часто приводит к отказу программатора (обычно система не определяет программатор).

Архив «USBasp-win-driver-x86-x64-ia64-v3.0.7» предназначен для установки драйверов, как указано в статье

usbasp.2011-05-28 (518,9 KiB, 14 656 hits)

Скачать «USBasp-win-driver-x86-x64-ia64-v3.0.7» (10,9 MiB, 27 572 hits)

Описанный в статье USBASP программатор, прошитый последней версией программы, проверенный в работе, с установленными джамперами и перемычками, вы можете приобрести в интернет-магазине «МирМК-SHOP»
Перейти на страницу магазина

Программирование микроконтроллеров AVR фирмы Atmel

(31 голосов, оценка: 4,97 из 5)

Форум РадиоКот • Просмотр темы — Все про USBAsp

Сообщения без ответов | Активные темы

ПРЯМО СЕЙЧАС:

Автор Сообщение

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Пт мар 18, 2016 20:19:58 

Потрогал лапой паяльник

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

А Вы при программировании, питаете откуда программируемый контроллер? Я так понимаю с самого девайса, а не с программатора? в таком случае, эта кака может быть лезет по питанию, вряд-ли это может дать сбой по резету?…На ардуине, возможно оно лучше отфильтровано после юсб, поэтому все чисто…Попробуйте ради эксперемента увеличьте шлейф до 30 см, и подключите к ардуине, думаю ничего не изменится, и будет читаться так же без ошибок, возможно :)

Вернуться наверх
 

ПрофильПрофиль

 

Реклама

boka1733

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Пт мар 18, 2016 21:01:59 

Встал на лапы
Аватар пользователя

Карма: 1

Рейтинг сообщений: 79

Зарегистрирован: Пт апр 16, 2010 12:00:19
Сообщений: 121
Откуда: КМВ

Рейтинг сообщения: 0

RX24 писал(а):

А Вы при программировании, питаете откуда программируемый контроллер?

Питание идет от USB —>программатор —> arduino 2560.
На борту у дуньки есть стабилизатор, но я его не использую.
Когда подключаю ISP в пульт радиоуправления (turnigy 9x кто в теме) питания от USB уже не хватает, поэтому включаю штатное питание пульта от его аккумулятора.

Вернуться наверх
Реклама

radteh

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 03:44:55 

Друг Кота
Аватар пользователя

Карма: 23

Рейтинг сообщений: 282

Зарегистрирован: Пт мар 09, 2007 15:01:52
Сообщений: 3040
Откуда: Биробиджан

Рейтинг сообщения: 0

Медали: 1

Получил миской по аватаре (1)

moonlight1 какой программой пытаешься работать?

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 06:37:37 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

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

Цитата:

Имеется Arduino nano v3 HC340. Столкнулся с такой проблемой что не могу залить не один скетч, ни новый, ни из ранее созданных и ранее работавших. При заливании под конец выдает такую ошибку:
«avrdude: verification error, first mismatch at byte 0x0000
0xff != 0x0c
avrdude: verification error; content mismatch»
Для проверки использовал простой скетч для мигания встроенного светодиода на 13 пине.
Еще вчера ардуина работала, а сегодня вдруг перестала. Теперь при подключении к ПК постоянно мигает встроенные светодиод на 13 пине
Первым делом был конечно гугл и он сказал что возможно что-то с загрузчиком, предлагал перепрошить, но выдавал примеры только для pro-mini а для nano нет. У меня есть программатор USBasp но как прошить с помощью него загрузчик nano я не нашел и не стал рисковать, решил написать сюда и ждать может скажете чего.
P.s. менял провода и usb порты, все бестолку…

Мне помог один человек подсказал как цеплять проводки чтобы прошить загрузчик

Цитата:

подключаете usbasp к nano (разъем на 6 штырьков — mosi(D11), miso(D12), sck(D13), reset, vcc, gnd), выбираете в IDE програматор usbasp, выбираете плату , и жмете записать загрузчик

Я сделал как он сказал и мне в ардуино выдало такое

Цитата:

выдает ошибку при нажатии на «записать загрузчик»

Arduino: 1.6.8 (Windows 7), Плата:»Arduino Nano, ATmega328″

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: programm enable: target doesn’t answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

Ошибка при записи загрузчика.

Этот отчёт будет иметь больше информации с
включенной опцией Файл -> Настройки ->
«Показать подробный вывод во время компиляции»

Потом он сказал попробовать через командную строку шить, но и этот способ не сработал.
Может быть длина проводов влияет? Но я что-то не уверен в этом. Проводки от шлейфа программатора до ардуинки 12см, не думаю что в них причина но если скажете укорочу.
Лог с работой через консоль и ошибками прилагаю, мб что подскажете…

Вложения:


log.txt [5.43 KiB]

Скачиваний: 159

Вернуться наверх
Реклама

Вебинар «Мощные модульные системы питания MEAN WELL 3+N. Новинки и хиты» (22.06.2023)

Приглашаем 22 июня на вебинар, посвященный подходу компании MEAN WELL к созданию мощных управляемых систем низковольтного и высоковольтного питания и зарядных установок для промышленного, технологического, телекоммуникационного, медицинского, радиопередающего и другого оборудования, а также для систем альтернативной энергетики.
На вебинаре мы рассмотрим новинки и серийную продукцию в концепции «3+N», расскажем об этой концепции и о том, как создать из готовых модулей систему питания мощностью до 360 кВт с напряжением до 380…400 В (постоянного тока). Будут представлены ИП с рециркуляцией энергии для тестового оборудования и модули управления питанием.

Подробнее>>

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 09:16:31 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

moonlight1В ошибке написано что то вроде что ваш программатор со старой прошивкой требует обновить ее, у Вас какая версия прошивки в программаторе? нужна 2011года. А версия в программы в среде ардуино новая Если у вас в программаторе есть перемычка на пониженную частоту, замкните ее и попробуйте загрузить загрузчик если получится будет загружать минуты 3 но загрузит.
Есть программа ArduinoUploader которая позволяет загружать сторонние хекс файлы, с платы ардуино. В ней выбираете тип вашего контроллера ком порт вашей ардуины и путь к хекс файлу вашего загрузчика для вашей платы.он загружается так же как и скетчи.
Если с программатором не пройдет, если вся проблема со слетевшем загрузчике то этой программкой все загрузится, а если нет, то проблема с юсбуартом.

Последний раз редактировалось RX24 Сб мар 19, 2016 10:22:16, всего редактировалось 1 раз.

Вернуться наверх
Реклама

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:22:16 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

RX24 , а как узнать какая версия прошивки? :))) я купил его в этом году на али, так что я даже и не знаю. Вот такой у меня программатор
Изображение
я старую версию ардуины ставил и тоже самое писало =

Последний раз редактировалось moonlight1 Сб мар 19, 2016 10:28:23, всего редактировалось 2 раз(а).

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:24:55 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

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

Последний раз редактировалось RX24 Сб мар 19, 2016 10:28:49, всего редактировалось 1 раз.

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:28:41 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

RX24 писал(а):

moonlight1 Выложил программу скачайте разархивируйте и попробуйте загрузить ваш загрузчик через эту программу вначале.

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

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:31:11 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

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

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:37:45 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

RX24 , вот жеж китайская хрень 3 дня проработала и сдохла, обидно капец… и получение товара то уже подтвердил =
Успел сфоткать ошибку видно эту ардуину на помойку к еще одной будет донором для чего либо :(

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:43:24 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

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

Последний раз редактировалось RX24 Сб мар 19, 2016 10:50:57, всего редактировалось 1 раз.

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:50:17 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

RX24 писал(а):

есть ли там перемычка или место под нее с 25 вывода на корпус, если есть то поставьте и попробуйте прошить через программатор, возможно и прокатит, если конечно сдохла не мега.Если прокатит то все равно нужен будет сторонний юсбуарт… :)

вроде бы есть jp3 а шить через программатор через дудку и консоль как раньше пытался?

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 10:52:55 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

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

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:01:10 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

не че не получилось все так же

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:10:29 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

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

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:25:50 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

замкнул, пишу число, нажимаю отправить, а в ответ тишина.
я не в курсе в сам скетч надо что-то писать? а то он у меня пустой

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:38:31 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

Нет скетч тут не причем) Замыкаете rxtx открываете в среде ардуино монитор последовательного порта в верхней строке пишете что нибудь и жмете отправить, в поле у вас должно появится то же самое что вы написали.
На плате еще должны быть два светодиода, на схеме преобразователя, когда что то отправляете они должны перемигиваться они у вас есть?

Последний раз редактировалось RX24 Сб мар 19, 2016 11:47:43, всего редактировалось 1 раз.

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:47:13 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

значит я правильно делал, отсылал число скажем 100, но в ответ нечего не приходило

Вернуться наверх

RX24

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:48:33 

Карма: 4

Рейтинг сообщений: 14

Зарегистрирован: Ср мар 02, 2016 16:40:45
Сообщений: 337

Рейтинг сообщения: 0

Светодиоды есть на плате по rxtx? они перемигивают в такт отправки?
Если не мигают, проверьте все таки питание на контроллерах, если оно в норме то скорее всего либо чип преобразователя сдох, либо имеет место его непропай. А то что контроллер прогером не шьется то нужно обновлять прошивку 2012 года ставить.

Вернуться наверх

moonlight1

Не в сети

Заголовок сообщения: Re: Все про USBAsp

СообщениеДобавлено: Сб мар 19, 2016 11:55:56 

Зарегистрирован: Вс июн 28, 2015 18:07:39
Сообщений: 62
Откуда: Алтайский край, город Бийск

Рейтинг сообщения: 0

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

Вернуться наверх

Кто сейчас на форуме

Сейчас этот форум просматривают: Majestic-12 [Bot] и гости: 23

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

0 / 0 / 0

Регистрация: 20.02.2013

Сообщений: 92

1

23.02.2013, 16:32. Показов 19849. Ответов 11


Студворк — интернет-сервис помощи студентам

Здравствуйте.
Начал изучение микроконтроллеров. Приобрел usb программатор USBASP. Пытаюсь прошить тини2313.
Скачал проги eXtreme Burner — AVR и Khazama AVR Prokrammer, но проги не видят программатор.Вот скрин ошибки eXtreme Burner

https://www.cyberforum.ru/savedimages/2013/02/23/mhwsxynepyxb7zxz.jpg
Т.к. в инете разные варианты данного прошивальщика, выложу фото своего программатора

https://www.cyberforum.ru/savedimages/2013/02/23/ynmkzqdtyfuhby5kafw.jpg
https://www.cyberforum.ru/savedimages/2013/02/23/cuevbdfhrspjtgflqyhyd7.jpg
Зы. в диспетчере программатор определяется, дрова стоят, винда-хр, но работать, падло, не хочет.
Уже третий день пытаюсь его побороть. Помогите заставить его работать.



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

23.02.2013, 16:32

Ответы с готовыми решениями:

Проблемы с USBAsp
Собрал USBAsp. Драйвера установились. Попробовал прошить им мегу8, он зараза читать её читает, а…

USBAsp, проблемы с USB
Доброго всем дня.
Мы с приятелем решили собрать этот программатор и освоить авры.
Для этого пошли…

USBAsp
Вот собственно…
Купил себе нетбук и появилась необходимость в USB программаторе.
Делал по…

USBAsp
Всем привет. Собрал программатор USBAsp. Подключил к USB, по идее должен же загореться светодиод…

11

0 / 0 / 0

Регистрация: 15.11.2012

Сообщений: 483

23.02.2013, 16:43

2

1. Попробуйте через avrdude без посредников.
2. Промойте плату от флюса, который забыли смыть китайцы. И осмотрите качество паек.
3. За что отвечает джампер J1? Не за перепрограммирование ли самого uasbasp?
4. Обновите прошивку usbasp сторонним программатором.



0



0 / 0 / 0

Регистрация: 20.02.2013

Сообщений: 92

23.02.2013, 17:17

3

джампер отвечает за питание прошиваемой микрухи. блин, другого прошивальщика то нет:(
Видимо придется брать другой програматор. Кстати не посоветуете проверенный нигазин? Этот брал в rcmyair.



0



0 / 0 / 0

Регистрация: 15.11.2012

Сообщений: 483

23.02.2013, 17:38

4

Два первых пункта тоже выполните.

Я брал почти такой же usbasp на ebay. Работает без проблем. USBasp слишком простая штука, чтобы не работать. Проверьте схему (она есть на офсайте usbasp, а китайцы её сильно менять не будут). И схему подключения тоже.

У вас там, кстати, R8 отсутствует. Посмотрите, для чего он нужен. А заодно ориентацию стабилитронов, номиналы резисторов…



0



0 / 0 / 0

Регистрация: 20.02.2013

Сообщений: 92

23.02.2013, 23:17

5

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

Код

avrdude.ixi: warning: cannot set sck period. please check for usbasp firmware update.
avrdude.ixi: error: programm enable: target doesnt answer. 1
avrdude.ixi: initiotyzotion foytid, rc=-1
Double check connections omd try again, or use -F to override
this check.

avrdude.ixi done.  Thank you.

Можно как нить пофиксить?



0



0 / 0 / 0

Регистрация: 10.03.2010

Сообщений: 225

23.02.2013, 23:27

6

У вас камень не отвечаєт на запрос программатора. Проверте все ли правильно подключили к вашей жертве. Если тинька не новая, то она может быть залочена на тактирования от внешнего кварца. К ногам xtalk 1 xtalk 2 подключите кварц мегагерц на 8 и попробуйте работает ли программатор.



0



0 / 0 / 0

Регистрация: 15.11.2012

Сообщений: 483

23.02.2013, 23:32

7

Можно как нить пофиксить?

В 99% случаев такая ошибка говорит, что вы что-то подключили неправильно. Проверьте подключение. А лучше два раза, как вам сама дудка советует.

P.S. Варнинг про устаревшую прошивку можете игнорировать. Работать должно и так.



0



0 / 0 / 0

Регистрация: 20.02.2013

Сообщений: 92

24.02.2013, 00:55

8

Проверил шлейф. Мисо и моси поменяны местами, ресет вообще не прозванивается. Выкинул старый кабель, сварганил новый. Теперь микруха читается, шить пока не пробовал, почитаю еще про фузы и в атаку:)
soxop, Tyom11t огромное вам спасибо, я то уже думал новый программатор брать.
ЗЫ. что за контакт NC на программаторе? Куда его цеплять на тиньке 2313?

Upd. не работает eXtreme Burner — AVR, khazama и avrdude_prog нормально читают чип



0



0 / 0 / 0

Регистрация: 10.03.2010

Сообщений: 225

24.02.2013, 01:00

9

NC- типа Не Используется, точний перевод не помню, чота типа Not C…)) Цеплять его никуда негужно.



0



0 / 0 / 0

Регистрация: 15.11.2012

Сообщений: 483

24.02.2013, 21:13

10

Цитата
Сообщение от Tyom11t

NC- типа Не Используется

Вот тут есть западло в стиле epic fail. NC может в равной степени обозначать как No Connection (никуда не подключён), так и do Not Connect (не подключайте).

Хотя в случае AVR ISP верный перевод первый. Правда я видел программатор, где этот пин использовался для светодиодной индикации и не помню, с какой стороны разъёма предполагался ограничивающий резистор…



0



0 / 0 / 0

Регистрация: 06.02.2011

Сообщений: 50

24.02.2013, 21:24

11

Программируемая схема питается от программатора? (Можно попробовать запитать от внешнего источника)



0



0 / 0 / 0

Регистрация: 26.01.2010

Сообщений: 253

25.02.2013, 20:41

12

А у меня прикол в том, что после выключения-включения питания программатора, дудка перестает его видеть. Перетыкиваю УСБ и норм определяется. Не критично, но накаляет тыркать его туды-сюды.



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

25.02.2013, 20:41

Помогаю со студенческими работами здесь

USBAsp программатор .
Доброго времени суток !
Решил изготовить программатор USBAsp , собрал плату , прошил МК через…

USBAsp и AT89S
Нашёл инструкцию как заставить USBAsp шить помимо АВР ещё и AT89. Взял сделанный ранее USBASP и…

tiny85 & USBasp
Попробовал сейчас залить програмку в тини85 при помощи усбаспа, программа заливается корректно, а…

USBasp & ATtiny13
Уважаемые форумчане, подскажите где я туплю. Честно пытался разобраться сам три дня, но не…

avrdude + usbasp
Коллеги приветствую!
Пока у меня тут stm32 не осваивается, решил вернуться к AVR-кам.
На рынке…

Обновление USBasp
Добрый день.
Некоторое время занимался arduino, решил вылазить из пеленок и самостоятельно травить…

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

12

Dimmm аватар

Offline

Зарегистрирован: 07.11.2016

Здравствуйте!

Давно собрал управляющую плату для холодильника из arduino pro mini. Все замечательно работало порядка четырех месяцев. Я уж забыл как скетч написал))) Так вот дернул черт обновить скетч в ардуинке. Подключил, грузанул…. Слетела та, что стояла и новая не загрузилась. Выдает ошибку Arduino:

1.7.11 (Windows 8.1), Плата»Arduino Pro or Pro Mini, ATmega328 (5V, 16 MHz)»

avrdude: error: programm enable: target doesn’t answer. 1 

avrdude: initialization failed, rc=-1

         Double check connections and try again, or use -F to override

         this check.

Ошибка при записи загрузчика

  Это сообщение будет содержать больше информации чем

  «Отображать вывод во время компиляции»

  включено в Файл > Настройки

Ничего понять не могу, что случилось? Чего надо???

Помогите, пожалуйста. Холодильник стоит не включенный.

  • Usb002 ошибка принтера canon
  • Usb001 произошла ошибка при настройке порта
  • Usb001 ошибка принтера canon
  • Usb устройство не опознано что делать windows 10 постоянно выскакивает ошибка
  • Usb устройство не опознано ошибка драйвера