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

 
 
> MEGA128 + USB на USBN9604, Комп не видит девайс
nagserg
сообщение Jul 27 2005, 13:35
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 12-05-05
Пользователь №: 4 940



Решил изучить USB. Вот собрал USB на USBN9604 с сайта USB Masters, только вместо AT90S8515 поставил MEGA128, перевел программу в CodeVisionAVR, залил в МЕГУ, при подсоединении к компу, он (комп) даже не видит, что подключено новое устройство, в чем может быть проблема?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
MALLOY2
сообщение Jul 27 2005, 14:28
Сообщение #2


Знающий
****

Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317



драйвер сдесь не причем, до него еще дело не дошло, или дошло но стоит уже какойцто кривой драйвер.


1) подключить девайс к компу в менеджере устройств посмотреть не появляется какое нибудь устройство.

2) скорее всего у вас что то в схеме не то, полярность проводов D+ D - не ту резистора подтягивающего и т.д.
Go to the top of the page
 
+Quote Post
nagserg
сообщение Jul 28 2005, 06:15
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 12-05-05
Пользователь №: 4 940



Цитата(MALLOY2 @ Jul 27 2005, 17:28)
подключить девайс к компу в менеджере устройств посмотреть не появляется какое нибудь устройство.
*
При включении сейчас появляется в правом нижнем углу "USB Device Not Recognized". И в менеджере устройств появляется Unknown Device.
Go to the top of the page
 
+Quote Post
pulsar-17
сообщение Jul 28 2005, 20:11
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 32
Регистрация: 7-12-04
Из: Московская область
Пользователь №: 1 376



Цитата(nagserg @ Jul 28 2005, 09:15)
Цитата(MALLOY2 @ Jul 27 2005, 17:28)
подключить девайс к компу в менеджере устройств посмотреть не появляется какое нибудь устройство.
*
При включении сейчас появляется в правом нижнем углу "USB Device Not Recognized". И в менеджере устройств появляется Unknown Device.
*


Эти сообщения скорее всего говорят о том, что устройство подключено к порту, но не отвечает на запросы или отвечает криво(на этом не одну собаку скущал smile.gif). Как правило, это связано с неправильной инициализацией самой USBN, кривым описанием дескрипторов или софтом. На кривоту дескрипторов нарывался при переходе на другой компилер, он структуры с описанием config, interface и endpoint дескрипторов расположил не в заданном порядке, а наоборот. Итог те же сообщения винды.
Запрос конфигурации проходит в два этапа:
1) запрос собственно config дескриптора(в нем прописана помимо его собственного размена размер всей конфигурации в байтах складывающийся из: размер config_desc + размер interface_desc * количество интерфейсов + размер всех endpoint_desc для всех интерфейсов ).
2) запрос всей конфигурации. Он отличается от первого только тем, что в запросе от хоста передается размер всей конфигерации, а не размер только config_desc.
Дескрипторы должны передаваться строго иерархически:
config_desc
interface_desc_1
endpoint_desc_1_1
...
endpoint_desc_1_N
interface_desc_2
endpoint_desc_2_1
...
endpoint_desc_2_N
...
Если это нарушить, то ничего работать небудет. На это надо обратить особое внимание при смене компилятора.

Проверьте:
1. наличие частоты на 28 ноге. На схеме нет резистора на 1МОм между 26 и 27 ногами, у меня на некоторых кристаллах незапускался генератор. Если нет осциллографа можно прочитать из USBNки RID регистр, если в младших 4х разрядах не 2(3) то генератор не работает.
2. Если тактовая частота меги128 > 12МГц то работать скорее всего не будет, даже если поставить все такты ожидания на шину. У меня на меге стабильно работает при 2 тактах ожидания на частоте 11.0592МГц. Выше 12МГц нельзя !!!(см доку на USBN и мегу128) у USBN очень медленная шина!!! Можно понизить тактовую частоту меги без перепаивания кварца записав в регистр XDIV 0xff и поделив этим частоту кварца на 2.
3. генерит ли USBN прерывания и ловит ли их mega128.
4. Правильность описания и передачи device_desc.
5. Правильность формированиия PIDов
6. Правильность описания и вызачи конфигурации

А самое лутшее, если у Вас есть rs232 выведите на терминалку все запросы приходящие от хоста и ваши ответы на них. Сразу будет понятно на каком этапе все затытается.

Инициализирую так("лишнее" закоментировал):
unsigned char initUSBN9604(void)
{
unsigned short i;

/* give a soft reset, then set ints to push pull, active hi or lo */
putUSBN(_MCNTRL,SRST);
/* Wait end of reset */
while(getUSBN(_MCNTRL) & SRST);

putUSBN(_MCNTRL, VGE+INT_L_P);
i = 0x4000; while(i--);

/* checking RID */
if ((getUSBN(_RID) & 0x0f) != 0x02) return 0xff;

/* initialize the clock generator set clock freq 24MHz */
putUSBN(_CCONF, clk24);

/* set default address, enable EP0 only */
putUSBN(_FAR,AD_EN + 0x00);
putUSBN(_EPC0, 0x00);

/* set up interrupt masks */
putUSBN(_NAKMSK,NAK_O0); /* NAK evnts */
// putUSBN(_NAKMSK,NAK_O0+NAK_I2); /* NAK evnts */
putUSBN(_TXMSK, TXFIFO0+TXFIFO1+TXFIFO2+TXFIFO3); /*TX events*/
putUSBN(_RXMSK, RXFIFO0+RXFIFO1+RXFIFO2+RXFIFO3); /*RX events*/
putUSBN(_ALTMSK, RESET_A); /*ALT evnts*/
putUSBN(_MAMSK, (INTR_E + RX_EV + NAK + TX_EV + ALT));

/*enable the receiver and go operational ************************/
FLUSHTX0; /* flush TX0 and disable */
putUSBN(_RXC0,RX_EN); /* enable the receiver */

putUSBN(_NFSR,OPR_ST); /* go operational */
putUSBN(_MCNTRL,VGE+INT_L_P+NAT); /* set NODE ATTACH */

getUSBN(_ALTEV);

return 0;
}
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- nagserg   MEGA128 + USB на USBN9604   Jul 27 2005, 13:35
- - m16   попытался скачать шит на USBN9604 с указанн...   Jul 27 2005, 14:18
|- - nagserg   Цитата(pulsar-17 @ Jul 28 2005, 23:11)Ци...   Nov 1 2005, 07:13
- - BVU   Если Вы правильно организовали USB стек-протокол(с...   Jul 28 2005, 08:39
- - drka   Такая же связка контроллер + USBN. Проблема в том,...   Nov 1 2005, 10:13
- - Lynxyk   офф\ Сяду на хвост Не совсем понял архитекту...   Nov 19 2005, 16:32
- - drka   Думаю проблем не будет. В самой USBN нет ничего от...   Nov 20 2005, 13:47
- - Lynxyk   2 drka те весь протокол реализовывается программно...   Nov 20 2005, 15:18
|- - drka   Цитата(Lynxyk @ Nov 20 2005, 20:18) те ве...   Nov 20 2005, 15:29
|- - Alechin   Вот мой исходник драйвера USBN9604, правда с 51 ко...   Nov 24 2005, 15:56
- - drka   В данный момент близок к реализации Mass Storage D...   Nov 24 2005, 16:50
|- - Igor26   Цитата(drka @ Nov 24 2005, 19:50) В данны...   Nov 25 2005, 06:11
||- - drka   Цитата(Igor26 @ Nov 25 2005, 11:11) Крайн...   Nov 25 2005, 06:45
||- - Igor26   Цитата(drka @ Nov 25 2005, 09:45) Цитата(...   Nov 25 2005, 07:29
|- - galjoen   Цитата(drka @ Nov 24 2005, 19:50) В данны...   Jan 7 2010, 18:41
- - IgorKossak   Немного не по теме Иногда, когда дивайс не опре...   Nov 25 2005, 09:13
|- - Igor26   Цитата(IgorKossak @ Nov 25 2005, 12:13) Н...   Nov 25 2005, 09:43
- - public32   Друзья, уже с неделю мучаюсь с usbn9604, подружить...   Jan 7 2010, 18:14
- - public32   покупал в чипе-дипе http://www.chipdip.ru/product0...   Jan 7 2010, 19:04
|- - galjoen   Цитата(public32 @ Jan 7 2010, 22:04) поку...   Jan 7 2010, 19:31
- - public32   спасибо большое! да, все более-менее понятно.....   Jan 8 2010, 16:03


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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 08:40
Рейтинг@Mail.ru


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