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

 
 
> Вопрос про CY7C68013 EZ-USB FX2, Есть готовое устройство, нужно подключиться, не поломав.
niktagor
сообщение Aug 31 2010, 11:41
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 24-06-09
Пользователь №: 50 601



Добрый день. Систуация такая. Имеется готовое устройство от буржуйских разработчиков, построенное на базе CY7C68013. К нему прилагается программа под винду, которую мне нужно полностью заменить своей самопальной программой. При этом прошивку устройства требуется оставить нетронутой. Использует она драйвер ezusb.sys. Имеется также бумажка с описанием USB команд и формата пакетов для устройства. Никогда с данным чипом дела не имел. Сейчас скачал CY3681 EZ-USB FX2 Development Kit, запустил EZ-USB Control Panel. Устройство успешно определилось. Смотрю на все это, и возникают у меня вопросы, и не могу я удержаться и не задать их вам.

1. Как мне скопировать всю информацию из чипа (программу, EEPROM и.т.д.), и что вообще нужно копировать, чтобы в процессе изучения не испортить объект изучения?

2. Я правильно понимаю, что EZ-USB Control Panel позволяет мне вручную потестировать интерфейс взаимодействия с устройством, напрямую посылая байты в оконечные точки и принимая оттуда данные?

3. uVision2 - это программа для написания прошивки? Нужно ли мне вообще в ней что-то делать, если я прошивку менять не хочу?

4. Я скачал и установил Suite USB 3.4 for Visual Studio. В самой студии ничего не изменилось. Как мне ее найти? Умеет ли она работать с драйвером ezusb.sys? Если нет, то можно ли мне использовать новый драйвер cyusb.sys, если прошивка написана под старый?

5. Как узнать, в каком режиме девайс работает - full speed или high speed?

6. Сейчас сижу под вистой. Могут ли возникнуть проблемы из-за несовместимости с ней старого драйвера?

7. (пространный) Может ли в устройстве быть защита, которая не позволит ему работать не с родной программой? (догадываюсь, что может). Может ли быть защита, которая не позволит ему работать с инструментарием от cypress? Может ли быть защита, которая что-нибудь сломает, если "узнает", что я пытаюсь написать свою софтину?

8. Какой алгоритм дальнейшей работы посоветуете? Какие программы использовать? Какие вопросы у меня еще не возникли, но могут возникнуть в ближайшее время? На какие подводные камни я могу напороться?


На некоторые из этих вопросов на форуме в том или ином виде уже есть ответы, но меня они не совсем устроили. Большое спасибо всем, кто откликнется!

Сообщение отредактировал niktagor - Aug 31 2010, 11:44
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
niktagor
сообщение Sep 13 2010, 17:26
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 29
Регистрация: 24-06-09
Пользователь №: 50 601



Цитата
В FX2LP EP1OUT имеет буфер объемом 64 байта (глава 8 EZ-USB® Technical Reference Manual (EZ-USB_TRM.PDF)). Пока ему пересылаются пакеты размером не более 64 байт все будет хорошо. Что будет, если послать эндпоинту пакет длиной, большей, чем его физический буфер? Как поведет себя драйвер устройства USB и драйвер хост-контроллера? Я не пробовал делать такие вещи.

Мой запрос содержит всего один байт. Или в этот буфер идут все запросы, в том числе "CYUSB_IN"? И они каждый по 64 байта?
Не нашел, как сделать массив запросов в CyAPI Programmer's Reference. Есть другие документы по CyAPI?

Цитата
в). синхронно считайте 10 формуляров из Вашего устройства однократным вызовом функции XferData. Предварительно установите с большим запасом таймаут для этой операции.

Что-то я не понял, зачем XferData? Разве WaitForXfer() не записывает в нужный буфер принятую информацию? В примерах исползуется только BeginDataXfer-WaitForXfer-FinishDataXfer.

Реализовал такой алгоритм:

1) 9 запросов BeginDataXfer() c "CYUSB_IN"
2) запрос BeginDataXfer() c "CYUSB_OUT"
3) WaitForXfer() для "CYUSB_OUT"
4) 9 раз WaitForXfer() для "CYUSB_IN"
5) 10 раз FinishDataXfer()
Лог:
Код
0.000001 Timer test dt = 0.001 ms
0.000040 Timer test dt = 0.039 ms
0.000047 Timer test dt = 0.007 ms
0.000054 Timer test dt = 0.007 ms
0.000061 Timer test dt = 0.007 ms
0.000067 Timer test dt = 0.007 ms
0.000074 Timer test dt = 0.007 ms
0.000081 Timer test dt = 0.007 ms
0.000195 BeginDataXferIn dt = 0.114 ms
0.000230 BeginDataXferIn dt = 0.035 ms
0.000260 BeginDataXferIn dt = 0.030 ms
0.000290 BeginDataXferIn dt = 0.030 ms
0.000321 BeginDataXferIn dt = 0.031 ms
0.000351 BeginDataXferIn dt = 0.031 ms
0.000387 BeginDataXferIn dt = 0.036 ms
0.000419 BeginDataXferIn dt = 0.031 ms
0.000449 BeginDataXferInSync dt = 0.030 ms
0.000487 BeginDataXferOut dt = 0.038 ms
0.000497 WaitForXferOut dt = 0.010 ms
0.001406 WaitForXferIn dt = 0.909 ms       \\Тут прибор снимал данные с датчика
0.001444 WaitForXferIn dt = 0.038 ms
0.001464 WaitForXferIn dt = 0.020 ms
0.001562 WaitForXferIn dt = 0.098 ms
0.001682 WaitForXferIn dt = 0.121 ms
0.001818 WaitForXferIn dt = 0.136 ms
0.001931 WaitForXferIn dt = 0.112 ms
0.002061 WaitForXferIn dt = 0.130 ms
0.002193 WaitForXferInSync dt = 0.133 ms
0.002211 FinishDataXferOut dt = 0.017 ms
0.002226 FinishDataXferIn dt = 0.015 ms
0.002234 FinishDataXferIn dt = 0.009 ms
0.002243 FinishDataXferIn dt = 0.008 ms
0.002251 FinishDataXferIn dt = 0.008 ms
0.002259 FinishDataXferIn dt = 0.008 ms
0.002267 FinishDataXferIn dt = 0.008 ms
0.002276 FinishDataXferIn dt = 0.008 ms
0.002284 FinishDataXferIn dt = 0.008 ms
0.002292 FinishDataXferSync dt = 0.008 ms

За вычетом времени работы таймера, вся операция в среднем занимает (2,1+-0,1)мс. По задумке разработчиков, все 4Кб должны приниматься за оставшиеся ~100мкс после обработки сигнала датчика. Это равносильно скорости 40МБ/c. Для bulk многовато, но даже если будет 10МБ/c, для моих целей это будет очень значительное улучшение. Анализируя логи, прихожу к выводу, что WaitForXfer() выполняется один раз за микрокадр, но бывают исключительные ситуации, когда случается 2 WaitForXfer() в кадре. Как бы проконтроллировать и улучшить этот показатель?

Сообщение отредактировал niktagor - Sep 13 2010, 17:29
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- niktagor   Вопрос про CY7C68013 EZ-USB FX2   Aug 31 2010, 11:41
- - niktagor   При попытках понять работу примера BulkXfer, родил...   Aug 31 2010, 17:30
- - Konst_777   Цитата(niktagor @ Aug 31 2010, 14:41) 1. ...   Aug 31 2010, 18:11
|- - niktagor   ЦитатаМожно, нужно отредактировать cyusb.inf файл,...   Sep 1 2010, 10:33
|- - Konst_777   Цитата(niktagor @ Sep 1 2010, 13:33) На в...   Sep 1 2010, 17:22
- - niktagor   ЦитатаВ таком случае, почему есть уверенность, что...   Sep 1 2010, 18:47
|- - Konst_777   Цитата(niktagor @ Sep 1 2010, 21:47) ...М...   Sep 1 2010, 18:58
- - niktagor   Добрый день. Ситуация такая. Драйвер cyusb.sys нас...   Sep 7 2010, 18:47
|- - Mik174   Цитата(niktagor @ Sep 7 2010, 22:47) Или ...   Sep 7 2010, 19:39
|- - Serg_Sm   Цитата(niktagor @ Sep 7 2010, 22:47) Добр...   Sep 8 2010, 08:19
|- - niktagor   Цитата(Serg_Sm @ Sep 8 2010, 12:19) 40 МБ...   Sep 8 2010, 08:32
|- - Serg_Sm   Цитата(niktagor @ Sep 8 2010, 12:32) Прот...   Sep 8 2010, 09:27
- - Harbinger   Оно же USBee нескольких модификаций, оно же LOGIC-...   Sep 7 2010, 19:55
- - niktagor   ЦитатаЧто значит "именно блоками по 4К"?...   Sep 8 2010, 09:48
|- - Konst_777   Цитата(niktagor @ Sep 8 2010, 12:48) ...В...   Sep 8 2010, 10:14
|- - Serg_Sm   Цитата(niktagor @ Sep 8 2010, 13:48) Устр...   Sep 8 2010, 10:21
||- - Konst_777   Цитата(Serg_Sm @ Sep 8 2010, 13:21) ... и...   Sep 8 2010, 11:29
|- - -Al-   Цитата(niktagor @ Sep 8 2010, 13:48) Устр...   Sep 10 2010, 04:57
|- - Седой   Цитата(-Al- @ Sep 10 2010, 10:5...   Sep 10 2010, 06:15
|- - -Al-   Цитата(Седой @ Sep 10 2010, 10:15) НИКОГД...   Sep 10 2010, 18:59
|- - Седой   Цитата(-Al- @ Sep 11 2010, 00:5...   Sep 11 2010, 07:52
- - niktagor   Хорошо. Почему тогда этот другой процесс ВСЕГДА за...   Sep 8 2010, 10:31
|- - Serg_Sm   Цитата(niktagor @ Sep 8 2010, 14:31) Хоро...   Sep 8 2010, 11:19
- - niktagor   Про 15 миллисекунд разобрался. Это точность систем...   Sep 8 2010, 12:03
|- - Konst_777   Цитата(niktagor @ Sep 8 2010, 13:31) Ситу...   Sep 8 2010, 14:38
|- - VladimirB   Цитата(niktagor @ Sep 8 2010, 16:03) Про ...   Sep 8 2010, 20:18
|- - Konst_777   Цитата(niktagor @ Sep 8 2010, 12:48) ... ...   Sep 9 2010, 11:54
- - Serg_Sm   В FX2LP есть аппаратная буферизация - как минимум ...   Sep 8 2010, 12:48
- - niktagor   Прикрутил high-resolution timer. Выясняется, что м...   Sep 9 2010, 17:24
|- - VladimirB   Цитата(niktagor @ Sep 9 2010, 21:24) Прик...   Sep 9 2010, 20:02
- - niktagor   По поводу моих 250мкс по Вашей ссылке нашел интере...   Sep 10 2010, 08:30
|- - Konst_777   Цитата(niktagor @ Sep 10 2010, 11:30) ......   Sep 10 2010, 19:23
- - niktagor   Выкладываю всю информацию об эндпоинтах и приступа...   Sep 13 2010, 07:32
|- - Konst_777   Цитата(niktagor @ Sep 13 2010, 10:32) ......   Sep 13 2010, 08:30
- - niktagor   Цитата1). Известно ли Вам как построена аппаратура...   Sep 13 2010, 08:52
|- - Konst_777   Цитата(niktagor @ Sep 13 2010, 11:52) ......   Sep 13 2010, 09:50
|- - niktagor   Цитата(Konst_777 @ Sep 13 2010, 13:50) .....   Sep 13 2010, 14:28
|- - Konst_777   Цитата(niktagor @ Sep 13 2010, 17:28) Да,...   Sep 13 2010, 16:53
|- - Konst_777   Цитата(niktagor @ Sep 13 2010, 20:26) Мой...   Sep 15 2010, 18:35
- - Konst_777   Давайте, вначале Вы ответите на мои вопросы. А зат...   Sep 13 2010, 17:30
- - niktagor   Konst_777, прошу прощения за невнимательность. Цит...   Sep 14 2010, 14:43
|- - Konst_777   Цитата(niktagor @ Sep 14 2010, 17:43) ......   Sep 14 2010, 19:49
|- - niktagor   Цитата(Konst_777 @ Sep 14 2010, 23:49) Ит...   Sep 15 2010, 14:42
- - niktagor   EEPROM скачал успешно! Всего 17КБ вышло. Гляну...   Sep 19 2010, 18:50
|- - Konst_777   Цитата(niktagor @ Sep 19 2010, 21:50) ......   Sep 19 2010, 19:02
|- - niktagor   Цитата(Konst_777 @ Sep 19 2010, 23:02) Ди...   Sep 20 2010, 13:24
- - Serg_Sm   Кипарисы с буковкой "A" имеют 16Кбайт па...   Sep 20 2010, 05:06
- - niktagor   Сегодня хотел попробовать загрузить обратно данные...   Sep 20 2010, 08:47
|- - Serg_Sm   Цитата(niktagor @ Sep 20 2010, 12:47) Сег...   Sep 20 2010, 10:42
- - Konst_777   Цитата(niktagor @ Aug 31 2010, 14:41) ......   Sep 20 2010, 14:38
|- - niktagor   Цитата(Konst_777 @ Sep 20 2010, 18:38) А ...   Sep 20 2010, 18:34
|- - Konst_777   Цитата(niktagor @ Sep 20 2010, 21:34) Про...   Sep 20 2010, 21:55
|- - niktagor   ЦитатаТо есть, меняете строку строку "07 05 0...   Sep 21 2010, 17:55
|- - Konst_777   Цитата(niktagor @ Sep 21 2010, 20:55) ......   Sep 21 2010, 19:15
|- - niktagor   Цитата(Konst_777 @ Sep 21 2010, 23:15) Во...   Sep 22 2010, 09:17
|- - Konst_777   Цитата(niktagor @ Sep 22 2010, 12:17) Поч...   Sep 22 2010, 17:39
- - MSM   Здравствуйте Уважаемые форумчане. Прочитал внимате...   May 15 2014, 15:06
|- - jcxz   Вы уверены, что прошивка грузится именно из .sys, ...   May 15 2014, 15:55
- - MSM   Прошивка точно грузится из файла AD9957LD.sys В 15...   May 19 2014, 02:30
- - MSM   Спасибо за советы. Прошивку вытащить удалось. Тепе...   May 28 2014, 10:12
- - Dele   Добрый день! Может немного не суда, но все же....   Jun 11 2014, 02:05


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

 


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


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