Avr studio и usbasp – припаяй это по-человечески!: Очень удобный AVR программатор USBASP (для Win10 x64 тоже!)

Использование программатора USBASP в Atmel Studio

Программатор USBASP является на сегодняшний день самым дешевым программатором микроконтроллеров AVR компании ATMEL и позволяет программировать большое множество микроконтроллеров серий AVR ATTiny, AVR ATMega и других. В данной статье я расскажу вам об основных особенностях использования этого программатора из под ОС Windows 7 и как настроить его работу совместно со средой разработки программ Atmel Studio на примере версии 6.1. К сожалению, по умолчанию, Atmel Studio не поддерживает этот программатор.

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

В первую очередь необходимо установить драйвер для программатора. Мы не будем подробно описывать процедуру установки драйвера, так как тут не должно возникнуть каких либо трудностей. После установки драйвера подключенный программатор отображается в диспетчере устройств Windows как устройство USBasp.

Драйвер можно скачать по ссылке с нашего Google диска.

Установка Avrdude

Для программирования микроконтроллеров AVR будем использовать программу Avrdude. Эта программа поддерживает большое количество программаторов, в том числе и USBASP. Этой программе посвящена отдельная страница в википедии.

Скачать Avrdude по ссылке с нашего Google диска

Программа avrdude является консольной и запускается из командной строки. Для выполнения программирования ей передается набор параметров, определяющий настройки. Ниже приведен пример командной строки для программирования контроллера при помощи программатора USBASP:

avrdude -c usbasp -p atmega32 -U flash:w:myhexfile.hex -U lfuse:w:0x6a:m -U hfuse:w:0xff:m

Поясним основные параметры:

  • -c usbasp параметр определяет тип программатора, в нашем случае это usbasp;
  • -p atmega32 параметр определяет тип микроконтроллера, для примера использован ATmega32;
  • -U flash:w:myhexfile.hex параметр определяет hex файл для записи в контроллер. Файл должен располагаться либо в каталоге программы, либо необходимо указать полный путь к файлу;
  • -U lfuse:w:0x6a:m параметр определяет младший байт регистра Fuse;
  • -U hfuse:w:0xff:m параметр определяет старший байт регистра Fuse;

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

Avrdude имеет много разных функций, но в рамках данной статьи нам важен один режим ее работы, а именно заливка программы в микроконтроллер. Остальные функции вы сможете изучить в документации.

Настройка программирования из Atmel Studio

Как уже было упомянуто, Atmel Studio не поддерживает программатор USBASP. Однако в нее встроен механизм для запуска внешних программ для выполнения различных действий. Используя данный механизм внешних инструментов, программирование контроллера будет осуществляться одной кнопкой прямо из меню Atmel Studio.

В Atmel Studio открываем пункт меню Tools и выбираем пункт External tools…

В открывшемся окне настройки инструментов нажимаем кнопку Add для добавления нового инструмента. Заполняем следующие поля:

  • Title: произвольное имя инструмента, мы указали USBASP atmega32.
  • Command: файл запуска программы avrdude. Мы указали C:AVRDUDEavrdude.exe, так как у нас она размещена в каталогеAVRDUDE на диске С.
  • Arguments: параметры запуска для avrdude, которые мы рассмотрели выше. Мы задали строку -c usbasp -p atmega32 -U flash:w:$(TargetName).hex, в которой указали имя программатора, имя контроллера, и путь к файлу прошивки. Путь к файлу указан через специальные макросы и Atmel Studio подставит их сама. Мы не указали регистр Fuse в этом примере, но при необходимости вы можете добавить их самостоятельно.
  • Initial directory: указан макрос для подстановки каталога, в котором находится файл прошивки.
  • Use Output window: установите эту галочку для того, что бы результат работы программы показывался в окне Atmel Studio.
    Послу установки всех настроек нажмите кнопку OK для сохранения настроек и выхода.

Теперь, для программирования микроконтроллера достаточно зайти в меню Tools и нажать команду USBASP atmega32, которая там должна появиться после проделанных настроек. Программирование необходимо запускать после компиляции проекта, так как файл прошивки создается в процессе компиляции проекта.

Подключение программатора к микроконтроллеру

Программатор USBASP подключается к микроконтроллеру по стандартному интерфейсу ISP. Физически на программаторе интерфейс имеет 10 контактов. Большинство контактов объединены общим проводом. Назначение используемых контактов следующее:

  • MISO, MOSI, SCK, RESET — подключается к соответствующему выводу микроконтроллера;
  • GND – земля, подключается к мину или GND микроконтроллера;
  • VCC – используется для подачи питания на микроконтроллер.

На печатных платах модулей, где используются контроллеры AVR, разработчики очень часто располагают интерфейс SPI 6 контактов, позволяющий произвести внутрисхемное программирование контроллера. Такой интерфейс можно видеть даже на платах Arduino. Для подключения программатора к такому 6-и контактному интерфейсу можно использовать соединительные провода мама-мама или специальный переходник ISP10 в ISP6 для программатора AVR USBASP.

mcustore.ru

Как работать с программатором USBasp в AVR Studio или Atmel Studio

Не секрет, что  китайский USBasp – это один из самых дешевых AVR программаторов. И к тому же очень простой в использовании! Впрочем стоит заметить, что многие радиолюбители не могут подключить USBasp к AVR Studio / Atmel Studio!
Это легко исправить, если «перепрошить» USBasp в AVR Doper, совместимый с интерфейсом STK500!

Для «перепрошивки» китайского USBasp в AVR Doper потребуется загрузить в него (точнее во FLASH память его микроконтроллера) файл «usbasp-mega8-12mhz.hex», расположенный в папке «Firmware» из этого архива.

Подробнее о том, как «перепрошить» USBasp.

Чтобы установить драйвер для AVR Doper, подключив программатор, откажитесь от автоматического поиска драйвера и укажите на папку, которую вы скачали и разархивировали!

После успешной установки драйвера для AVR Doper в диспетчере задач должен появиться новый порт! Запомните назначенный ему номер –  его понадобится указать в настройках программы!

Дальше рассмотрено два варианта подключения USBasp с «прошивкой» AVR Doper!

Вариант первый: настраиваем «перепрошитый» USBasp в AVR Studio

Для добавления нового программатора в AVR Studio кликните по кнопке «Connect» (см. рис.)

В появившемся окошке выберите тип программатора «STK500» и правильно укажите порт, который был ему назначен!

Когда появится окошко с напоминанием об устаревшей прошивке, нажмите «Отмена» или просто закройте его.

В настройках программатора обязательно выберите режим ISP Mode!

Вариант второй:  настраиваем «перепрошитый» USBasp в Atmel Studio

Для добавления нового программатора в Atmel Studio выберите в меню «Tools» пункт «Add target». Дальше настройка производится аналогично AVR Studio.

Как видите, «перепрошить» USBasp для работы в AVR Studio/Atmel Studio совсем несложно, и настройка программатора в этих программах очень проста даже для новичков.

 


< Предыдущая   Следующая >

new-tech.in.ua

Микроконтроллеры AVR: Использование Atmel Studio 6.0

Для более эффективного программирования микроконтроллеров AVR, рекомендую использовать фирменную среду разработки Atmel Studio 6.0 (ссылка для загрузки).
По сути, Atmel Studio 6.0 — это та же самая Microsoft Visual Studio 2010, дополненная специальными библиотеками для работы с микроконтроллерами AVR.
Для записи полученной программы из Atmel Studio в микроконтроллер, нам потребуется программатор USBAsp и программка Khazama AVR Programmer (ссылка для загрузки). Но хочу сразу предупредить, Вы не сможете изменить fuses и биты блокировки на микроконтроллере ATmega328P с помощью Khazama AVR Programmer! Как альтернативу для записи готового кода программы, или же как дополнение, для программирования fuses и битов блокировки, можно использовать программу AVRDUDE_PROG (ссылка для загрузки).

А теперь обо всем подробнее:

  1. Открываем установленную Atmel Studio 6.0, жмем File->New->Project. в открывшемся окне выбираем «GCC Executable projects C/C++», вводим имя проекта и нажимаем «OK». Далее в появившемся окне выбираем наш микроконтроллер из списка и нажимаем «OK».
  2. Пишем программу.
  3. Нажимаем F7 (Build Solution), и убеждаемся что нет ошибок. Проект готов.
  4. Запускаем Khazama AVR Programmer, выбираем необходимый микроконтроллер из списка, жмем «Ctrl+L» или File->Load FLASH file to buffer. В открывшемся окне идем в папку, где был сохранен наш проект из Atmel Studio. Открываем папку «debug», в ней находится файл с именем проекта .hex, выбираем его и жмем «Открыть».
  5. Для того, чтобы прошить микроконтроллер, жмем «Ctrl+F» или Command->Write FLASH buffer to Chip. Выскакивает окно с предупреждением, что невозможно установить необходимую скорость соединения, не обращаем внимание на него и жмем «OK». По завершению программирования программа также выведет окно с сообщением о том, что запись в микроконтроллер успешно завершена.

Программирование fuses и битов блокировки:

  1. Запускаем AVRDUDEPROG, во вкладке «Program» выбираем микроконтроллер, а также используемый программатор.
  2. На той же вкладке «Program» обязательно выбираем использование прямых fuse битов!
  3. Переходим во вкладку «Fuses», и первым делом нажимаем «Чтение»!, иначе можно «убить» (не в прямом конечно смысле, но для приведения его в работоспособное состояние потребуется много сил, и времени!). После того, как Вы убедились в том, что fuse биты считаны без ошибок, можно изменять те, которые необходимо.
  4. И лишь после того, как проделаны все предыдущие пункты можно нажимать кнопку «Программирование».

Примечание к программированию fuse и битов блокировки:

  • Если после чтения ни одной галочки в fuse и битах блокировки не установлено, то возможно произошла ошибка, повторите чтение.
  • На сообщения об ошибках установления скорости программирования можно не обращать внимание.
  • Если Вы всетаки допустили ошибку при программировании fuse битов и микроконтроллер перестал отвечать, то можете написать мне в google+, или дождаться выхода соответствующего поста по восстановлению.

avrprog.blogspot.com

Программирование микроконтроллеров AVR под LINUX: перешиваем USBasp в USB-doper

На сегодняшний день имеются схемные и программные решения последовательных программаторов, которые могут сообщаться с ПК посредством USB портов. Здесь я приведу реализацию двух USB-программаторов: USBASP и USB-DOPER. Более подробно отличия и сходства я приведу позже. Пока только могу сказать, что схемные решения абсолютно не отличаются, а отличия лишь в программном коде.
USB-doper
  А вот эта интересная вещь способна стыковаться с AVRstudio. Программа видит этот программатор как STK-500. Очень удобно, когда программу откомпилировал, отладил и сразу же нажал на кнопочку – прошил.

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

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

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

  Кстати, у меня этот программатор работает только без перемычки J3 и J1 !
 ПО для USB -doper качаем здесь

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

 

Для любителей шить МК в Си-коде USB-Doper также совместим и CodeVision.
 

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

____

http://microelectronic.at.ua/publ/programmator_s_usb/1-1-0-6

avr-prog.blogspot.com

Как запрограммировать AVR микроконтроллер с помощью usbasp

Здесь я расскажу как запрограммировать микроконтроллер на примере ATmega32 с помощью «Khazama AVR Programmer»,  «eXtreme Burner- AVR» и «usbasp».

usbasp — это программатор который можно собрать самому, либо купить (на ebay 3$). Драйвера и дополнительная информация на сайте создателя



Khazama AVR Programmer и «eXtreme Burner- AVR» это программы которые заливают прошивку в микроконтроллер, нужно использовать только 1 из них на выбор, ниже я расскажу как с ними работать.

Сперва нужно поставить необходимый драйвер для USBASP, который можно найти по ссылке выше. Далее нужно написать код который будет управлять нашим микроконтроллером, для этого я использую ATMEL STUDIO.

После того как мы скомпилируем наш код, создастся прошивка для МК (.hex файл) которую нужно залить в МК, её работоспособоность можно проверить в самой AVR студии или любой среде моделирования для этого предназначенной , к примеру Proteus.

Далее нужно подключить программатор к МК, для этого необходимы только 6 проводов USBASP (если их 10 то 3, 4, 6 и 8 выводы не используются ).

Ниже представлена схема программатора если вы решите собрать его самостоятельно:

Если купить готовый программатор, то чаще всего он уже с готовым разъёмом, который осталось подключить к микроконтроллеру. Лучше прозвонить кабель который выходит из программатора и найти землю, остальное можно найти с помощью распиновки.


Когда известно какой вывод за что отвечает осталось подключить их к ножкам микроконтроллера, для этого нужно свериться с даташитом и проверить распинову, нам нужны контакты MOSI, SCK, MISO, RESET, GND и  VTG (это VCC +5 В питание). К примеру необходимые ножки ATmega8:

Когда всё готово нужно запустить Khazama AVR Programmer и проверить видит ли он МК.
Главное окно:

Сперва нужно выбрать в выпадающем меню в центре наш микроконтроллер. Затем нужно нажать command -> read chip signature:

Если не выдаст никаких ошибок то всё в порядке.

Теперь нужно показать ему наш .hex файл, для этого нужно нажать File -> load flash file to buffer. Выбрать нужный файл и нажать ОК:

Теперь нужно разобраться с fuse битами (про них можно почитать Здесь).
Чтобы зайти в меню fuses нужно нажать Command -> fuse and lock bits (CTRL + A):

В появившемся окне нажать LOAD после чего мы увидим биты уже выставленные в микроконтроллере:

Галочка значит что бит НЕ выставлен, как по нотации ATMEL, пустой квадратик значит что бит ВЫСТАВЛЕН. «Write all» записать в МК выставленные биты.
Мне не нужно ничего менять, так что я нажимаю cancel и жму «auto programm» для того чтобы запрограммировать МК.

Всё, микроконтроллер получает напряжение от программатора и сразу начинает работать.

Если появляется ошибка «error setting usbasp isp clock» нужно либо перепрошить программатор, либо сменить программу для программатора, но даже с этой ошибкой МК можно прошивать как и раньше, только нельзя прочитать и выставить Fuse биты.

eXtreme Burner- AVR

Я использую «eXtreme Burner- AVR», т.к с ним у меня никогда не было проблем и здесь удобнее менять информацию в EEPROM. Вот его основное рабочее окно:

4a4ik.blogspot.com

Программирование микроконтроллеров AVR под LINUX: программатор USBasp

USBasp — простой внутрисхемный USB-программатор для микроконтроллеров Atmel AVR. Программатор построен на микроконтроллере ATMega88 (или ATMega8) и содержит минимум деталей. Программатор использует свой USB-драйвер, никакие специальные USB контроллеры не нужны.

Особенности программатора:
— работа под любой платформой: Windows, Linux и Mac OS X
— какие-либо специальные компоненты или smd не нужны
— скорость программирования до 5 кБ/сек
— SCK-джампер позволяет программировать низкоскоростные контроллеры (
— в планах: последовательный интерфейс (например для отладки)

Схема программатора

Схема предназначена для программирования только 5В кристаллов. В других случаях, уровни должны быть преобразованы!

Заливка прошивки

Т.к. в схеме программатора используется микроконтроллер, то его необходимо предварительно прошить. Для этого подключите другой рабочий программатор и установите джампер J2, для активации функции обновления прошивки.
Прошейте программатор при помощи прошивки: «bin/firmware/usbasp.atmega88.xxxx-xx-xx.hex» или «bin/firmware/usbasp.atmega8.xxxx-xx-xx.hex«
Необходимо будет установить фьюзы для подключения внешнего кварца
# TARGET=atmega8 HFUSE=0xc9 LFUSE=0xef
# TARGET=atmega48 HFUSE=0xdd LFUSE=0xff
# TARGET=atmega88 HFUSE=0xdd LFUSE=0xff

Установки джамперов

J1 — источник питания (от USB, либо внешний источник). Будьте аккуратнее, т.к. схема не содержит какой-либо защиты от КЗ.
J2 — обновление прошивки (сам себя обновлять не может!). Установленный джампер позволяет программировать контроллер программатора другим рабочим программатором.
J3 — если программируемый МК низкоскоростной <1.5 МГц, то необходимо установить данный джампер. Тогда SCK уменьшится с 375 кГц до примерно 8 кГц.

Установка драйверов под Windows

Подключите программатор USBasp к USB. Windows найдет устройство и попросит указать драйвер, укажите ему папку «bin/win-driver«. Windows установит драйвер.
Теперь можно запустить avrdude, к примеру:
1. Войти в терминальный режим, МК: AT90S2313: avrdude -c usbasp -p at90s2313 -t
2. Записать main.hex в flash-память МК ATmega8: avrdude -c usbasp -p atmega8 -U flash:w:main.hex

Сборка их исходников (под Linux)

Компиляция прошивки:
1. Установите GNU toolchain для микроконтроллеров AVR (пакеты avr-gcc, avr-libc)
2. Войдите в директорию firmware/
3. Выполните команду «make main.hex«
4. Прошейте «main.hex» ATMega(4)8. Например при помощи uisp или avrdude (используйте
Makefile с опцией «make flash«). Для прошивки установите джампер J2 и подключите USBasp к рабочему программатору.
Также нужно установить фьюзы для работы от внешнего кварца (используйте Makefile
с опцией «make fuses«).

Компиляция avrdude:
ПО AVRDUDE поддерживается программатором USBasp начиная с версии 5.2.
1. Установите пакет libusb: http://libusb.sourceforge.net/
2. Скачайте последнюю версию avrdude: http://download.savannah.gnu.org/releases/avrdude/
3. cd avrdude-X.X.X
4. Сконфигурируйте:
./bootstrap
./configure
5. Компиляция:
make
make install

Программы для работы с программатором

  • AVRDUDE — поддерживается USBasp начиная с версии 5.2
  • BASCOM-AVR — поддерживается USBasp начиная с версии 1.11.9.6
  • Khazama AVR Programmer — Windows XP/Vista GUI приложение для USBasp и avrdude
  • eXtreme Burner — AVR — программа Windows GUI для USBasp

Скачать прошивку, исходники, драйверы вы можете ниже

Печатные платы

Под данный программатор разработано более 10 различных вариантов разводки печатной платы, которые можно скачать ниже, либо на страничке официального сайта.

http://www.fischl.de/usbasp/           — оригинальная разработка

avr-prog.blogspot.com

Программатор USBasp для AVR контроллеров Arduino

USBasp S51&AVR — простой внутрисхемный USB-программатор для контроллеров серии S51 фирмы Atmel: AT89S51, AT89S52, AT89S53, AT89S8252.

 

У любителей Arduino приборчик USBasp тоже пользуется спросом, так как может загружать скетчи и прошивать ядро микроконтроллеров AVR серии: ATtiny, ATmega, AT90S, AT90CAN, AT90PWM, а также без проблем работает с программным обеспечением Arduino IDE.

 

Мозгом загрузчика USBasp служит микроконтроллер ATmega8. Так же есть варианты с ATmega88 или ATmega48. Собран он из минимума деталей, USB контроллер не нужен, поскольку имеется программный USB-драйвер.

Возможности программатора USBasp

 

  1. Совместим с Windows, Linux и Mac OS X.
  2. Поддержка контроллеров S51 и AVR.
  3. Питание от USB порта +5В, дополнительное не требуется.
  4. Прошивка контроллеров работающих от 5 или 3.3 В.
  5. Скорость передачи до 5 Кбайт/сек.
  6. Переключение SCK-джампером для прошивки низкоскоростных чипов < 1.5МГц.
  7. Сбрасываемый предохранитель от короткого замыкания.
  8. Стандартный IDC 10PIN интерфейс.

 

Драйвер к программатору USBasp

Windows USBasp-win-driver-x86-x64-ia64-v1.2.4

 

Программное обеспечение для USBasp

 

  • BASCOM-AVR — среда разработки, начиная с версии 1.11.9.6.поддерживает USBasp.
  • AVRDUDE 6.1 — консольная программа, начиная с версии 5.2 поддерживает USBasp.
  • Khazama AVR Programmer v1.7 — имеет графическую оболочку, совместима с Windows XP и Vista.
  • eXtreme Burner AVR 1.3 Beta — графическая оболочка.
  • Arduino IDE 1.0.6
Самодельный USBasp

 

Обвязка микроконтроллера в USBasp S51&AVR настолько проста, что достаточно легко собрать самому миниатюрный программатор, который можно будет везде носить с собой как флешку.

 

Для самоделки можно выбрать управляющий микроконтроллер ATmega8, ATmega48 или ATvega88, но только без всяких индексов L, PU. Так как нам потребуется рабочая частота свыше 8 Мгц.

 

Схема программатора

Устройство, собранное по этой схеме предназначено только для программирования 5-вольтовых контроллеров!

 

Красный светодиод показывает, что устройство подключено к USB-питанию.

Зеленый светодиод мигает, когда идет обращение к прошиваемому микроконтроллеру.

 

Элементы для сборки USBasp:

  • R1, R2 — 68 Ом;
  • R3 — 2.2 кОм;
  • R4, R5, R7 — 1 кОм;
  • R6 — 10 кОм;
  • C1 — электролит на 4.7 мкФ;
  • С3 — керамический конденсатор 100 нФ;
  • C4, C5 — керамические, неполярные конденсаторы 22пФ;
  • LED1 — красный светодиод на 20мА;
  • LED2 — зеленый светодиод на 20мА;
  • D1, D2 — стабилитроны на 3,6В;
  • IC1 — микроконтроллер ATmega8, ATmega48, ATmega88, без индексов L, PU;
  • Q1 — кварц 12 МГц, корпус HC49-S;
  • X1 — разъем USB, тип B;
  • X2 — разъем IDC-10;

 

Уставки джамперов

 

J1 — питание от USB-гнезда, либо внешнего источника.

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

J3 — установленная перемычка снижает частоту SCK синхросигнала с 375 кГц до 8 кГц для прошивки низкоскоростных чипов < 1.5 МГц.

 

Джампер J1 следует снимать при первом подключении к ПК собранного и прошитого программатора, поскольку компьютер должен определить новое устройство и установить драйвер для него.

 

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

 

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

 

Для работы программатора потребуется на Windows установить драйвер. Последнюю версию которого можно найти на сайте USBasp.

 

На операционные системы Linux и MacOS драйвер не требуется.

Вставьте собранный программатор в гнездо USB. Операционная система найдет новое оборудование и предложит установить драйвер для него. Выберите пункт: «Установка из указанного места», найдите папку со скачанным драйвером. Начните установку драйвера на Windows.

 

Прошивка самодельного USBasp

 

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

 

Запускайте программное обеспечение, например, AVRDUDE и не забудьте проверить правильность установки джампера J2.

Загружайте прошивку:
«bin/firmware/usbasp.atmega8.xxxx-xx-xx.hex»
«bin/firmware/usbasp.atmega88.xxxx-xx-xx.hex».

 

Для работы от внешнего кварца необходимо будет выставить фьюзы:

# TARGET=atmega8 HFUSE=0xc9 LFUSE=0xef
# TARGET=atmega48 HFUSE=0xdd LFUSE=0xff
# TARGET=atmega88 HFUSE=0xdd LFUSE=0xff

 

Воспользуйтесь для вставки фьюзов прогой Makefile с функцией «make fuses».

 

Печатная плата

 

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

Или сделайте свою трассировку печатной платы под установленный лично DIP переключатель вместо отдельных джамперов.

 

Программирование в Khazama

 

Стоит упомянуть об удобной графической программе Khazama. Все операции можно быстро выполнить как в меню, так и с помощью строки бара.

1 — загрузить в буфер прошивку для Flash памяти.
2 — загрузить в буфер прошивку для EPROM памяти.
3 — записать прошивку во Flash память.
4 — записать прошивку в EPROM память.
5 — прочитать Flash память.
6 — прочитать EPROM память.
7 — стереть микрочип.
8 — установить FUSE и LOCK биты.
9 — установить поверх всех окон.
В меню есть удобная кнопка Auto Program.

 

В Command > Program Options можно изменять настройки программки. В частности, можно задать набор операций, которые будут выполняться при нажатии на Auto Program. По умолчанию установлено стирание чипа и запись во флэш-память. Также можно выбрать запись в EEPROM, добавить верификацию (проверку записанных данных).

 

Программирование Flash памяти

 

Программирование EEPROM памяти

 

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

 

С помощью Khazama также удобно выставлять FUSE биты.

 

Автор: Виталий Петрович. Украина Лисичанск.


 

 

 

volt-index.ru