реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> AT90USB, нужна помощь
Fedor Budylin
сообщение Mar 30 2009, 09:08
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 7-10-08
Пользователь №: 40 746



Добрый день.

Изучаю контроллер AT90USB82. Для начала нужно что бы просто устройство определялось как USB. Задача сверх типичная, но почему-то не могу найти подходящего примера. Пытаюсь разобраться с атмеловским примером AT90USBxxx USB device HID generic demonstration, но как-то не очень получается sad.gif
Буду благодарен за ссылки на работающий пример USB устройства на AT90USB82.

В дальнейшем задача обеспечить передачу данных между USB и памятью EEPROM. Если бы нашлось что-то похожее, было бы вообще супер.

Тему создал в этом разделе, потмоу что я совсем начинающий и сразу сорри за собственный тупизм если что.
Заранее спасибо.
Go to the top of the page
 
+Quote Post
V_N
сообщение Mar 30 2009, 09:57
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 162
Регистрация: 12-01-09
Из: Харьков
Пользователь №: 43 270



Вот ссылка пример правда на AT90USB162 но это не существенно
http://www.pjrc.com/teensy/index.html
Причина редактирования: Удаление дублирования сообщения.
Go to the top of the page
 
+Quote Post
kimstik
сообщение Mar 30 2009, 11:34
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 46
Регистрация: 4-02-05
Из: Москва
Пользователь №: 2 430



Посмотри тут http://www.fourwalledcubicle.com/LUFA.php
Go to the top of the page
 
+Quote Post
Fedor Budylin
сообщение Apr 17 2009, 08:52
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 7-10-08
Пользователь №: 40 746



Цитата
Вот ссылка пример правда на AT90USB162 но это не существенно
http://www.pjrc.com/teensy/index.html

В этом примере используется регистр UHWCON. Но в МК AT90USB82(162) такого регистра нету вообще. За что отвечает этот регистр в других мк (ATmega32U6, AT90USB646, AT90USB128) ?

Прошивая этот пример, я надеюсь на корректное распознавание устройства. Но фигу sad.gif ConnectionStatus: DeviceFailedEnumeration. Почему так и как быть ?

Сообщение отредактировал Fedor Budylin - Apr 17 2009, 09:38
Go to the top of the page
 
+Quote Post
mikesm
сообщение Apr 17 2009, 10:03
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 158
Регистрация: 15-01-09
Из: Russia
Пользователь №: 43 426



Цитата(Fedor Budylin @ Apr 17 2009, 12:52) *
В этом примере используется регистр UHWCON. Но в МК AT90USB82(162) такого регистра нету вообще. За что отвечает этот регистр в других мк (ATmega32U6, AT90USB646, AT90USB128) ?

Прошивая этот пример, я надеюсь на корректное распознавание устройства. Но фигу sad.gif ConnectionStatus: DeviceFailedEnumeration. Почему так и как быть ?

У Atmel на страничке для AT90USB162 есть живые примеры.
http://www.atmel.com/dyn/products/tools_ca...sp?tool_id=4440
Единственное, что нужно соблюдать, подключить кварц 16Мгц. Все определяется сразу.

Сообщение отредактировал mikesm - Apr 17 2009, 10:08
Go to the top of the page
 
+Quote Post
Fedor Budylin
сообщение Apr 20 2009, 11:15
Сообщение #6


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 7-10-08
Пользователь №: 40 746



При попытке открыть hex файл Atmel Flip выдаёт ошибку.

В чем может быть дело ?
Go to the top of the page
 
+Quote Post
Fedor Budylin
сообщение Apr 28 2009, 13:35
Сообщение #7


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 7-10-08
Пользователь №: 40 746



Знающие, помогите!
Я так и не смог прошить примеры с предложенной странички sad.gif
И так и не разобрался, почему устройство не определяется.
Всё-таки, какие регистры должно минимум определить, что бы устройство определилось? В чем заключается процедура енумерайшон ?

Сообщение отредактировал Fedor Budylin - Apr 28 2009, 14:29
Go to the top of the page
 
+Quote Post
Alex11
сообщение Apr 30 2009, 09:49
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Вот рабочий проект под 90USB162. Попробуй загрузить. Определяться должен, для дальнейшего нужен драйвер.
Прикрепленный файл  SoftSmall.zip ( 169.67 килобайт ) Кол-во скачиваний: 987
Go to the top of the page
 
+Quote Post
Halfback
сообщение Jun 11 2009, 16:33
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 322
Регистрация: 28-05-05
Пользователь №: 5 512



Alex11
скачал в том числе и Ваш проект - у меня не катит. VIP и PID устройство возвращает нулевые (если вообще возвращает ибо смотрел осциллографом - сложно было понять что там к чему). Частота кварцованная и равна 8 МГц. В фьюзах делитель на 8 не стоит (да и пробовал ставить - та жа ерунда). В общем почему не работает так и не могу разобраться. Сопротивления в линии 22 Ома, подтяжка VBUS к D- через 2,7кОм (думаю такой номинал не криминален ибо обычно ставят 1,5к). Связи проверил - всё звониться. Контроллер в остальном рабочий.

Сообщение отредактировал Halfback - Jun 11 2009, 16:40
Go to the top of the page
 
+Quote Post
Alex11
сообщение Jun 11 2009, 20:49
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Делитель на 8 там противопоказан, так что здесь правильно. Подтяжка должна быть 1.5к - это по стандарту, лучше ему следовать. Скорее всего, у Вас что-то совсем не завелось, т.к. виндюки, если просто подтянуть D+ к 3.3В как раз и скажут, что устройство нашли, но VID, PID = 0.
Go to the top of the page
 
+Quote Post
Halfback
сообщение Jun 12 2009, 10:02
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 322
Регистрация: 28-05-05
Пользователь №: 5 512



Alex11
не, резистор подтянут между VBUS (питание +5В от USB) и D-
Винда говорит что устройство найдено но в диспетчере на это неизвестное устройстсво видно, что VID и PID винда от МЦУ не получает (нули).
Попробую 1,5 кОм. Но думаю врядли поможет unsure.gif
Схему включения БЕЗ подтягивающего резистора прикрепил.
Ядро МЦУ питается от линейного ИП 3,3В.

Сообщение отредактировал Halfback - Jun 12 2009, 10:47
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
topoR
сообщение Jun 12 2009, 10:56
Сообщение #12





Группа: Новичок
Сообщений: 2
Регистрация: 4-06-09
Из: Самара
Пользователь №: 49 929



Цитата(Fedor Budylin @ Apr 28 2009, 16:35) *
Знающие, помогите!
Я так и не смог прошить примеры с предложенной странички sad.gif
И так и не разобрался, почему устройство не определяется.
Всё-таки, какие регистры должно минимум определить, что бы устройство определилось? В чем заключается процедура енумерайшон ?


FLIP работает, если Вы взяли чип с завода, и не стирали его, тогда у чипа есть встроеный загрузчик, и при подключении к компьютеру
чипа, он определяется как конкретное устройство, и даже пытается зацепить драйверы.
Если Вы затерли чип, то естественно он определяться не будет и его нужно прошивать программатором через ISP или DW.
Чип должен соответствовать названию софта, которое для него предназначено. Нельзя софт под 162 модель прошивать
в 82 и т.д.
Фьюзы должны быть установлены так, как рекомендуется в софте для примера, обычно все расписано.
И наконец, насколько я знаю примеры расчитаны на кварц 16МГц.
Чтобы можно было Вам помочь, выложите схему и фото Вашей платы, а также подробнее что Вы пытались сделать.
Go to the top of the page
 
+Quote Post
Halfback
сообщение Jun 12 2009, 11:41
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 322
Регистрация: 28-05-05
Пользователь №: 5 512



Сделал подтяжку через 1,7кОм к D+ - определилось. ID и PID вроде верные.
И это на плате где МЦУ тактируется от внутреннего RC-генератора 8МГц

Сообщение отредактировал Halfback - Jun 12 2009, 11:41
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Alex11
сообщение Jun 14 2009, 21:04
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



подтяжка к D- приводит к определению устройства как Low Speed, в моем проекте на это ничего не рассчитано. Тактироваться лучше от кварца, стабильность RC явно противоречит спецификации USB. Если и работает, то будет очень неустойчиво.
Go to the top of the page
 
+Quote Post
777777
сообщение Jun 15 2009, 06:19
Сообщение #15


Профессионал
*****

Группа: Участник
Сообщений: 1 091
Регистрация: 25-07-07
Из: Саратов
Пользователь №: 29 357



Цитата(Halfback @ Jun 12 2009, 15:41) *
Сделал подтяжку через 1,7кОм к D+ - определилось. ID и PID вроде верные.
И это на плате где МЦУ тактируется от внутреннего RC-генератора 8МГц

Я фигею.
Во-первых, для подтяжки есть внутренний резистор, включаемый битом DETACH в регистре UDCON. Вы, вообще, даташит читали?
Во-вторых, тактироваться можно только от кварца, RC-генератор не обеспечит нужной точности, уж это должно быть очевидно и без даташита.
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 07:03
Рейтинг@Mail.ru


Страница сгенерированна за 0.02193 секунд с 7
ELECTRONIX ©2004-2016