roboforum.ru

Технический форум по робототехнике.

AT90USBxxx

AT90USBxxx

blindman » 23 дек 2009, 15:54

В этой теме предлагаю выкладывать информацию и обсуждать вопросы, касающиеся микроконтроллеров производства Atmel с USB-интерфейсом (кроме работы с портами, таймерами и прочей периферией - в этом AT90USB не отличается от прочих МК).

Добавлено спустя 15 минут 57 секунд:
Как прошить AT90USBxxx из-под Linux.

AT90USBxxx поставляются с зашитым бутлоадером, выполненным по стандарту USB DFU. Это позволяет прошивать МК через USB, без специального программатора - для этой цели Atmel предлагает бесплатную программу FLIP (http://www.atmel.com/dyn/products/tools ... ol_id=3886). FLIP работает под Windows и Linux. Использование программы описано в документации, повторять его здесь нет смысла. Но пользователи некоторых дистрибутивов Linux (в частности, Ubuntu и Debian) могут столкнуться с проблемой - FLIP не распознает подключенный МК. Причина в том, что в поисках МК FLIP лезет в /sys/bus/usb, а должен - в /dev/bus/usb. Решается просто - открываем libatlibusbdfu.so в HEX-редакторе (я использовал встроенный в Midnight Commander), ищем строку /sys/bus/usb, меняем на /dev/bus/usb

Re: AT90USBxxx

Vooon » 23 дек 2009, 17:22

Ээ, они что, только блобами поставляют? *#$%^&@$#
И не понял при чем там жаба?

Re: AT90USBxxx

avr123.nm.ru » 23 дек 2009, 18:22

На сайте производителя есть примеры испольщования AT90USB в различных популярных эпостасях - могут помочь бысро запустить проект или поделку.

Re: AT90USBxxx

WickedGoblin » 12 янв 2010, 22:32

Т.к. для себя делал перевод datasheet-а от AT90USB162 можно выложить данну инфу тут. Конечно она прямой подстрочник. Но не проблема причесать её к литературному виду.
В частности меня интересовало и перевелось:
1 Boot loader (глава 23)
2 USB контроллер (главы 19,20)
3 Система сброса (глава 9) - в меньшей степени
Так же есть заметки-мысли про Загрузичк с форматом DFU и про загрузчик с форматом CDC (usb-com) где Загрузчик поддерживает систему команд программатора AVR500, на основе проекта LUFA.

Re: AT90USBxxx

zubr » 12 янв 2010, 22:53

мои 5 копеек:
1. отличная либа LUFA: http://www.fourwalledcubicle.com/LUFA.php
Огромное количество примеров (звуковая карта/ CDC/ HID/ DFU/...)
2. http://dfu-programmer.sourceforge.net/ как альтернатива тем кто не любит FLIP
3. Teensy http://www.pjrc.com/teensy/
- Порт ардуино - работает через штатный USB без FTDI!!!
- альтернативный компактный бутлодер (512 байт)

best regards :)

Re: AT90USBxxx

*Egor* » 11 мар 2010, 11:51

[quote="WickedGoblin"]Т.к. для себя делал перевод datasheet-а от AT90USB162 можно выложить данну инфу тут.
Если не затруднит :oops:

Re: AT90USBxxx

vvk74 » 17 мар 2010, 22:57

Сегодня час убил на попытки запустить встроеный бутлоадер at90usb162, а причина оказалась в том, что по умолчанию в fuse битах был установлен внешний кварц хотя в ДШ указано что устанавливается внутренний RC генератор. при этом fuse без полного стирания не изменяются (защищен от записи) вот такие вот грабли обнаружил.

Re: AT90USBxxx

vadinator » 17 мар 2010, 23:23

- Порт ардуино - работает через штатный USB без FTDI!!!
- альтернативный компактный бутлодер (512 байт)

а можно об этом поподробнее?

Re: AT90USBxxx

vadinator » 17 мар 2010, 23:29

...ага, вроде нашёл... :oops: Teensyduino называется...

Re: AT90USBxxx

avr123.nm.ru » 18 мар 2010, 00:57

vvk74 писал(а):Сегодня час убил на попытки запустить встроеный бутлоадер at90usb162, а причина оказалась в том, что по умолчанию в fuse битах был установлен внешний кварц хотя в ДШ указано что устанавливается внутренний RC генератор. при этом fuse без полного стирания не изменяются (защищен от записи) вот такие вот грабли обнаружил.


Дак без кварца он наверно врядли смогбы грузится по USB.

Re: AT90USBxxx

blindman » 18 мар 2010, 01:58

vvk74 писал(а):Сегодня час убил на попытки запустить встроеный бутлоадер at90usb162, а причина оказалась в том, что по умолчанию в fuse битах был установлен внешний кварц хотя в ДШ указано что устанавливается внутренний RC генератор. при этом fuse без полного стирания не изменяются (защищен от записи) вот такие вот грабли обнаружил.

Цитату из даташита в студию

Re: AT90USBxxx

vvk74 » 18 мар 2010, 21:31

"6.3.1 Default Clock Source
The device is shipped with internal RC oscillator at 8.0 MHz and with the fuse CKDIV8 programmed,
resulting in 1.0 MHz system clock. The startup time is set to maximum and time-out
period enabled. (CKSEL = "0010", SUT = "10", CKDIV8 = "0"). The default setting ensures that
all users can make their desired clock source setting using any available programming interface."

вроде как эта

Re: AT90USBxxx

avr123.nm.ru » 18 мар 2010, 21:41

в прелиминари так было написано - я в своем архиве посмотрел.

а в новом даташите - http://www.atmel.com/dyn/resources/prod ... oc7707.pdf

6.3.1 Default Clock Source

The device is shipped with low power crystal oscillator and with the fuse CKDIV8 programmed.
The startup time is set to maximum and time-out period enabled. (CKSEL = "1110", SUT = "01",
CKDIV8 = "0").

т.е. кварц снаружи, но делитель на 8 всеравно включен. но он пофиг для ФАПЧ

6.9 PLL

The PLL is used to generate internal high frequency (48 MHz) clock for USB interface, the PLL
input is generated from an external low-frequency (the crystal oscillator or external clock input
pin from XTAL1
).

6.9.1 Internal PLL for USB interface
The internal PLL in AT90USB82/162 generates a clock frequency that is 6x multiplied from nom-
inally 8 MHz input. The source of the 8 MHz PLL input clock is the output of the internal PLL
clock prescaler that generates the 8 MHz.

========

Вобщем нужен кварц 8 Мгц

А по документу "USB DFU Bootloader doc7618.pdf" там автонастройка для кварцев 2 4 6 8 10 12 16 МГц
Последний раз редактировалось avr123.nm.ru 18 мар 2010, 21:45, всего редактировалось 1 раз.

Re: AT90USBxxx

vvk74 » 18 мар 2010, 21:44

avr123.nm.ru писал(а):
Дак без кварца он наверно врядли смогбы грузится по USB.

ну ведь грузится же

Re: AT90USBxxx

avr123.nm.ru » 18 мар 2010, 21:46

Ну дак почитал жишь я да новый даташит скачал ап чем выше и доложил.


cron
Rambler\'s Top100 Mail.ru counter