Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: USB
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > RS232/LPT/USB/PCMCIA/FireWire
Страницы: 1, 2, 3, 4, 5, 6
listener
Цитата(SKov @ Oct 4 2006, 13:35) *
Осталось только понять, от чего это зависит wink.gif От драйвера?
...
Остается вопрос : это все - свойства драйвера VCP ? особенностей реализации CP2102 ?
Или еще что-то? (Про причину - недостаток знаний у разработчика - я уже и сам догадался wink.gif)


В основном, это зависит действительно от драйвера. Когда в драйвер поступает запрос на чтение/запись, он разбивается на URB, соответствующие IN или OUT пакету. В хосте из них собирается расписание(schedule) (в UHCI - пофреймово, в OHCI - глобально).
UHCI гораздо более распространен (все контроллеры от Intel и VIA), поэтому, целесообразно исходить, что используется именно он.
Что получается: Если запрос целиком помещается в буфер драйвера, он отправляется подряд, и все его URB укладываются в один фрейм. Теоретически, запросы на чтение не должны мешать запросам на запись, т.к. они относятся к разным эндпойнтам, и запросто могут умещаться в тот же фрейм (что и наблюдается на мелких пакетах).

Дальше - мои предположения (т.к. сам я с CP2102 не работал, и, тем более, в драйвере с дизассемблером не копался). Если в протоколе используются какие-то команды для flow control - они запросто могут идти не как bulk, а как interrupt. В этом случае, каждый запрос состояния/передача команды займет один фрейм. Если в драйвере буфер малого размера - с него может статься укладывать содержимое буфера и ждать начала следующего фрейма. В общем, вариантов много.

В USB Complete, в четырнадцатой главе, рассказываться про оптимизацию обмена с FT232. Там проблемы тоже есть, но другие.
Vovik
Уважаемые господа!
Начинаю с FX2 и просто фигею от количества нагороженных возможностей. Применить их хочется в первой же плате и по полной. посему вопрос:
Появился резонный вопрос: а какой режим использования оного девайса позволит достигать максимальной скорости передачи (реальной)(планируется использовать один+пару эндпойнтов - отдельно для команд(interrupt) и 2 для данных(bulk)):
host->FIFO->Slave-FIFO-interface->Cyclone (3 EP)
или
host->FIFO->Master-GPIF-interface->Cyclone (3 EP)
или
host->FIFO->CPU->Master-gpif (управление)
host->FIFO->Master-gpif (2EP данные)

последний вариант кажется наиболее трезвым. есть ли какие-нибудь подводные камушки, может кто подсказать?
MALLOY2
У меня никаких подводных камней небыло, только следует обратить внимание на ножку TEST.

Что касается скорости, тест был такой FX 2 точки работают при максимальном буфере в FIFO режиме на другом конце FPGA делала кольцо, скорость получилась ~24 метра это комп данные тупо проверял на правельность, в реальном устройстве когда был реализован протокол обмена скорость упала до 11 ментров на моем PC (Celeron 2000 512M ) на азлоне 2600 1 гектар памяти скорость составила 16 метров, также был проведен тест с кольцом внутри FX скорость составила 1 метр.
Aaron
Помогите, плз. Столкнулся с железячной проблемой, не понимаю, где косяк.
Имею: EZ-USB NX2LP-Flex (CY7C68033) - корпус QFN56.
У ножек питания кондеры на 0,1мкФ
Кварц 24МГЦ с кондерами на 22пФ
Кнопка, замыкающая на землю ножку #RESET, которая сама по себе подтянута к 3,3В через 100кОм.
SCL и SDA подтянуты через 1К и 10К на 3,3В.
По идее, заводиться и определяться она должна по такому же алгоритму, что и FX2LP.
При подаче питания кварц запускается и на D+ появляется 3,3В. Если воткнуть железяку в комп, находится неизвестное устройство, дрова установить не может. Лезу в реестр - там появляется VID0000&PID0000. Кнопка с ресетом никакого результата не дает - смотрю по осциллографу, при ресете d+ уходит вниз, при отпускании кнопки опять на 3,3В. Причем временная диаграмма ресета, требуемого стандартом USB, не отрабатывается. То есть просто происходят скачки уровней.
Вопрос: что может быть не так?
Gate
Цитата(Aaron @ Oct 5 2006, 17:13) *
Помогите, плз. Столкнулся с железячной проблемой, не понимаю, где косяк.
При подаче питания кварц запускается и на D+ появляется 3,3В. Если воткнуть железяку в комп, находится неизвестное устройство, дрова установить не может. Лезу в реестр - там появляется VID0000&PID0000. Кнопка с ресетом никакого результата не дает - смотрю по осциллографу, при ресете d+ уходит вниз, при отпускании кнопки опять на 3,3В. Причем временная диаграмма ресета, требуемого стандартом USB, не отрабатывается. То есть просто происходят скачки уровней.
Вопрос: что может быть не так?

М.б. это поможет?
Aaron
Цитата(Gate @ Oct 5 2006, 17:42) *
Цитата(Aaron @ Oct 5 2006, 17:13) *

Помогите, плз. Столкнулся с железячной проблемой, не понимаю, где косяк.
........
Вопрос: что может быть не так?

М.б. это поможет?

Посмотрел, что там написано. Возник вопрос: а что, у этих мукрух такая чувствительность по питанию? что прямо вот там-то надо ставить 0,01мкФ, там-то 0,001мкФ. Если у меня вместо этого 0,1мкФ стоит, может ли это влиять на отсутствие нужной реакции пул-ап резистора?
Ведь, еще раз повторюсь, при ручном ресете МК с помощью кнопочки тоже ничего хорошего не происходит.
Vix
Подскажите, пожалуйста, как организовать поток, который всегда готов к приему данных (CY7C68013a, CyAPI, endpoint типа bulk)?
В контроллер загружен пример bulkloop.
Пишу такое:
void __fastcall TThreadRX::ThreadActivity()
{
char inBuf[16384];
long length;
if(!Form1->USBDevice->BulkInEndPt)
{
Form1->USBThreadRX->Terminate();
}
while(true)
{
if (Terminated)
{
Form1->RXwait->Checked = false;
return;
}
Form1->USBDevice->EndPoints[3]->XferData(inBuf,length);
Sleep(10);
Form1->Info->Cells[2][8] = length;
}
}

не работает ...., точнее вижу всегда ноль принятых байт.

Есть такая кнопка, через которую передаю данные в контроллер и хочу их назад получить через поток (см. выше):
void __fastcall TForm1::TXonlyClick(TObject *Sender)
{
OVERLAPPED outOvLap/*, inOvLap*/;
if(USBDevice->EndPointCount() > 1){
outOvLap.hEvent = CreateEvent(NULL, false, false, "CYUSB_OUT");
char buffer[128];
for(int i = 0;i < sizeof(buffer);i++)
buffer[i] = i + 10;
LONG length = 10;
UCHAR *outContext = USBDevice->BulkOutEndPt->BeginDataXfer(buffer, length, &outOvLap);

USBDevice->BulkOutEndPt->WaitForXfer(&outOvLap,100);

USBDevice->BulkOutEndPt->FinishDataXfer(buffer, length, &outOvLap,outContext);

CloseHandle(outOvLap.hEvent);
}
}
Периодически жму на кнопку, а поток не ловит данные.
Если одновренно отправить и принять
UCHAR *outContext = USBDevice->BulkOutEndPt->BeginDataXfer(buffer, length, &outOvLap);
UCHAR *inContext = USBDevice->BulkInEndPt->BeginDataXfer(inBuf, length, &inOvLap);
то данные приходять.
Объясните, как правильно ждать данные ?
vazhko
Здравствуйте, уважаемые господа. Отладил программку для fx2, используя сайпрессовские заготовки. Загружал EZ_USB CP, все работает нормально, автоматически конфигурится как HighSpeed. Уже написал верхний уровень для компа. Думал, что все путем. Но с при загрузке этой же программы с флешки конфигурится и работает как FullSpeed. Прерывание ISR_Highspeed не генерится. Что за хрень? Как еще можно грузить прошивку?

Программирую шлеху так:
1. EZ_USB CP fx2 со снятыми перемычками гружу Vend_Ax
2. Ставлю перемычки
3. Комманда А9, 2 байта, out FF FF
4. Перемыкаюсь
5. EZ_USB CP, eeprom (hex2bix -I -F 0xc2 -P 34323 -V 1204 -C 0 FX2_T1255.hex)
6. Перемыкаюсь, матерюсь...
vazhko
Цитата(vazhko @ Nov 12 2006, 18:25) *
Здравствуйте, уважаемые господа. Отладил программку для fx2, используя сайпрессовские заготовки. Загружал EZ_USB CP, все работает нормально, автоматически конфигурится как HighSpeed. Уже написал верхний уровень для компа. Думал, что все путем. Но с при загрузке этой же программы с флешки конфигурится и работает как FullSpeed. Прерывание ISR_Highspeed не генерится. Что за хрень? Как еще можно грузить прошивку?

Программирую шлеху так:
1. EZ_USB CP fx2 со снятыми перемычками гружу Vend_Ax
2. Ставлю перемычки
3. Комманда А9, 2 байта, out FF FF
4. Перемыкаюсь
5. EZ_USB CP, eeprom (hex2bix -I -F 0xc2 -P pid -V vid -C 0 FX2_T1255.hex)
6. Перемыкаюсь, матерюсь...


Сегодня увидел, что при инициализации с флешки сильно подсаживается питание. Это, косвенно,и является причиной. Так, как устойство Buspowered, выставлял в дескрипторах соответственно ток. У меня где-то 200мА(100 единиц). Заметил, что если выставить дескрипторы на 150 единиц, то и при загрузке программы с usb переинициализация на FullSpeed не происходит. Ну а если грузить с флеши то и подавно. Может кто поделится советом?
Oleg_
Знатоки CY7C68013А отзовитесь !

Имеется: CY7C68013А, CyUsb.sys, CyApi.lib, ep8in, bulk 512 byte, High Speed
Проблема: При передаче длинной последовательности 0xff ( больше 120 байт ) пакет не принимается.

len = 512;
if(!ep8in->XferData(p, len )) ShowMessage(s.sprintf("ep8 - read error %d", len);

Кто-нибудь сталкивался с такой проблемой ?
eug
Цитата(Oleg_ @ Nov 14 2006, 21:26) *
Знатоки CY7C68013А отзовитесь !

Имеется: CY7C68013А, CyUsb.sys, CyApi.lib, ep8in, bulk 512 byte, High Speed
Проблема: При передаче длинной последовательности 0xff ( больше 120 байт ) пакет не принимается.

len = 512;
if(!ep8in->XferData(p, len )) ShowMessage(s.sprintf("ep8 - read error %d", len);

Кто-нибудь сталкивался с такой проблемой ?


- А что сообщает "Cy USB Console" по кнопке "Get Pipes" ?
- что с таймаутом? ( ep8in->TimeOut = 5000;)
Oleg_
Цитата(eug @ Nov 14 2006, 19:01) *
Цитата(Oleg_ @ Nov 14 2006, 21:26) *

Знатоки CY7C68013А отзовитесь !

Имеется: CY7C68013А, CyUsb.sys, CyApi.lib, ep8in, bulk 512 byte, High Speed
Проблема: При передаче длинной последовательности 0xff ( больше 120 байт ) пакет не принимается.

len = 512;
if(!ep8in->XferData(p, len )) ShowMessage(s.sprintf("ep8 - read error %d", len);

Кто-нибудь сталкивался с такой проблемой ?


- А что сообщает "Cy USB Console" по кнопке "Get Pipes" ?
- что с таймаутом? ( ep8in->TimeOut = 5000;)
[font=Courier New]- использую CBuilder + CyApi.lib, консолью не пользуюсь
- timeout - 1000
- дополнение:

Cypress посылает хосту 2 пакета, отличающиеся тремя байтами 0x00 00 00
пакет 1 - не принят
пакет 2 - принят

Пакет 1 ( длинная 0xff последовательность )

0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060 47 01 21 10 86 43 00 6a c6 89 20 1c 74 40 23 10 G.!..C.j.. .t@#.
0070 00 3f 81 e4 00 4c 81 8c 00 42 e2 20 0c a0 01 b5 .?...L...B. ....
0080 78 0f 60 03 43 29 72 7c 45 a1 91 24 e9 b1 10 01 x.`.C)r|E..$....
0090 f9 07 b7 10 a5 ff 00 0f 80 39 fc 54 45 d0 00 e8 .........9.TE...
00a0 05 a2 28 63 31 80 f1 84 ec 71 db 9e 6b 0e 3f 2b ..(c1....q..k.?+
00b0 b3 c0 1f 91 80 59 10 1d 82 d8 9d 98 2d e8 8c 0c .....Y......-...
00c0 5f ff 1e 44 12 01 b9 e2 a2 27 03 64 4e 69 fb 3b _..D.....'.dNi.;
00d0 b2 31 75 fa 07 ff ff a8 1f ff fe 84 62 a0 03 a8 .1u.........b...
00e0 8a f4 31 98 3f 09 01 f6 38 20 d1 27 2a 06 80 01 ..1.?...8 .'*...
00f0 87 00 b3 af 37 37 85 04 f1 54 00 3f 20 72 3f 84 ....77...T.? r?.
0100 93 8f 00 ff 8e 64 8f 83 82 84 29 db ac e3 c5 37 .....d....)....7
0110 1e d4 32 55 43 1f aa 5c 0f ff ff 59 47 40 00 12 ..2UC..\...YG@..
0120 00 00 b0 0d 00 01 c1 00 00 00 05 e0 70 dd 36 30 ............p.60
0130 5a ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff Z...............
0140 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0150 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0160 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0170 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0180 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0190 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
01a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
01b0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
01c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
01d0 ff ff ff ff ff ff ff ff 47 01 21 11 83 81 9c 00 ........G.!.....
01e0 74 3c 05 98 3d 8f cb 1c e3 e0 78 00 18 0e b8 82 t<..=.....x.....
01f0 2a d6 6f 5b ad f7 80 3d e2 c7 e1 c0 11 f1 de 01 *.o[...=........

Пакет 2 ( 0xff последовательность разорвана тремя байтами 0x00 )

0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0050 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0060 47 01 21 10 86 43 00 6a c6 89 20 1c 74 40 23 10 G.!..C.j.. .t@#.
0070 00 3f 81 e4 00 4c 81 8c 00 42 e2 20 0c a0 01 b5 .?...L...B. ....
0080 78 0f 60 03 43 29 72 7c 45 a1 91 24 e9 b1 10 01 x.`.C)r|E..$....
0090 f9 07 b7 10 a5 ff 00 0f 80 39 fc 54 45 d0 00 e8 .........9.TE...
00a0 05 a2 28 63 31 80 f1 84 ec 71 db 9e 6b 0e 3f 2b ..(c1....q..k.?+
00b0 b3 c0 1f 91 80 59 10 1d 82 d8 9d 98 2d e8 8c 0c .....Y......-...
00c0 5f ff 1e 44 12 01 b9 e2 a2 27 03 64 4e 69 fb 3b _..D.....'.dNi.;
00d0 b2 31 75 fa 07 ff ff a8 1f ff fe 84 62 a0 03 a8 .1u.........b...
00e0 8a f4 31 98 3f 09 01 f6 38 20 d1 27 2a 06 80 01 ..1.?...8 .'*...
00f0 87 00 b3 af 37 37 85 04 f1 54 00 3f 20 72 3f 84 ....77...T.? r?.
0100 93 8f 00 ff 8e 64 8f 83 82 84 29 db ac e3 c5 37 .....d....)....7
0110 1e d4 32 55 43 1f aa 5c 0f ff ff 59 47 40 00 12 ..2UC..\...YG@..
0120 00 00 b0 0d 00 01 c1 00 00 00 05 e0 70 dd 36 30 ............p.60
0130 5a ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff Z...............
0140 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0150 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0160 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0170 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0180 00 00 00 ff ff ff ff ff ff ff ff ff ff ff ff ff ................
0190 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
01a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
01b0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
01c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................
01d0 ff ff ff ff ff ff ff ff 47 01 21 11 83 81 9c 00 ........G.!.....
01e0 74 3c 05 98 3d 8f cb 1c e3 e0 78 00 18 0e b8 82 t<..=.....x.....
01f0 2a d6 6f 5b ad f7 80 3d e2 c7 e1 c0 11 f1 de 01 *.o[...=........

извините что так криво, не смог в вашем редакторе включить непропорциональный шрифт.
AndreyS
Добрый день


Возник трабл. Пока глубоко не копал, но с понедельника прийдется этим заняться.

Имеем CY7C68013 FX2
в нем 6EP - IN
1EP - OUT

Столкнулся с тем что из 100 штук систем (система это чип плюс комп) несколько подвисают в процессе приема данных.

Происходит следующее. При передачи данных в комп поток неперерывной вычитки данных из ezusb.sys (драйверок free от кипресса хрен знает какой даты, но он у них не менялся и не обновлялся давно) иногда по непонтяным причинам тупо останавливается в драйвере. В железке заведен таймер, который контроллирует прерывание USb в случае, если более нескольких сек (4 сек) не происходит вычитки считаем что компа нет и перезагружаемся. Соответственно как только железка это засекает и перезагружается, то драйвер отлипает и вываливается с данными.


Вопрос.
У кого-нибудь подобное происходило??? Повторюсь, что данный трабл происходит всего на нескольких машинах.

С понедельника начну копать свою прошивку на предмет зависона, может конечно и прошивка подвисает, но раньше такого небыло. Проявилось на PC с пнем 4 и двойным ядром. На долбаных целеронах все пашет уже нескольок лет и без проблем. По сему и грешу на связку пень 4 Хрюн 2 и драйвер.

ПОМОГИТЕ!!
Warlord
Вероятнее всего проблема в драйвере. Запроси поддержку сайпреса на предмет нового драйвера или попробуй CyUSB.sys
qqqqqq
Отведал и я сего счастья... запустил микросхемину с драйвером CYUSB. Прога на дельфи. лазает нопрямую к драйверу.. шлёт пакеты (bulk) нормально, принимает тоже нормально, но при условии, что они есть. Если пакетов на приём нет - вешает винду (XP) так, что никакой диспетчер задач не помогает...
Искал-искал, как этому драйверу сказать, что не надо ждать пакета вечно, но так и не нашёл...
Вопрос: как обойти сию ситуацию?


вопрос снят.
ответ: ABORT_PIPE.
AndreyS
Цитата(AndreyS @ Oct 8 2007, 00:35) *
Добрый день
Возник трабл. Пока глубоко не копал, но с понедельника прийдется этим заняться.

Имеем CY7C68013 FX2
в нем 6EP - IN
1EP - OUT

Столкнулся с тем что из 100 штук систем (система это чип плюс комп) несколько подвисают в процессе приема данных.

Происходит следующее. При передачи данных в комп поток неперерывной вычитки данных из ezusb.sys (драйверок free от кипресса хрен знает какой даты, но он у них не менялся и не обновлялся давно) иногда по непонтяным причинам тупо останавливается в драйвере. В железке заведен таймер, который контроллирует прерывание USb в случае, если более нескольких сек (4 сек) не происходит вычитки считаем что компа нет и перезагружаемся. Соответственно как только железка это засекает и перезагружается, то драйвер отлипает и вываливается с данными.
Вопрос.
У кого-нибудь подобное происходило??? Повторюсь, что данный трабл происходит всего на нескольких машинах.

С понедельника начну копать свою прошивку на предмет зависона, может конечно и прошивка подвисает, но раньше такого небыло. Проявилось на PC с пнем 4 и двойным ядром. На долбаных целеронах все пашет уже нескольок лет и без проблем. По сему и грешу на связку пень 4 Хрюн 2 и драйвер.

ПОМОГИТЕ!!


Добрый день.

Есть что сообщить по данному вопросу.

Поясню некоторые моменты.
Первое, весь обмен реализован в FX2 софтварно (т.е. не использую FIFO или GPIF).
Для ускорения использую AUTOPOINTER.
Вот именно с этим и связана была проблемма.
Быть может это кому-то поможет.
Иногда значение AUTOPTRSETUP изменяется.
Это происходит как при перезагрузке (причем цепочка RESET отрабатывает отлично. Все тайминги по сбросу соблюдены). В рабочем режиме я просто установил инициализацию регистра перед использованием соответствующего указателя.
Т.е. при запуске значение AUTOPTRSETUP не устанавливается дефолтным. И просто разрешение работы указателей недостаточно (но тут как говорится сам дурак, надо было жестко эту ячейку переинитить со всеми битами).
Есть подозрение что и в рабочем режиме это тоже происходит. Так как инициализация ячейки перед использованием соответствующего указателя еще лучше помогла.

Вывод таков. Быстро ухожу на FIFO smile.gif Просто реализовал данное чудо 3 года назад и небыло желания что-то координально менять.

Удачи.
SancheSZ
Здравствуйте!

Распаял тут cy7c68013a-56pvxc с минмумом необходимого обвеса: резисторы н VCC вместо EEPROM, кварц с двумя конденсаторами по 20pF, WAKEUP - резистор к VCC, RESET - RC цепь, VCC и AVCC - +3.3V, GND и AGND - земля. Все остальное в воздухе.

Питание берется с USB и понижается до 3.3 посредством LM2937 (10 мкф электролит на выходе).
Тестером мерил - в норме.

Девайс подключается и определяется всегда с первого раза, работает пример bulkloop.

Но подключается всегда на FULL SPEED (сразу и после перподключения после загрузки bulkloop). Так показавает USBView, а при подключении (и после загрузки примера) винда орет, что устройство может работать быстрее.

Пробовал на разных компах, менял кабель.
Пробовал подавать питаие от внешнего БП.

Сразу скажу: плата в принципе ужасная (не соответствует требоаниям cypress - представляет из себя просто расходящиеся паучком дорожки (~5 см).

Пробовал подпаивать USB кабель (обрезал разъем с одной стороны) непосредствеено кдорожкам D+, D- в непосредствеенной близости от ножек чипа и подключать к компу через него (вместо установленного на плте разъема), тем амым изключив 5-сантиметровые отрезки дорожек на плате. Не помогло.

Что можно предпринять еще, кроме передеки PCB? Занятие это требуюее некоторого времени и дорогостоящее. Была взята имеющаяся в наличии плата под данный шаг.

P.S.: на FULL speed подсоединяется устойчиво и без споев.
Konst_777
Цитата(SancheSZ @ May 20 2008, 19:24) *
Здравствуйте!

Распаял тут cy7c68013a-56pvxc с минмумом необходимого обвеса: резисторы н VCC вместо EEPROM, кварц с двумя конденсаторами по 20pF, WAKEUP - резистор к VCC, RESET - RC цепь, VCC и AVCC - +3.3V, GND и AGND - земля. Все остальное в воздухе.

Надо бы еще Reserved подключить к GND.

Цитата(SancheSZ @ May 20 2008, 19:24) *
Девайс подключается и определяется всегда с первого раза, работает пример bulkloop.

Но подключается всегда на FULL SPEED (сразу и после перподключения после загрузки bulkloop). Так показавает USBView, а при подключении (и после загрузки примера) винда орет, что устройство может работать быстрее.

Проверьте частоту кварцевого резонатора на выходе CLKOUT после подключения. Должно быть 12 МГц±100 ppm.
Вообще, требования к кварцевому резонатору, изложенные в "Migrating From EZ-USB FX2™ to EZ-USB FX2LP™" (fx2_to_fx2lp.pdf):
• 24 MHz ±100 ppm
• Parallel resonant
• Fundamental mode
• 500 μW drive level
• 12-pF (5% tolerance) load cap

Ну и перечитайте разделы "2.2 Minimum Reset Time" и "2.3 VCC Ramp Up Time" из этого документа.

Если есть возможность, сразу замените кварцевый резонатор на кварцевый генератор, а вместо RC цепи для RESET используйте микросхему монитора питания.
SancheSZ
Спасибо, вроде бы проблема снята....

Reserved был подключен изначально (забыл написать).

Решил зашунтировать электролит по питанию несолькими керамическими кондюками по 0,1 мкф (пвесил в нескольких частях платы, но с учетом моего паучка все они далеко от чипа).

Не помогло. Тогда повесил еще один кондюк непосредствеено к дорожкам побиже к чипу на AVCC и AGND. После этого стал определяться как High Speed.

Самое забавное, что когда повесил этот кондюк, обнаружил, что AGND на землю я не припаял smile.gif. В итоге так оно и работает smile.gif Невероятно - но факт. (конечно припаю позже).

На данный момент по крайней мере нормально все определяется в винде. Посмотрим, что будет, когда начну подключать к нему АЦП...
инzheнер
День добрый!
Вопрос более от аппаратчика, чем от программера - есть плата, на котрой распаян CY7C68013A-56LFXC. Для проверки качества разводки проводников на плате необходимо убедиться что он безглючно работает в high-speed режиме (т.е. на 480 мбитах). Можно ли это сделать используя только штатные программы от Cypress'а вроде USB Console? Подойдут ли для этой цели уже упоминавшиеся здесь скомпилированные примеры типа bulkloop, streamer и т.п. Не хочется вникать в несвойственну тему - программирование под винду smile.gif
В комплекте "USB Dev Studio" нашёл программулину, которая по идее выполняет все эти действия - Streamer.exe (Streaming Demo). Я понимаю, что для её работы в чип необходимо загрузить что-то. А вот что - пока не пойму smile.gif

Заранее благодарен.
(P.S. Прошу не счесть это рекламой, приаттачена схема и фото печатной платы)
Konst_777
Цитата(инzheнер @ Jun 2 2008, 23:47) *
День добрый!
Вопрос более от аппаратчика, чем от программера - есть плата, на котрой распаян CY7C68013A-56LFXC. Для проверки качества разводки проводников на плате необходимо убедиться что он безглючно работает в high-speed режиме (т.е. на 480 мбитах). Можно ли это сделать используя только штатные программы от Cypress'а вроде USB Console?...

Да, именно с помощью CyConsole (Cypress USB Console) можно проверить работу контроллера. В теме прием данных из АЦП в ПК по USB я выложил Archive.rar. Из папки "\Archive\Firmware" загрузите в Ваш контроллер файл "ADC_to_USB.hex" с помощью CyConsole. А затем проверьте скорость обмена с помощью программы "Test_Exch_VS.exe" из папки "\Archive\Software\Debug". Если будут вопросы, запустите "GPIF Designer_demo.htm" из папки "Archive\GPIF Designer_demo". В этой демонстрации для Вас много лишнего. Но загрузка *.hex файла в контроллер и проверка скорости обмена там есть.
инzheнер
Цитата(Konst_777 @ Jun 4 2008, 01:26) *
Да, именно с помощью CyConsole (Cypress USB Console) можно проверить работу контроллера....

Большое спасибо за ваш пример и тьюториал по работе с GPIF!
Всё сразу получилось, 33 метра принимаются за 1.5 секунды.
инzheнер
Почему то не получается отредактировать предыдущее сообщение.
Что хотел сказать - USB View всё равно показывает, что устройство находится не в High Speed режиме, а в Full.
Konst_777
Цитата(инzheнер @ Jun 5 2008, 13:27) *
Почему то не получается отредактировать предыдущее сообщение.
Что хотел сказать - USB View всё равно показывает, что устройство находится не в High Speed режиме, а в Full.

Где-то на форуме уже было сообщение, что "usbview.exe" неправильно показывает режим работы устройств USB. У Microsoft есть программа "UVCView.x86.exe" (USB Video Class descriptor viewer), которая правильно отображает режим работы устройства USB.

Для определения в каком режиме находится контроллер FX2LP можно использовать CyConsole. При отключенной (незапрограммированной) EEPROM контроллер будет определяться, как устройство с VID=0x04B4 и PID=0x8613. И, если для установки драйвера Вы использовали "CyUSB.inf" из "Archive.rar", то CyConsole отобразит FX2LP как "Cypress FX2 - No EEPROM (0x8613)". И вот теперь, если в диалоговом окне программы CyConsole в списке "Configuration Interfaces (4)" выбрать строку с "Alt Setting" равным 1, то в списке "Interface Endpoints (6)" будут отображены конфигурации EndPoint-ов для текущего режима работы FX2LP. Если значение "Max Pkt Size" равно 512, то FX2LP работает в режиме High Speed, если 64 - то в режиме Full Speed.
vena
может не по теме, но мне надо прочитать и перешить cy7c68013-100ac внутрисхемно.
где взять программу и схему подключения. я не программист не понял что
скачивать с Cypress а старые ссылки не работают
DR.FAUST
Кто какую скорость выжал из 68013а ? А то у меня никак больше 15 мегов в секунду не выходит и не могу понять то ли винда не тянет больше то ли устройство. Кстати если разводка не очень грамотная, скорость может падать, и как определить в чем проблема?
Konst_777
Цитата(DR.FAUST @ Aug 9 2008, 00:03) *
Кто какую скорость выжал из 68013а ? А то у меня никак больше 15 мегов в секунду не выходит и не могу понять то ли винда не тянет больше то ли устройство. Кстати если разводка не очень грамотная, скорость может падать, и как определить в чем проблема?

Этот вопрос обсуждается на форуме достаточно часто:и так далее.

FX2LP содержит регистры ERRCNTLIM (USB Error Counter Limit), CLRERRCNT (Clear Error Count), USBERRIE (USB Error Interrupt Enables), USBERRIRQ(USB Error Interrupt Request). Эти регистры можно использовать для организации мониторинга ошибок на шине USB.

Можно использовать firmware из Archive.rar как Speed Test Bench. Для этого нужно:
  • заменить файл GPIF.c в папке "\Firmware" на одноименный из архива "GPIF.rar", присоединенного к этому сообщению;
  • перекомпилировать firmware и загрузить новый вариант в FX2LP;
  • измерить скорость обмена с помощью утилиты "\Software\Debug\Test_Exch_VS.exe"
У меня получилась такая скорость обмена:
DR.FAUST
Вашу прошивку не смог запустить, у меня вообще не работает ни одна прошивка на основе фреймворка fx2, что то не так с перечислением, устройство отвечает неправильно или совсем не отвечает. Написал свою тестовую прогу, проверил счетчик ошибок юсб, он все время равен 0, после 600 мегабайт трансфера тоже не изменился. Сделал в программе две точки 2 out и 6 in Прграмма на компе в паралельных потоках читает и пишет в эти точки, скорость получил по 14 мегабайт в секунду, суммарная соотв. 28 мб\сек вроде и неплохо но хочется чтобы такая же была в одну сторону. На днях попробую разобратся почему не работает перечисление и попробую изохронную передачу там и скорость выше должна быть и ошибки, если есть, все вылезут. Если у кого есть мысли по поводу моих проблем, напишите пожалуйста.
Konst_777
Цитата(DR.FAUST @ Aug 10 2008, 00:38) *
Вашу прошивку не смог запустить, у меня вообще не работает ни одна прошивка на основе фреймворка fx2, что то не так с перечислением, устройство отвечает неправильно или совсем не отвечает. Написал свою тестовую прогу, проверил счетчик ошибок юсб, он все время равен 0, после 600 мегабайт трансфера тоже не изменился. Сделал в программе две точки 2 out и 6 in Прграмма на компе в паралельных потоках читает и пишет в эти точки, скорость получил по 14 мегабайт в секунду, суммарная соотв. 28 мб\сек вроде и неплохо но хочется чтобы такая же была в одну сторону....
...
Если у кого есть мысли по поводу моих проблем, напишите пожалуйста.

Тогда, если есть желание, выложите исходники Вашей тестовой программы и схему Вашего устройства.

Цитата(DR.FAUST @ Aug 10 2008, 00:38) *
... На днях попробую разобратся почему не работает перечисление и попробую изохронную передачу там и скорость выше должна быть и ошибки, если есть, все вылезут...

Максимальная скорость изохронного обмена для одной конечной точки (Endpoint) не превышает 24 МБайт/сек. ("Universal Serial Bus Specification" раздел "5.6.4 Isochronous Transfer Bus Access Constraints"). Это более, чем в два раза меньше по сравнению с Bulk обменом (53 МБайт/сек).
DR.FAUST
Сегодня испробовал все 4 точки в булк режиме две на вход две на выход, получил суммарную скорость около 34 мегабайт в секунду, такое чувство что на одну конечную точку виндовс ограничивает количество запросов в секунду. Такое возможно? Выложил схемку, прошивку, софт (возможна проблема при запуске, после прошивки через cyConsole необходимо выбрать первую альтернативную конфигурацию)
DR.FAUST
Цитата(DR.FAUST @ Aug 10 2008, 15:04) *
Сегодня испробовал все 4 точки в булк режиме две на вход две на выход, получил суммарную скорость около 34 мегабайт в секунду, такое чувство что на одну конечную точку виндовс ограничивает количество запросов в секунду. Такое возможно? Выложил схемку, прошивку, софт (возможна проблема при запуске, после прошивки через cyConsole необходимо выбрать первую альтернативную конфигурацию)


Нашел причину заниженной скорости, надо было указать SetXferSize (размер пакета, передаваемого драйвером CyUsb к хост драйверу). Получил такие параметры (все скорости как в так и из устройства получаются почти одинаковые): 1 точка - 28 МБ\сек, 2 точки на чтение - 35 МБ\сек, все 4 точки - 40 МБ\сек. Дальше возможно ограничивает драйвер, попробую на досуге свой драйвер, хотя и 28 мегабайт уже совсем неплохо. Надеюсь что с перечислением разберусь, если что буду спрашивать smile.gif Кстате спасибо за ответы.
Konst_777
Цитата(DR.FAUST @ Aug 10 2008, 00:38) *
Вашу прошивку не смог запустить, у меня вообще не работает ни одна прошивка на основе фреймворка fx2, что то не так с перечислением, устройство отвечает неправильно или совсем не отвечает...

Проверьте:
  • правильность формирования сигнала Reset ;
  • скорость наростания Vcc после подачи питания (раздел 2.3 в файле "fx2_to_fx2lp.pdf").
DR.FAUST
Да действительно ресет у меня сейчас подается мгновенно, это будет исправлено, просто у меня на плате конденсатор от ресета соединен с землей на втором слое через разьем а разьем еще не установлен. Но ведь процессор стартует, и работает нормально, как ресет может влиять на перечисление?
AndreyS
Цитата(DR.FAUST @ Aug 15 2008, 14:05) *
Да действительно ресет у меня сейчас подается мгновенно, это будет исправлено, просто у меня на плате конденсатор от ресета соединен с землей на втором слое через разьем а разьем еще не установлен. Но ведь процессор стартует, и работает нормально, как ресет может влиять на перечисление?



Добрый день.

Ресет влияет на правильный запуск всех частей микросхемы CY7C68013. В частности на SIE (ядро USB). Ядро 8051 при этом не зависит о запуска SIE.
DR.FAUST
Тоесть при неправильном запуске Sie может работать но не совсм корректно? У меня данные передаются, а вот перечисление глючит. Скоро куплю разьем тогда точно проверю, спасибо что подсказали.
Konst_777
Цитата(DR.FAUST @ Aug 15 2008, 13:05) *
... Но ведь процессор стартует, и работает нормально, как ресет может влиять на перечисление?

FX2LP состоит из двух устройств, имеющих доступ к SIE (USB):
  • The Default USB Device - цифрового автомата;
  • улучшенного (расширенного) контроллера 8051.

The Default USB Device управляет SIE пока управление не переходит к 8051. Если не обеспечен нормальный аппаратный сброс 8051 после включения питания, то управление SIE никогда не перейдет к 8051, так как сам 8051 не будет нормально функционировать. Как следствие - не будет работать перечисление, предусмотренное Вашей программой.

Нельзя надеяться на нормальную работу FX2LP, если не выполнять требования, изложенные в Datasheet и EZ-USB® Technical Reference Manual.
DR.FAUST
Полностью согласен что правила надо соблюдать. НО сегодня сделал ресет Резистор 100К конденсатор 100 нФ. Если девайс долго лежит на полке то не хочет потом обнаруживатся виндой, только раза с 4 находится. Если его отключить - подключить в течении 1 минуты, все ок и кнопка ресет пашет вроде нормально. Но когда конденсатор с ресета не был подключен на землю, все работало отлично smile.gif. А теперь о перечислении. Отлаживал код BulkLoop выяснил что:
В коде fw.c в главном цикле вызивается TD_POOL а за ним, если пришел пакет от компа то и SetupCommand. Но у меня POOL срабатывал а SetupCommand - нет, хотя прерывание Sudav срабатывает. Ради теста, закомментировал код отвечающий за переход в режим сна

if (Sleep)
{
IOB|=0x20;
if(TD_Suspend())
{
Sleep = FALSE; // Clear the "go to sleep" flag. Do it here to prevent any race condition between wakeup and the next sleep.
do
{
EZUSB_Susp(); // Place processor in idle mode.
}
while(!Rwuen && EZUSB_EXTWAKEUP());
// above. Must continue to go back into suspend if the host has disabled remote wakeup
// *and* the wakeup was caused by the external wakeup pin.

// 8051 activity will resume here due to USB bus or Wakeup# pin activity.
EZUSB_Resume(); // If source is the Wakeup# pin, signal the host to Resume.
TD_Resume();
}
И все заработало отлично девайс определился и программа заработала как надо.
Что можете сказать по этому поводу? У меня пока нет мыслей почему он засыпает, и собственно чем это мешает? Он не может проснутся или как?
Да и Konst_777, я запустил таки вашу прошивку, 27 мб\сек, в ней , насколько я покал нет функций связанных со сном.
Konst_777
Цитата(DR.FAUST @ Aug 16 2008, 15:08) *
... Он не может проснутся или как?...

Да, это видно из исходников BulkLoop и EZUSB.LIB (\Cypress\USB\Target\Lib\LP\resume.c).
Artkop
Добрый вечер!
Прошу прояснить следующий момент. Когда настроен режим Slave FIFO и передача идет напрямую с USB в FIFO, то информацию из буферов конечных точек читает и пишет внешный мастер? (ПЛИС) Пришли данные по USB, их автоматом перекинуло в фифо. Как микроконтроллер сможет мастеру сказать, что пришли данные? Посмотрел временные диаграммы и пины, нет такого флага. AUTOIN и AUTOOUT здесь уже не пройдет(
Konst_777
Цитата(Artkop @ Sep 4 2008, 16:28) *
Добрый вечер!
Прошу прояснить следующий момент. Когда настроен режим Slave FIFO и передача идет напрямую с USB в FIFO, то информацию из буферов конечных точек читает и пишет внешный мастер? (ПЛИС) Пришли данные по USB, их автоматом перекинуло в фифо. Как микроконтроллер сможет мастеру сказать, что пришли данные? Посмотрел временные диаграммы и пины, нет такого флага. AUTOIN и AUTOOUT здесь уже не пройдет(

В режиме Slave FIFOs выводы контроллера "CTL0 or FLAGA", "CTL1 or FLAGB", "CTL2 or FLAGC", "PA7 or FLAGD or SLCS#" конфигурируются как "FLAGA", "FLAGB", "FLAGC" и, по желанию, "FLAGD". Флаги сообщают о состоянии четырех FIFO контроллера. Причем, не только о состоянии "FIFO пусто" или "FIFO заполнено", но и об заданном уровне заполнения FIFO. Все это неплохо описано в разделе "9.Slave FIFOs" в EZ-USB® Technical Reference Manual ("EZ-USB_TRM.pdf")
Artkop
Цитата(Konst_777 @ Sep 4 2008, 21:47) *
В режиме Slave FIFOs выводы контроллера "CTL0 or FLAGA", "CTL1 or FLAGB", "CTL2 or FLAGC", "PA7 or FLAGD or SLCS#" конфигурируются как "FLAGA", "FLAGB", "FLAGC" и, по желанию, "FLAGD". Флаги сообщают о состоянии четырех FIFO контроллера. Причем, не только о состоянии "FIFO пусто" или "FIFO заполнено", но и об заданном уровне заполнения FIFO. Все это неплохо описано в разделе "9.Slave FIFOs" в EZ-USB® Technical Reference Manual ("EZ-USB_TRM.pdf")


Про этот раздел я и говорю. Там есть временная диаграмма чтения из FIFO мастером и описание.

IDLE: When read event occurs, transition to State 1.
STATE 1: Point to OUT FIFO, assert FIFOADR[1:0], transition to State 2.
STATE 2: Assert SLOE. If FIFO-Empty flag is false (FIFO not empty), transition to State 3 else
remain in State 2.
STATE 3: Sample data on the bus, increment pointer by asserting SLRD for one IFCLK, de-assert
SLOE, transition to State 4.
STATE 4: If more data to read, transition to State 2 else transition to IDLE.

STATE 1 как начнется? По выставленному флагу FLAGC (FIFO-Empty flag)? В мк приходят данные, он выставляет FIFO-Empty flag (Не пустой). Пусть ПЛИС реагирует на FIFO-Empty flag, выставляет SLOE, SLRD и читает. Так? smile.gif
Konst_777
Цитата(Artkop @ Sep 5 2008, 09:52) *
...Пусть ПЛИС реагирует на FIFO-Empty flag, выставляет SLOE, SLRD и читает. Так? smile.gif

Да, можно и так.
Artkop
Всем доброго дня!
Вот такой вот вопрос:
Имеется конечная точка EP2, настроенная в режим Slave FIFO AUTOOUT.
void TD_Init(void)
{
CPUCS = ((CPUCS & bmCLKSPD) | ~bmCLKSPD1) ;

EP1OUTCFG = 0xA0;
EP1INCFG = 0xA0;
SYNCDELAY;

REVCTL = bmNOAUTOARM && bmSKIPCOMMIT;
SYNCDELAY;
FIFORESET = 0x80; // reset all FIFOs
SYNCDELAY;
FIFORESET = 0x02;
SYNCDELAY;
FIFORESET = 0x00;
SYNCDELAY;
IFCONFIG = 0x03; //
EP2CFG = 0xA2;
SYNCDELAY;
EP2FIFOCFG = 0x10;
SYNCDELAY;
OUTPKTEND = 0x82;
SYNCDELAY;
OUTPKTEND = 0x82;
SYNCDELAY;

// enable dual autopointer feature
AUTOPTRSETUP |= 0x01;

Rwuen = TRUE;
}

Какое состояние регистра EP2CS должно быть при включении питания? Дело в том, что при таком конфигурировании у меня EP2CS = 28 (То есть фифо FULL) Но ведь по включении там должно быть EP2CS = 04. (То есть EMPTY = 1) Или нет? Откуда там данные то возьмутся..
AutoSerg
Опять вопрос! smile.gif
С какой максимальной частотой может работать таймер cy7c68013? зафиксирует ли длительность импульса с точностью порядка 5ns?
И совсем тупой вопрос: есть ли микросхемы таймеров такой точности, если да, то какие.
dinam
Совсем не понятно что вам надо, поподробнее можно? В Technical Reference Manual конкретно написано, что максимальная частота таймеров CLKOUT/4, т.е. 12 МГц.
AutoSerg
Прошу прощения, попробую изложить конкретнее. Есть такая задумка:
Необходимо собрать устройство, которое бы снимало ФЧХ и АЧХ емкостного датчика (предполагаемый диапазон изменения 10пФ - 200пФ) на частотах диапазона (100кГц - 10МГц) и отправляло полученные результаты на ПК для дальнейшей математической обработки и систематизации.
В качестве перестраиваемого генератора рассматриваю микросхему AD5932. Схему измерения фазы собираю на трех компараторах max9690(На входы первого подем сигнал с генератора и GND,на входы второго - сигнал с датчика и GND, а на 3й - выходы первых двух компараторов, на его выходе получим импульс, длительность которого пропорциональна изменению фазы сигнала датчика). По условию ошибка измерения фазы не должна превышать 5%. Тогда получаем, что на максимальной частоте - 10МГц, частота таймера должна быть 200МГц для обеспечения условия допустимой ошибки....

Это невозможно обеспечить на контроллере!!

Спасибо за помощь! Буду искать другие методы измерения фазы, буду рад любому совету как провести такое измерение на контроллере cy7c68013 и без него...
alevnew
Цитата(qqqqqq @ Oct 13 2007, 18:44) *
Отведал и я сего счастья... запустил микросхемину с драйвером CYUSB. Прога на дельфи. лазает нопрямую к драйверу.. шлёт пакеты (bulk) нормально, принимает тоже нормально, но при условии, что они есть. Если пакетов на приём нет - вешает винду (XP) так, что никакой диспетчер задач не помогает...
Искал-искал, как этому драйверу сказать, что не надо ждать пакета вечно, но так и не нашёл...
Вопрос: как обойти сию ситуацию?


вопрос снят.
ответ: ABORT_PIPE.


Спасибо, очень помог!
А то бы еще пару дней мозг парил.
aal
Хочу попробывать на этом чипе сделать аудио устройство. Возникают вопросы.

А кто-нибудь пробовал на этом чипе реализовать вывод асинхронного изохронного канала с явной обратной синхронизацией? Правда, скорее всего, для этого чипа это не возможно, т.к. нельзя задать 2 ендпоинта с одним и тем же номером. Может как-то можно обойти эту проблему? Всё это (ИМХО) крайне мало и мутно описано.

Или придётся делать неявную обратную связь? Но тогда как быть с USB-AUDIO спецификацией? Ведь нельзя делать не выключаемый восходящий поток. Что будет, коли не включил "запись" с устройство - канала то для неявной обратной связи не будет.

И ещё вопрос: в винде из драйвера как-то можно достучатся до регистра, изменяющего частоту SOF? Просто это ещё один способ регулирования потока.... Тогда можно попробывать свою версию асинхроного вывода сделать. Опрашивая интеруптную точку узнавать о степени заполнения фифо и корректировать частоту соф.
Kabron
Цитата(aal @ Aug 20 2009, 12:46) *
Хочу попробывать на этом чипе сделать аудио устройство. Возникают вопросы.

А кто-нибудь пробовал на этом чипе реализовать вывод асинхронного изохронного канала с явной обратной синхронизацией? Правда, скорее всего, для этого чипа это не возможно, т.к. нельзя задать 2 ендпоинта с одним и тем же номером. Может как-то можно обойти эту проблему? Всё это (ИМХО) крайне мало и мутно описано.

Или придётся делать неявную обратную связь? Но тогда как быть с USB-AUDIO спецификацией? Ведь нельзя делать не выключаемый восходящий поток. Что будет, коли не включил "запись" с устройство - канала то для неявной обратной связи не будет.

И ещё вопрос: в винде из драйвера как-то можно достучатся до регистра, изменяющего частоту SOF? Просто это ещё один способ регулирования потока.... Тогда можно попробывать свою версию асинхроного вывода сделать. Опрашивая интеруптную точку узнавать о степени заполнения фифо и корректировать частоту соф.

http://www-user.tu-chemnitz.de/~heha/baste...20den%20PC/fx2/
http://www-user.tu-chemnitz.de/~heha/baste...fx2/ads8402.png
PDA
Добрый день!
Работаю с платой KNJN FX2 FPGA boards ( http://www.knjn.com/FPGA-FX2.html ) версия Xylo-L , на которой для обмена по USB используется Cypress CY7C68013. Столкнулся с отсутствием в документации файла ucf - сейчас меня интересует соотвествие пинов FPGA и CY7C68013. Если у кого есть данные, поделитесь пожалуйста. Может у кого найдется разводка платы или эл.-принципиальная схема?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.