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

 
 
> AT90USB1286, виртуальный COM-порт
Visor
сообщение Jan 11 2008, 07:44
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 240
Регистрация: 23-03-07
Пользователь №: 26 428



Попробывал реализовать виртуальный COM-порт на AT90USB1286. За основу взял пример от Атмел (at90usb128-demo-cdc-1_0_3.zip). Подправил частоту (16МГц) и тупо загрузил, не пошло! Виндовс подключение устройства определяет, но тип устройства нет.
Может кто-то работал с этим примером, какие были проблемы (если были)? unsure.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Visor
сообщение Jul 8 2008, 09:57
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 240
Регистрация: 23-03-07
Пользователь №: 26 428



Обнаружилось следующее:
Когда размер принимаемого либо отправляемого пакета данных кратен размеру ENDPOINT, он застревает в хосте. Пакет любой другой длины передаётся без проблем.
Подскажите в чём дело? И нужно хорошее описание по USB.
Go to the top of the page
 
+Quote Post
prottoss
сообщение Jul 8 2008, 10:07
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(Visor @ Jul 8 2008, 17:57) *
Обнаружилось следующее:
Когда размер принимаемого либо отправляемого пакета данных кратен размеру ENDPOINT, он застревает в хосте. Пакет любой другой длины передаётся без проблем.
Подскажите в чём дело? И нужно хорошее описание по USB.
После такого пакета нужно посылать хосту пакет нулевой длины - это сигнал о завершении передачи


--------------------
Go to the top of the page
 
+Quote Post
galjoen
сообщение Jul 8 2008, 14:16
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(prottoss @ Jul 8 2008, 14:07) *
После такого пакета нужно посылать хосту пакет нулевой длины - это сигнал о завершении передачи

Совершенно верно.
Но это происходит только в том случае если хост "не знает" длины передаваемых данных. Если длина известна хосту - передача завершается без посылки пакета 0й длины. В случае bulk передачи проблем нет - можно послать пакет 0й длины. А в случае передачи через контрольный канал (EP0) наличие в передатчике EP0 пакета 0й длины разрешённого для передачи, но незапрошенного хостом, может привести к сбою. Это если мы не успеем очистить передатчик EP0 после получения пакета OUT 0й длины с DATA1 (управляющая запись на эту транзакцию), а хост пошлёт следующий пакет SETUP (следующая транзакция) и сразу-же прочтет из передатчика EP0 пакет IN 0й длины (оставшийся) т.е. получится управляющее чтение (на следующую транзакцию). Я с такой ошибкой сталкивался. Пришлось слать пакет 0й длины по NAK-ам (если данные были кратны пакету EP). А заморочек с обработкой посылки NAK-ов хосту немало. Но я ничего лучше не придумал.
А вы как узнаёте, что нужно пакет 0й длины хосту слать? Без обработчика NAK-ов удаётся обойтись?
Go to the top of the page
 
+Quote Post
prottoss
сообщение Jul 8 2008, 14:30
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(galjoen @ Jul 8 2008, 22:16) *
Я не использовал AT90USBxxx, но по большому счету это относится ко всему, что работает по USB. Хост в любом случае не знает, сколько данных ему забирать, потому что он железяка.smile.gif Так же не знает об этом и ПО, которое хостом управляет. ПО может только думать, ЧТО, если количество данных меньше, чем размер буфера конечной точки (EP), значит функция больше не будет передавать данные. Если количество принятых хостом данных равно размеру буфера ЕР, значит функция передала не все данные, и хост будет опрашивать функцию на предмет присутсвия пакета в ЕР. Чтобы сообщить хосту, что данных для передачи больше нет, мы пишем в ЕР нулевой пакет.


--------------------
Go to the top of the page
 
+Quote Post
Visor
сообщение Jul 26 2008, 15:41
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 240
Регистрация: 23-03-07
Пользователь №: 26 428



prottoss спасибо большое! Помогло!
Со стороны МК (USB Device) проблема решилась, но попался один РС (USB Host), который глючит по аналогичной причине, вплоть до потери устройства. Пришлось выкручиваться добавляя лишний байт, чтоб размер данных был не кратен размеру Endpoint.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Nov 5 2008, 09:41
Сообщение #7


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Два вопроса про питание AT90USB647 от порта

1. USB-коммуникация прекращает работать при понижении Vbus ниже 4.4 вольта. Это норма или патология?
Подробно моя проблема в следующем: устройство (АЦП с CDC-USB выходом) питается от Vbus и потребляет ток 200 мА, в то время как USB-порт столько ему не дает (по умолчанию должен давать 100 мА). В результате ограничения по току, напряжение падает до 4-х вольт, а на этом напряжении устройство не определяется компьютером, из-за чего не может попросить больше тока.
Это у всех так или я где-то напортачила? Схема соединения примитивная - все напряжения одним пучком Vbus+Uvcc+Avcc+Dvcc (Figure 21-3). Внутренний регулятор у меня включен.
По даташиту непонятно, должно ли работать при напряжении ниже 4.4 вольта. С одной стороны питание МК допустимо снижать до 3.4 вольта, а с другой стороны ничего не говорится про Ubus, который в то время отсоединен из пучка. Опять же сказано, что передающие линии D- и D+ имеют потенциал 1.4 вольта (если не в режиме хоста), а если так, то должно хватать.
И вообще, как мне быть, если у меня устройству нужно 200 мА, а начальное напряжение USB-порта при таком токе дает только 4 вольта?

2. Почему-то не хочет USB-порт добавлять ток, даже когда я его об этом вежливо прошу.
Устанавливаю:
#define CONF_ATTRIBUTES USB_CONFIG_BUSPOWERED
#define MAX_POWER 200 // 400 mA
USB_CONFIG_BUSPOWERED пробовала и 0x80 (как в апликэйшен), и 0x00 (как в книге Агурова), а толку чуть - какой был хилый ток, таким и остался. На разных компьютерах пробовала - результат неутешительный - сколько давал порт тока, столько и дает при любых MAX_POWER.
В чем тут может быть дело?

Сообщение отредактировал Xenia - Nov 5 2008, 10:39
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Visor   AT90USB1286, виртуальный COM-порт   Jan 11 2008, 07:44
- - GDI   Вы бы сам файл прикрепили, а то тут частенько прос...   Jan 11 2008, 08:07
- - prottoss   Цитата(Visor @ Jan 11 2008, 14:44) Попроб...   Jan 11 2008, 10:50
|- - Visor   Цитата(prottoss @ Jan 11 2008, 17:50) Обы...   Jan 11 2008, 15:28
|- - prottoss   Цитата(Visor @ Jan 11 2008, 22:28) Спасиб...   Jan 11 2008, 15:45
|- - Visor   Цитата(prottoss @ Jan 11 2008, 22:45) В т...   Jan 11 2008, 15:55
|- - prottoss   Цитата(Visor @ Jan 11 2008, 22:55) Внутри...   Jan 11 2008, 16:00
|- - Visor   Цитата(prottoss @ Jan 11 2008, 23:00) Я ж...   Jan 11 2008, 16:12
- - Visor   Нашел ошибку в коде примера, неверный PLL clock Pr...   Jan 12 2008, 07:12
- - TinyQ   а при установке драйвера at90usbxxx_cdc.inf указыв...   Jan 13 2008, 09:13
|- - Visor   Цитата(TinyQ @ Jan 13 2008, 16:13) а при ...   Jan 13 2008, 16:42
- - TinyQ   а VID_03EB&PID_2018 совпадают у меня этот прим...   Jan 13 2008, 23:01
|- - Visor   Цитата(TinyQ @ Jan 14 2008, 06:01) а VID_...   Jan 14 2008, 09:26
- - TinyQ   Может проблема по плате?   Jan 14 2008, 23:53
- - Visor   Чип перестал работать, просто в один прекрасный де...   Feb 2 2008, 16:11
|- - Xenia   У меня появился новый животрепещущий вопрос по тем...   Jan 20 2009, 13:53
|- - aesok   Цитата(Xenia @ Jan 20 2009, 16:53) Возмож...   Jan 20 2009, 15:01
- - Xenia   Цитата(Visor @ Jan 12 2008, 11:12) Нашел ...   Apr 1 2008, 13:30
|- - Visor   Цитата(Xenia @ Apr 1 2008, 21:30) Укажите...   Apr 2 2008, 04:38
- - Xenia   Цитата(Visor @ Apr 2 2008, 08:38) Ошибка ...   Apr 2 2008, 12:08
|- - Visor   Цитата(Xenia @ Apr 2 2008, 20:08) А у вас...   Apr 2 2008, 14:15
|- - Xenia   Цитата(Visor @ Apr 2 2008, 18:15) Я работ...   Apr 2 2008, 22:08
|- - Visor   Цитата(Xenia @ Apr 3 2008, 06:08) Но ведь...   Apr 3 2008, 02:55
|- - Xenia   Цитата(Visor @ Apr 3 2008, 06:55) Нет, у ...   Apr 3 2008, 08:57
|- - Xenia   На WinXP работает, а на Vista не загружается драйв...   Apr 4 2008, 11:13
|- - Visor   Цитата(Xenia @ Apr 4 2008, 19:13) На WinX...   Apr 26 2008, 17:09
||- - Xenia   Цитата(Visor @ Apr 26 2008, 21:09) Вы реш...   May 14 2008, 04:08
||- - Visor   Цитата(Xenia @ May 14 2008, 12:08) INF-фа...   May 17 2008, 18:39
|- - Visor   Цитата(Xenia @ Apr 4 2008, 18:13) На WinX...   Nov 2 2009, 12:39
|- - manul78   Цитата(Visor @ Nov 2 2009, 15:39) Ну вот,...   Nov 7 2009, 12:42
|- - Visor   Цитата(manul78 @ Nov 7 2009, 19:42) Испол...   Nov 8 2009, 03:13
|- - SKov   Цитата(Xenia @ Nov 5 2008, 12:41) Два воп...   Nov 5 2008, 14:26
|- - Xenia   Цитата(SKov @ Nov 5 2008, 18:26) Говорят,...   Nov 5 2008, 23:35
|- - SKov   Цитата(Xenia @ Nov 6 2008, 02:35) Материн...   Nov 6 2008, 00:21
|- - Xenia   Цитата(SKov @ Nov 6 2008, 04:21) Про мате...   Nov 6 2008, 09:32
|- - SKov   Цитата(Xenia @ Nov 6 2008, 12:32) Там при...   Nov 6 2008, 12:02
- - TinyQ   to Xenia уточните вы пытаетесь подключать свое ус...   Nov 7 2008, 09:07
|- - Xenia   Цитата(SKov @ Nov 6 2008, 16:02) Сомневаю...   Nov 7 2008, 11:36
|- - SKov   Цитата(Xenia @ Nov 7 2008, 14:36) Я вроде...   Nov 7 2008, 12:25
- - ARV   извините, что вмешиваюсь... мне казалось, что USB-...   Nov 7 2008, 12:37
|- - Xenia   Цитата(ARV @ Nov 7 2008, 15:37) мне казал...   Nov 7 2008, 12:55
- - GDI   ЦитатаС первым вопросом про питание я кажется сама...   Nov 7 2008, 14:17
- - Dj.Shadow   Xenia, а еще можно DC\DC подключить через мел...   Nov 7 2008, 18:16
|- - Xenia   Заменила кварц 16 МГц на 8 МГц и ... ничего не изм...   Nov 7 2008, 21:40
|- - Petka   Цитата(Xenia @ Nov 8 2008, 00:40) Заменил...   Nov 8 2008, 08:13
|- - Xenia   Цитата(Petka @ Nov 8 2008, 11:13) смотрю ...   Nov 8 2008, 10:16
|- - Petka   Цитата(Xenia @ Nov 8 2008, 13:16) Судя по...   Nov 8 2008, 11:24
|- - Xenia   Цитата(Petka @ Nov 8 2008, 14:24) Как вы ...   Nov 8 2008, 12:38
|- - Petka   Цитата(Xenia @ Nov 8 2008, 15:38) А у мен...   Nov 8 2008, 12:48
|- - Xenia   Цитата(Petka @ Nov 8 2008, 15:48) 1) а ос...   Nov 8 2008, 13:47
|- - Petka   Цитата(Xenia @ Nov 8 2008, 16:47) Если пи...   Nov 8 2008, 16:41
- - Xenia   Проблема с напряжением на USB разрешилась совершен...   Nov 8 2008, 22:50
|- - aesok   Цитата(Xenia @ Nov 9 2008, 02:50) Принтер...   Nov 9 2008, 01:27
|- - SKov   Цитата(Xenia @ Nov 9 2008, 01:50) ... Что...   Nov 9 2008, 10:01
- - Xenia   Разбралась в причине "зависания" МК при ...   Nov 9 2008, 22:56
|- - Petka   Цитата(Xenia @ Nov 10 2008, 01:56) Разбра...   Nov 10 2008, 05:28
|- - Visor   Цитата(Xenia @ Nov 10 2008, 06:56) Нашла ...   Nov 10 2008, 10:19
|- - 777777   Небольшой оффтоп - Xenia, а где вы берете (планиру...   Nov 10 2008, 10:35
|- - Xenia   Цитата(777777 @ Nov 10 2008, 13:35) Небол...   Nov 10 2008, 11:41
|- - SKov   Хорошая ссылка. http://pdfserv.maxim-ic.com/en/an/...   Nov 11 2008, 11:44
|- - Xenia   Цитата(SKov @ Nov 11 2008, 14:44) Хорошая...   Nov 11 2008, 12:45
- - Xenia   Народ! Кто-нибудь из вас пробовал писать проши...   Nov 21 2008, 11:23
|- - aesok   Цитата(Xenia @ Nov 21 2008, 14:23) А то е...   Nov 21 2008, 12:18
||- - Xenia   Цитата(aesok @ Nov 21 2008, 15:18) Если В...   Nov 21 2008, 13:28
||- - aesok   Цитата(Xenia @ Nov 21 2008, 16:28) Здесь ...   Nov 21 2008, 14:56
|- - Visor   Цитата(Xenia @ Nov 21 2008, 19:23) Народ...   Nov 21 2008, 14:42
||- - Xenia   Цитата(Visor @ Nov 21 2008, 17:42) Я на б...   Nov 21 2008, 14:55
||- - Xenia   Цитата(Visor @ Nov 21 2008, 17:42) Кодdo ...   Nov 21 2008, 15:01
||- - Visor   Цитата(Xenia @ Nov 21 2008, 23:01) То, чт...   Nov 21 2008, 15:08
||- - Xenia   Цитата(Visor @ Nov 21 2008, 18:08) Ошибае...   Nov 21 2008, 15:14
||- - Visor   Цитата(Xenia @ Nov 21 2008, 23:14) Мда......   Nov 21 2008, 15:54
||- - aesok   В даташите же ясно написанно и нарисованно, для IN...   Nov 21 2008, 15:59
||- - Xenia   Цитата(aesok @ Nov 21 2008, 18:59) TXINI ...   Nov 21 2008, 17:30
|- - Dx!   Цитата(Xenia @ Nov 21 2008, 15:23) Народ...   Apr 29 2009, 15:21
- - tAmega   Механизм есть. Он описан в спецификации CDC, там ...   Jan 20 2009, 15:02
|- - Xenia   Цитата(tAmega @ Jan 20 2009, 18:02) Механ...   Jan 20 2009, 16:16
|- - aaarrr   Цитата(Xenia @ Jan 20 2009, 19:16) Там то...   Jan 20 2009, 16:37
|- - aesok   Цитата(Xenia @ Jan 20 2009, 19:16) ACK...   Jan 20 2009, 17:05
- - Rst7   ЦитатаНикаких посылок оттуда я посылать не могу, т...   Jan 20 2009, 16:32
- - Xenia   Цитата(Rst7 @ Jan 20 2009, 19:32) И не на...   Jan 20 2009, 16:46


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

 


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


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