AVR-USB-MEGA16: USB bootloader USBasp для микроконтроллера ATmega32 |
Написал microsin | |
02.10.2010 | |
В статье описывается USB bootloader USBasp, который хорошо подходит для ATmega32. Он удобен тем, что эмулирует поведение популярного программатора USBasp, и для него подходят программы под этот программатор. Этот бутлоадер я записываю во все макетные платы AVR-USB-MEGA16, оснащенные микроконтроллерами ATmega32, благодаря чему пользователь получает возможность заливать свою программу прямо через подключение по USB, и не нужен никакой дополнительный программатор. Внимание - USBasp bootloader не умеет работать с фьюзами (fuses) и EEPROM, несмотря на то, что в сервисных программах, обслуживающих USBasp (например, Khazama AVR Programmer) такая возможность имеется. Значения фьюзов по умолчанию, которые прошиты в платы с usbasploader - LOW FUSE BYTE: 0xCF, HIGH FUSE BYTE: 0x98, LOCKOPT BYTE: 0xEF. [Как встроить в Ваш проект usbasploader] Процесс подробно описан в статье на Хабре, статья называется "USB bootloader для микроконтроллеров AVR" и находится в разделе "DIY или Сделай Сам". Воспользуйтесь поиском и легко её найдете. Исходники можете скачать по ссылке в этой статье (см. Ссылки [4]). Само собой, загрузчик USBasp легко встраивается и в другие чипы ATmega, объем секциии bootloader у которых равен или превышает 4096 байт (например, в ATmega128). [Как работать с загрузчиком usbasploader на примере макетки AVR-USB-MEGA16 и Khazama AVR Programmer] Для работы с бутлоадером USBasp подходит множество программ (см. Ссылки [3]), но мне больше всего по душе программа Khazama AVR Programmer. Внимание! При первом подключении платы с бутлоадером к компьютеру по USB операционная система Windows запросит драйвер программатора USBasp (для Linux драйвер не нужен). Драйвер можно взять в архиве по ссылке [4] (папка USBasp архива), или скачать с сайта автора программатора USBasp, см. ссылку [6]. Итак, процесс по шагам - как залить свою прошивку firmware (пользовательскую программу) в макетную плату AVR-USB-MEGA16, используя бутлоадер USBasp.
1. Поставьте перемычку между ножками 4 и 6 коннектора U1 ISP. Очень похоже работает другой бутлоадер - BootloadHID (см. Ссылки [5]). Отличается тем, что просто нужна другая сервисная программа на компьютере, но зато легче встраивается в младшие чипы (начиная с ATmega8), т. к. снижены требования к размеру bootloader-секции. [Устранение проблем] Если устройство USB бутлоадера нормально определяестя в системе Windows (видно в Диспетчере Устройтв как устройство USBasp), но отказывается работать с USB устройством USBasp (could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc), то скорее всего у Вас не установлена библиотека libusb или не установлен драйвер USBasp.
Драйвер USBasp можно скачать по ссылке [6], ищите заголовок Drivers и ссылку на файл наподобие usbasp-windriver.2011-05-28.zip. Библиотеку libusb можно скачать по ссылке [7]. Качайте и устанавливайте самый свежий релиз библиотеки libusb. [Ссылки]
1. Загрузчики (bootloader) для микроконтроллеров AVR.
|
|
Последнее обновление ( 30.05.2012 ) |