Страница 1 из 2

Выбор МК со встроенным USB интерфейсом AVR

Добавлено: Вс ноя 29, 2009 02:09:42
Twen
Здравствуйте все.Мне интерестно есть вообще МК AVR со встроенным USB интерфейсои. Вот нужно подобрать максимально простой по ареферии микроконтроллер с USB интефейсом. Кто работал стаким подскажите , желательно , чтобы он был фирмы Atmel AVR, так как я с такими работал. Хочу подключить Веб-камеру к ниму.

Добавлено: Вс ноя 29, 2009 02:43:10
Twen
Я тут нашел AT90USB82. Вроде не дорогой. Кто что еще предложит ?

Добавлено: Вс ноя 29, 2009 03:30:53
KT315B
Чтоб вебкамеру подключить - тут не USB интерфейс нужен (устройство/функция), а USB-хост. А насчет AVR с хостом на борту я очень сильно сомневаюсь...

Добавлено: Вс ноя 29, 2009 03:51:48
Twen
KT315B писал(а):Чтоб вебкамеру подключить - тут не USB интерфейс нужен (устройство/функция), а USB-хост. А насчет AVR с хостом на борту я очень сильно сомневаюсь...


То есть нужен как бы встроеный хост контроллер у AVR? А у тех контроллеров где пишется встроенный интерф. USВ что подразумевается?

Добавлено: Вс ноя 29, 2009 03:55:21
Negor
Вот как почти у всех есть аппаратный UART так у этих есть аппаратный USB.

Добавлено: Вс ноя 29, 2009 04:39:54
KT315B
Negor писал(а):аппаратный USB.


Только не хост, а устройство(несколько функций)... Если не понимаете что это такое, почитайте про устройство USB.

Добавлено: Вс ноя 29, 2009 06:55:31
Twen
Вообщем основная проблема заключается в том, что МК со встроенным интерфейсом не сможет работать на скорость 12 Мбит за сек., стандартной для USB 2.0, так как нету хоста,типа отдельного контроллера для работы с ним. Я так понял?

Добавлено: Вс ноя 29, 2009 07:01:18
KT315B
Не совсем. Есть USB-хост - это устройство, к которому подключаются хабы, и, собственно устройтва (функции). А в контроллерах, как правило USB как раз реализовано в виде устройства поддерживающего от одной до нескольких функций. То есть к хосту такой контроллер подключить можно, а другое устройство к такому контроллеру подключить нельзя (ну не подключишь-же вебкамеру к другой вебкамере, например?). Можно посмотреть в сторону Vinculum от FTDI - это как раз USB хост с процессорным ядром (http://www.ftdichip.com/FTProducts.htm#Vinculum), а я как понял - именно это и надо.

Добавлено: Вс ноя 29, 2009 14:19:18
ARV
в последнее время число МК семейства AVR со встроенной поддержкой USB пополнилось рядом "средних" - например, Atmega8U2, atmega16U2 и другие (если на конце U или U2 - значит, встроен аппаратный USB/USB2)

Добавлено: Вс ноя 29, 2009 14:46:11
Секретный кот
Интересно, на какой частоте должен работать МК, чтобы тянуть обмен по USB2 :shock:

Добавлено: Вс ноя 29, 2009 16:21:26
DrWatson
Не надо путать частоту тактирования ядра и частоту тактирования USB модуля они могут быть и разными.
Datasheet ATmega8U2/16U2/32U2 писал(а):– Complies fully with Universal Serial Bus Specification REV 2.0
– 48 MHz PLL for Full-speed Bus Operation : data transfer rates at 12 Mbit/s
– Fully independant 176 bytes USB DPRAM for endpoint memory allocation
– Endpoint 0 for Control Transfers: from 8 up to 64-bytes
– 4 Programmable Endpoints:
IN or Out Directions
Bulk, Interrupt and IsochronousTransfers
Programmable maximum packet size from 8 to 64 bytes
Programmable single or double buffer
– Suspend/Resume Interrupts
– Microcontroller reset on USB Bus Reset without detach
– USB Bus Disconnection on Microcontroller Request

По русски: Отдельная ПЛИСый PLL-генератор на 48МГц и отдельный буфер для USB, плюс прерывания по событиям от USB[/b]

Добавлено: Вс ноя 29, 2009 16:48:19
igorkov
Обо всем по-порядку.
1) Для подключения USB-камеры к контроллеру в последнем требуется USB-хост. Программных его реализаций для микроконтроллеров я не видел (разве что заглохшие обсуждения по реализации его на пропеллере).
2) Аппаратных реализаций USB-хоста в AVR не встречал. Везде где указан USB подразумевается именно клиент. Хост есть только в AVR32, но это уже совсем другая весовая категория. Вообще хост требует довольно много оперативки для построения дерева
устройств и хранения дескрипторов. Конечно, поддержку хабов можно и не делать, ограничившись одним устройтсвом, это сильно упростит ситуацию и уменьшит требования к памяти. Еще с хостами есть ARM7 контроллеры, к примеру NXP LPC2388. Но это опять-таки другая весовая категория.
3) WEB-камеры, если не ошибаюсь, для видеопотока используют изохронные передачи. Они самые противные и даже могут не поддерживаться хостом того же LPC2388 ввиду своего размера.

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

Добавлено: Вс ноя 29, 2009 17:13:04
ARV
DrWatson писал(а):По русски: Отдельная ПЛИС-генератор на 48МГц и отдельный буфер для USB, плюс прерывания по событиям от USB
только не ПЛИС-генератор, а PLL-генератор, по-русски это умножитель частоты с ФАПЧ

Добавлено: Вс ноя 29, 2009 21:03:23
DrWatson
Ох уж эти нерусские аббревиатуры - вечно с ними путаница - исправил. :)
Посмотрел на Элитане цены на эти меги - разница между ATmega8U2 и ATmega32U4 невелика почему-то, а U4 выглядят еще интереснее чем двойки и цена у них примерно как у FT232. Так что IMHO чем огород городить с ФТшкой, лучше взять сразу одну из этих мег.

Добавлено: Пн ноя 30, 2009 01:50:53
Секретный кот
DrWatson писал(а):Не надо путать частоту тактирования ядра и частоту тактирования USB модуля они могут быть и разными.

Это и так понятно. Вопрос в том, что МК физически не сможет слать/принимать данные со скоростью 480 Mbps, хоть и USB порт на ней будет работать. Тогда зачем нужен USB2.

Добавлено: Пн ноя 30, 2009 02:14:24
Qwertty
igorkov писал(а):2) Аппаратных реализаций USB-хоста в AVR не встречал. Везде где указан USB подразумевается именно клиент. Хост есть только в AVR32

Сложно не встретить. В половине, если не больше AVR с USB он таки есть. Несколько урезанный, но все же есть.
Желающим читать AN от атмела. Например:
AVR280: USB Host CDC Demonstration - http://atmel.com/dyn/resources/prod_doc ... oc7727.pdf
AVR287: USB Host HID and Mass Storage Demonstration - http://atmel.com/dyn/resources/prod_doc ... oc8229.pdf
Ну и вообще сходить все же на сайт производителя. Иногда помогает не делать неверных выводов. Но в случае с камерой все равно дохлый номер. Даже если она сможет функционировать и в Full Speed режиме, а не только в Hi Speed, для ее подключения придется писать драйвер. А как это делать производитель обычно скромно умалчивает. И вообще никакой документации на камеры обычно в свободный доступ не попадает. Кроме рекламы ес-но :) Остается еще правда вариант покурить исходники драйверов Linux-a, но это явно не очень просто. Да и занять может несколько лет. А самый главный вопрос - зачем АВР-у камера? Вебкамеры выдают несжатый поток - 3 байта на пиксель, даже в VGA разрешении (640*480) кадр занимает почти мегабайт. 1 кадр! А прилетает он за пару десятков миллисекунд. Куда АВР-у его складывать то? Нужен процессор с размером ОЗУ как минимум на 1 кадр. И это будет уже не АВР. Да и не АРМ7, ему вебкамеры тоже не особо по зубам. Кроме отдельных кадров раз в секунду и ему ничего не светит. А АВР-у и это не удастся.
ИМХО забудьте.

Добавлено: Пн ноя 30, 2009 08:02:14
ARV
есть камеры, которые выдают JPEG-кадры прямо по UART - несколько кадров в секунду получить можно. так что, как вы сами говорили, стоит обратить внимание на документацию - это помогает иной раз не сделать неверных утверждений :) (я про "AVR не светит")

Добавлено: Пн ноя 30, 2009 16:22:01
Qwertty
ARV писал(а):есть камеры, которые выдают JPEG-кадры прямо по UART - несколько кадров в секунду получить можно. так что, как вы сами говорили, стоит обратить внимание на документацию - это помогает иной раз не сделать неверных утверждений :) (я про "AVR не светит")

Конечно, есть и такие. Типа С328, правда с отвратительным качеством картинки. А есть еще аналоговые, есть с Image Sensor Interface и много других. Однако тут указана именно Веб камера с USB интерфейсом. А у нее нет UART, и JPEG она не выдает. Если Вы знаете как заставить USB камеру выдать JPEG по UART непременно поделитесь с общественностью :)

Добавлено: Вт дек 01, 2009 10:58:51
igorkov
Qwertty писал(а):Сложно не встретить. В половине, если не больше AVR с USB он таки есть. Несколько урезанный, но все же есть.

Очень интересная информация. На счет половины, Вы, наверное, все же переборщили, но факт: хост добрался и до AVR. Вот только с ценами на данные чипы подстава какая-то. Конечно может не там сравниваю, но стоить на одном уровне с названным мною LPC2388 они явно не должны.

Re: Выбор МК со встроенным USB интерфейсом AVR

Добавлено: Пн янв 10, 2011 13:34:56
delev
Всем привет!
Нужно записать ток сварочного инвертора (есть подозрение, что он не может поддерживать заданный ток при сварке) примерно в течение минуты. Есть LEM, который можно подключить к атмелу и сохранить значения тока в обычной флешке на 4 Г. Затем прочитать ее на ПК.
Как подключить флешку и не спалить?
Как сформировать в ней hex, bin, или txt файл?
Спасибо за внимание!