28 января 2014 г.

Работа с программатором USBasp

SAM 2685Существуют простые и дешевые программаторы для прошивки м/к Atmega, которые поддерживает среда Arduino IDE- необходимо просто выбрать соотвествующий программатор USBasp в настройках Arduino IDE. USBasp  основан на Atmega 8 и использует программный USB.



usbispЦена такого программатора на ebay.com около 3$.Он имеет выход питания 5v/3.3v (переключается перемычкой JP1), а так же выводы SCK,MISO,MOSI,RESET для подключению напрямую к микроконтроллеру.
На картинке показаны выводы на самом программаторе, на разъеме шлейфа соответственно будет зеркально.

Данный программатор легко превратить в  I2C-USB переходник, в USB контроллер с GIO или контроллер чтения термодатчиков DS18B20.

 Программирование через USBasp в Arduino IDE
USBaspselectprДля программирования микроконтроллеров,подключенных через USBasp в Arduino IDE необходимо выбрать его в программе согласно скриншоту.




USBaspselectpr2Программирование осуществляется через меню файл,выбрав пункт 
 "Загрузить с помощью программатора".Не забываем выбрать микроконтроллер в меню "сервис" ->"плата".





Программирование через USBasp консольной утилитой avrdude
Для того,чтобы залить прошивку в микроконтроллер необходимо выполнить команду:
 avrdude -c usbasp -p m8 -U flash:w:имя_файла.hex 
где -p m8 - это модель микроконтроллера.В данном случае atmega 8.
Дополнительно так же можно установить фьюзы дописав: -U hfuse:w:0xХХ:m -U lfuse:w:0xХХ:m
Где ХХ - соотвествующие фьюзы микроконтроллера, необходимые для конкретной прошивки.

На некоторых микроконтроллерах (например на серии ATtiny) включен по умолчанию фьюз CKDIV8, который устанавливает делитель на 8 и из-за этого USBasp не программирует такие микроконтроллеры пока не установить перемычку JP3 на плате USBasp. 

Для настройки фьюзов
Для настройки фьюзов воспользуйтесь калькулятором фьюзов чтобы выставить нужные настройки, в том числе выключить делитель CKDIV8
Фьюзы прошиваются через командой  avrdude -c usbasp -p имя_м/к -U lfuse:w:0xХХ:m
Например для установки фьюзов attiny85 для внутреннего генератора 8мгц с выключенным делителем на 8 пордам команду:avrdude -c attiny85 usbasp -p -U lfuse:w:0x62:m
При программировании через Arduino IDE можно установить нужные фьюзы выбрав в меню "записать загрузчик", выбрав перед этим необходимый микроконтроллер.


___
http://homes-smart.ru/index.php/oborudovanie/arduino/proshivka-mikrokontrollerov-atmega-cherez-usbasp

Комментариев нет:

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