|
|
  |
USB, EZ-USB FX2 |
|
|
|
Nov 4 2010, 19:07
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644

|
Цитата(toweroff @ Nov 4 2010, 22:27)  Подскажите с такой проблемой 1. Под руками оказалась только AT24C256 - вроде ж должно быть без разницы? А0 висит на VCC, но прошивание EEPROM средствами CyConsole, FxEEPROM приводит ни к чему (при перезапуске супресс опять как дефолтный), хотя они и говорят, что все ок... Что такое "FxEEPROM"? В CyConsole для прошивки AT24C256 нужно использовать "Lg EEPROM". А, понял, "FxEEPROM" - это пример из папки "\CyAPI\examples\FxEEPROM". Выложите схему подключения EEPROM. Ну, или сравните со схемой подключения в теме Проблема с cy7c68013a. Цитата(toweroff @ Nov 4 2010, 22:27)  ... Заливание прошивки напрямую в RAM вызывает нормальную реинумерацию, но возникает пункт 2. Проверьте, не используете ли вы драйвер Win7 x64 или WinXP x64 для WinXP x86. Судя по описанию кода 10, Вы используете не тот драйвер. Хотя, как же не тот, когда CyConsole и FxEEPROM у Вас работают. Попробуйте принудительно установить (обновить) драйвер для Streamer. Для Win7 x64 смотрите тему Проблема CyUSB.sys и 64-х битных Windows.
Сообщение отредактировал Konst_777 - Nov 4 2010, 19:31
|
|
|
|
|
Nov 4 2010, 19:24
|

Гуру
     
Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514

|
Цитата(Konst_777 @ Nov 4 2010, 22:07)  Что такое "FxEEPROM"? В CyConsole для прошивки AT24C256 нужно использовать "Lg EEPROM". Выложите схему подключения EEPROM. Ну, или сравните со схемой подключения в теме Проблема с cy7c68013a. FxEEPROM - я так понял, еще одна утилита для прошивки. Но Lg EEPROM тоже пользовался, не помогает Подключение в порядке, по крайней мере CY7C68001 на той же плате нормально поднимался Цитата(Konst_777 @ Nov 4 2010, 22:07)  Проверьте, не используете ли вы драйвер Win7 x64 или WinXP x64 для WinXP x86. точно нет. Но секции [Device], [Device.NT], [Device.NTx86] и [Device.NTamd64] там все одинаковые, во всех присутствует описание вид-пидов и комментарии убраны Может тут собака порылась? на всякий случай -
cyusb.rar ( 1.2 килобайт )
Кол-во скачиваний: 174Цитата(Konst_777 @ Nov 4 2010, 22:07)  Судя по описанию кода 10, Вы используете не тот драйвер. Для Win7 x64 смотрите тему Проблема CyUSB.sys и 64-х битных Windows.спасибо, буду посмотреть
|
|
|
|
|
Nov 4 2010, 22:03
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644

|
Цитата(toweroff @ Nov 4 2010, 22:24)  ...Подключение в порядке, по крайней мере CY7C68001 на той же плате нормально поднимался... А, так Вы перепаивали CY7C68013A вместо CY7C68001. Тогда проверьте все связи FX2LP с EEPROM (адресация, запрет программирования, резисторы подтяжки на линиях SCL и SDA). Цитата(toweroff @ Nov 5 2010, 00:41)  добавлю еще - как только VID_04B4&PID_1003 - вешалка или ошибка установки. В других комбинациях - порядок... мистика  Столкнулся с такими же проблемами для Streamer, как и у Вас. Уже почти сдался. Но, после Вашего сообщения решил посмотреть еще раз. И нашел в чем дело  . Этот самый Streamer во время работы что-то записывает в EEPROM. А у Вас и у меня EEPROM отключен. Ну, а дальше понятно. Выкладываю вариант firmware с отключенной записью в EEPROM. Вообще-то, я там много чего отключил. Будет желание, посмотрите.
|
|
|
|
|
Nov 4 2010, 23:03
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644

|
Цитата(toweroff @ Nov 5 2010, 01:46)  ...Кстати, а как вывести 68013 опять к дефолту, без отрывания ног от прошитой EEPROM? Рекомендуемую схему подключения EEPROM можно посмотреть в теме Проблема с cy7c68013a. А обсуждение такого решения в теме Использование EEPROM для CY7C68013A (FX2LP). Все. Уползаю спать.
|
|
|
|
|
Nov 5 2010, 00:01
|

Гуру
     
Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514

|
Konst_777, большое спасибо, драйвер встал как надо. Теперь буду разбираться с проектом вообще Но пока, похоже, Streamer не видит девайс... буду разбираться с проблемой Цитата(Konst_777 @ Nov 5 2010, 02:03)  Рекомендуемую схему подключения EEPROM можно посмотреть в теме Проблема с cy7c68013a. А обсуждение такого решения в теме Использование EEPROM для CY7C68013A (FX2LP). нет-нет, это мой косяк, специально на плате подтянул Write Protect к питанию, а потом постоянно на него наступал  Итак, в булку Transfer Rate показывает 43800 КБайт/с, что есть хорошо и косяков с платой нет. Теперь попробую все это отконфигурить под свой проект и заточить под libusb Konst_777, еще раз большое спасибо!
|
|
|
|
|
Nov 5 2010, 13:17
|

Гуру
     
Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514

|
А вот еще проблемка интересная - теперь уже по поводу интерфейса FX2--Master в режиме FX2 - Slave FIFO С SX2 понятно - событие, ловим прерывание, спрашиваем, что случилось, что-то делаем. Тут как такового прерывания к мастеру нет. Как счастливые пользователи FX2 и контроллера с обычной шиной (A, D, /W, /R, /CS) выгребают данные / отправляют данные, чтобы контроллер мог заняться чем-то еще, кроме как вертеть в цикле FIFOADDR и проверять флаги?
уточню: 1. Плата разрабатывалась под 68001, с (может быть - токопотребление свою роль играет) заменой на 68013А. Документация изучалась для 68001, для 68013 бегло, в этой или в параллельной ветке по супрессу указывалась пин-в-пин замена, поэтому дальше копать не стал 2. Т.к. большинство алгоритмов было заточено под прерывание от слэйва, а с 68013 это аппаратно, похоже, не получится, насколько критично, с точки зрения производительности, будет выставлять (и сбрасывать) этот флаг в 68013 (имеется ввиду PA1/INT1#) внутри FX2? Похоже, для FIFO нет прерывания для мастера, EP0 вообще должен обрабатывать только супресс
|
|
|
|
|
Nov 5 2010, 18:18
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644

|
Цитата(toweroff @ Nov 5 2010, 17:17)  ...С SX2 понятно - событие, ловим прерывание, спрашиваем, что случилось, что-то делаем... То же самое и для FX2LP: конфигурируем, например, FLAGA (а есть еще FLAGB, FLAGC и FLAGD) в Fixed mode, чтобы он устанавливался в нужное состояние, когда выбранное OUT FIFO непустое. Тогда FLAGA и будет Вашим прерыванием. И даже не нужно спрашивать, что случилось. Сразу вычитывайте OUT FIFO, пока оно не станет пустым. И не нужно "вертеть в цикле FIFOADDR".
|
|
|
|
|
Nov 5 2010, 22:28
|

Гуру
     
Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514

|
Цитата(Konst_777 @ Nov 5 2010, 21:18)  То же самое и для FX2LP: конфигурируем, например, FLAGA (а есть еще FLAGB, FLAGC и FLAGD) в Fixed mode, чтобы он устанавливался в нужное состояние, когда выбранное OUT FIFO непустое. Тогда FLAGA и будет Вашим прерыванием. И даже не нужно спрашивать, что случилось. Сразу вычитывайте OUT FIFO, пока оно не станет пустым. И не нужно "вертеть в цикле FIFOADDR". это понятно  я имею ввиду ситуацию, когда нет возможности сделать прервание на фронт произвольной ноги контроллера прерывание контроллера уже заведено на ногу 41 FX2 (т.е. SX2 - разрабатывалось для него) в корпусе SSOP56 вся трабла в том, что дока по 13А читалась бегло, что порождает кучу софтверных и, скорее всего, хардварных проблем
|
|
|
|
|
Nov 6 2010, 06:52
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644

|
Цитата(toweroff @ Nov 6 2010, 01:28)  ...вся трабла в том, что дока по 13А читалась бегло, что порождает кучу софтверных и, скорее всего, хардварных проблем Да ладно  Ну, перешла печатная плата Вашего модуля из разряда "боевой" в разряд макетной. Что, это в первый раз, что ли  . Решите все вопросы с помощью этой платы, скальпеля и паяльника. А, после получения работающего модуля, переразведете плату
|
|
|
|
|
Nov 6 2010, 09:12
|

Гуру
     
Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514

|
Цитата(Konst_777 @ Nov 6 2010, 09:52)  Да ладно  Ну, перешла печатная плата Вашего модуля из разряда "боевой" в разряд макетной. Что, это в первый раз, что ли  . Решите все вопросы с помощью этой платы, скальпеля и паяльника. А, после получения работающего модуля, переразведете плату  ну только и остается  зато можно попробовать реализовать еще одну фичу - засунуть прошивку EEPROM в контроллер и, фактически, выступать для FX2 в ее роли. Дабы никто не испортил загрузчик супресса
|
|
|
|
|
Nov 6 2010, 12:32
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644

|
Цитата(toweroff @ Nov 6 2010, 13:12)  ... засунуть прошивку EEPROM в контроллер и, фактически, выступать для FX2 в ее роли... Только, тогда и Reset должен поступать на FX2 от контролера. И, если Reset выдается на контроллер, то он должен формироваться и для FX2 (предусмотреть подтяжку к нулю питания вывода Reset для FX2). А какой контроллер Вы используете? И какую скорость обмена по USB планируете получить?
|
|
|
|
|
Nov 6 2010, 14:24
|

Гуру
     
Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514

|
Цитата(Konst_777 @ Nov 6 2010, 15:32)  Только, тогда и Reset должен поступать на FX2 от контролера. И, если Reset выдается на контроллер, то он должен формироваться и для FX2 (предусмотреть подтяжку к нулю питания вывода Reset для FX2).
А какой контроллер Вы используете? И какую скорость обмена по USB планируете получить? с ресетом понятно, изначально так и закладывалось, что управляться будет контроллером используется ARM LPC2468, скорость вполне устроит ~30МБайт/с кстати, насчет прерываний. У меня, фактически, можно без них обойтись, софт тупо ждет пакет, потом либо гонит данные в себя, либо из себя, в известном объеме. Потом опять ждет. То есть в этой реализации можно обойтись без прерываний, вопрос был, скорее, на будущее
|
|
|
|
|
  |
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|