Макетная плата AVR-USB162MU |
Добавил(а) microsin | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Макетная плата AVR-USB162MU предназначена для разработки миниатюрных устройств USB на основе библиотеки LUFA. Чип AT90USB162-MU, установленный на плату, имеет аппаратный интерфейс USB и подходит для устройств USB 2.0, работающих на скоростях до Full Speed включительно. Платка настолько мала, что помещается в корпус обычной флешки. AVR-USB162MU является аналогом teensy 1.0 (см. Ссылки [3]). Схема и разводка внешних контактов совпадают, доработана только возможность переключения питания портов ввода/вывода чипа с помощью перемычки SJ1. Перемычка SJ1 может переключать рабочий уровень напряжения портов ввода/вывода чипа (ножки PBx, PCx, PDx) либо на 3.3V, либо на 5V (по умолчанию перемычка установлена в положение на 5 вольт). Печатная плата AVR-USB162MU спроектирована с целью максимального удобства макетирования устройств USB. Можно использовать макетное поле для напайки схемы. Если макетное поле не нужно, то его можно выломать, получив малогабаритное устройство USB. И, наконец, на края платы можно напаять линейки контактов с шагом 2.54 мм, и использовать плату в радиоаппаратуре как модуль интерфейса USB. Для макетной платы не нужен программатор - программа легко записывается через интерфейс USB с помощью фирменной технологии Atmel - бутлоадера DFU и оболочки программатора Flip (описание процесса см. по ссылке [2], загрузить оболочку программатора Flip можно по ссылке [4]). [Описание компонентов платы] JP1, JP2 - внешние коннекторы платы. Разводка у них на 100% совпадает с teensy 1.0. Коннекторы JP1 и JP2 используются для подключения к внешним устройствам, на них также выведено питание. [Чем программировать - USB bootloader Atmel, Flip DFU] В микроконтроллер прошито заводское программное обеспечение (bootloader, называемое также DFU - Device Firmware Uploader или Device Firmware Upgrade), позволяющее загрузить программу пользователя в память микроконтроллера через интерфейс USB и запустить её на выполнение. Это позволяет писать и отлаживать программы, не имея вообще никакого отладчика и программатора. Конечно, не те удобства, что предоставляет аппаратный отладчик JTAGICE-mkII, но зато дешево и сердито, затраты для быстрого старта минимальные. Программа и технология, предоставляющая такие возможности, называется Flip (FLexible In-system Programmer), программа бесплатна и доступна для скачивания на сайте atmel.com. Подробная документация, как все это делается, также доступна, правда на английском языке. После заливки firmware с помощью загрузчика Flip DFU сам загрузчик не стирается, поэтому Вы можете перепрошивать макетную плату через USB практически неограниченное количество раз. Это очень удобно использовать для обновления программного обеспечения в приборах, где работает макетная плата, потому что ISP-программатор оказывается не нужен. Прошивку-bootloader, записанную на фабрике Atmel (она обеспечивает работу Flip), нельзя считать ISP-программатором, поскольку она защищена lock-битами. Для того, чтобы можно было воспользоваться ISP-программатором или debugWIRE-отладчиком, чип придется стереть, что полностью уничтожит Flip-bootloader. Но особо печалиться по этому поводу не надо, так как на сайте atmel.com доступен для свободного скачивания бинарник bootloader-a (см. [9]), и его всегда можно восстановить. Как я понял, использование Flip исключает применение для отладки обычного ISP-программатора и отладчика debugWIRE, и наоборот. Установка программы, интерфейс Flip и работа с ним под Windows до предела упрощены. Скачайте инсталлятор по ссылке [6], установите. При подключении макетной платы AVR-USB162 по USB система запросит драйвера, подсуньте ей путь до c:\Program Files\Atmel\Flip 3.3.2\usb\ (это драйвер для bootloadera и Flip), после этого в системе появится устройство AT90USB162: Запускаем программу Flip, выбираем в меню Device -> Select... -> AT90USB162, жмем вторую кнопочку со шнурком на картинке (Select a Communication Medium), выбираем USB, в появившемся маленьком окошке жмем Open. Вуаля! Появился нехитрый интерфейс программатора Flip: Как видно на скриншоте, доступно для использованием пользователем только 12 килобайт памяти (4 килобайта съел Flip-bootloader). Имеется также удобная консольная программа batchisp.exe, избавляющая от лишних телодвижений при программировании памяти микроконтроллера. Вот пример командного файла для программирования памяти чипа AT90USB162: "c:\Program Files\Atmel\Flip 3.4.7\bin\batchisp.exe" -device AT90USB162 -hardware usb -operation erase f memory flash blankcheck loadbuffer release\psw-storage.hex program verify @pause В этом примере сразу друг за другом выполняются 4 операции: очистка FLASH памяти чипа (команда erase), проверка качества очистки памяти (команда blankcheck), программирование памяти файлом release\psw-storage.hex (команды loadbuffer и program), проверка записанных данных программы (команда verify). Весь процесс занимает считанные секунды. После программирования можно сразу запустить записанную программу firmware, если к списку команд добавить команду start. Команда start имеет следующий индекс: start < reset | noreset > address Если указана опция reset, то на ножке RESET микроконтроллера будет сформирован импульс сброса, который может использоваться для сброса внешних схем. Если к ножке сброса RESET микроконтроллера никаких устройств не подключено, то может быть указана опция noreset. Параметр address задает адрес, не который должен произойти безусловный переход (обычно это адрес 0). Пример: "%ProgramFiles%\Atmel\Flip 3.4.7\bin\batchisp.exe" -device AT90USB162 -hardware usb -operation erase f memory flash blankcheck loadbuffer debug\psw-storage.hex program verify start noreset 0 [Подключение ISP-программатора]
Если зачем-то необходимо поменять фьюзы чипа (напомню, что по умолчанию фьюзы чипа AT90USB162 установлены в состояние 0x5E low byte, 0xD9 high byte, 0xF4 extended byte) или прошить биты защиты, то к плате можно подключить стандартный ISP-программатор через коннектор JP3 и ножки PB1, PB2, PB3 коннектора JP1. [Технические параметры чипа AT90USB162-MU, установленного на макетной плате]
[Рекомендуемые инструменты разработчика и библиотеки] AVR Dragon site:atmel.com - In-System Debugger (внутрисхемный аппаратный отладчик) для 8-битных и 32-битных микроконтроллеров AVR с OCD компании Atmel [Ссылки] 1. LUFA - бесплатная библиотека USB для микроконтроллеров Atmel AVR. |