Перейти к содержанию
    

2 vad2.

А каким образом аппаратно записать таблицу дескрипторов? В ПДФ гл.12 описан дефолтовый - он состоит из нескольких частей, каждый со своей длиной. И каким образом это пишется. Ведь при записи по 300-ке надо указать длину и данные. (смещение автоматом генерится?)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все понял! Надо посчитать кол-во байт и записать при записи в 0х30.

А стринговые дескрипторы по 16битному Юникоду согласно кодировке загруженной в стринговом дескрипторе 0!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все понял! Надо посчитать кол-во байт и записать при записи в 0х30.

А стринговые дескрипторы по 16битному Юникоду согласно кодировке загруженной в стринговом дескрипторе 0!

Совершенно верно. Я тоже, как и многие коллеги, работаю с собственным дескриптором. Порядок действий тут такой. После сброса я загружаю регистры нужными значениями (меня не устраивают значения по умолчанию, т.к. нужно одной ендпойнте назначить 16-битную шину, а двум другим - 8-битную. Ну и флаги еще жестко пристегнуть, что-б не мучались :-) После этого загружаю свой дескриптор. Микросхема енумерируется в Windows и нормально работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Правильно понимаю, что после подачи питания и сигнала RESET# с выхода IFCLK клоки выдаваться не будут?

 

Из документации:

7.1.3 Bit 5: IFCLKOE

This bit selects if the IFCLK pin is driven. If IFCLKOE = 0

(default), the IFCLK pin is floated. If IFCLKOE = 1, the IFCLK

pin is driven.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Правильно понимаю, что после подачи питания и сигнала RESET# с выхода IFCLK клоки выдаваться не будут?

 

Из документации:

7.1.3 Bit 5: IFCLKOE

This bit selects if the IFCLK pin is driven. If IFCLKOE = 0

(default), the IFCLK pin is floated. If IFCLKOE = 1, the IFCLK

pin is driven.

Если конфигурация по умолчанию и Вы не трогали бит IFCLKOE, то никакого такта там не будет, и вообще этот пин по умолчанию не исползуется, т.к. SX2 по умолчанию работает в асинхронном режиме.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите,

 

Контроллер CY7C68001

 

У меня не получается енумерация без EEPROM:

 

1. Делаю Reset usb

2. Получаю прерывание Ready (т.к. нет EEPROM)

3. Загружаю дескриптор по умолчанию программно от DSP (только VID, PID, DID)

4. Енумерация не присходит (нет прерывания)

 

Хотя с EEPROM все работает:

 

1. Делаю Reset usb

2. Получаю прерывание ENUMOK (в EEPROM прописаны IFCONFIG,POLAR, VID, PID, DID)

3. PC видит USB , все работает

4. Загружаю дескриптор по умолчанию программно от DSP (только VID, PID, DID уже с другими значениями , чем в EEPROM )

5. PC видит USB , все работает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите,

 

Контроллер CY7C68001

 

У меня не получается енумерация без EEPROM:

 

1. Делаю Reset usb

2. Получаю прерывание Ready (т.к. нет EEPROM)

3. Загружаю дескриптор по умолчанию программно от DSP (только VID, PID, DID)

4. Енумерация не присходит (нет прерывания)

Там одна хитрость есть. В регистре IFCONFIG (Register No 0x01) имеется бит DISCON (Bit No 0). Так он по умолчанию установлен, т.е. микросхема логически отключена от USB. Попробуй сбросить этот бит в ноль.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите,

 

Контроллер CY7C68001

 

У меня не получается енумерация без EEPROM:

 

1. Делаю Reset usb

2. Получаю прерывание Ready (т.к. нет EEPROM)

3. Загружаю дескриптор по умолчанию программно от DSP (только VID, PID, DID)

4. Енумерация не присходит (нет прерывания)

Там одна хитрость есть. В регистре IFCONFIG (Register No 0x01) имеется бит DISCON (Bit No 0). Так он по умолчанию установлен, т.е. микросхема логически отключена от USB. Попробуй сбросить этот бит в ноль.

 

Пробовал,

перед загрузкой дескриптора, загружаю все регистры (0x001-0x01D) значениями по умолчанию, в .т.ч. IFCONFIG (0x0C8).

Вроде делаю также как написано в примерах (Bulk Transfers with the EZ-USB SX2™ Connected to a

Hitachi SH3™ DMA Interface и CY3682 Design Notes) .

но ENUMOK нету.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если не в тему извените.

Требуется передать пользовательский поток в 3 а лучше 6 мбит/с в ПВМ, допустим, с микроконтроллера типа АТмеги162, естественно процессор занят сбором этого потока, поэтому проекты программной реализации протокола USB могут рассматриваться только расположенные в отдельном 2ом процессоре.Есть сильные сомнения, что и этот второй процессор (AVR) успеет захватить этот поток параллельно с обработкой USB шины. Cпециальных AVR кристалов от АТмел с интегрированным интерфейсом пока ненашел, на приемлемых условиях. Пока, хотел бы иметь некий переходник с USB на параллельную 8ми битную шину, с буфером для данных внутри.

Поодойдут ли мне обсуждаемые кристаллы?

Или поправьте меня.

Что потребется для использования?

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если не в тему извените.

Требуется передать пользовательский поток в 3 а лучше 6 мбит/с в ПВМ, допустим, с микроконтроллера типа АТмеги162, естественно процессор занят сбором этого потока, поэтому проекты программной реализации протокола USB могут рассматриваться только расположенные в отдельном 2ом процессоре.Есть сильные сомнения, что и этот второй процессор (AVR) успеет захватить этот поток параллельно с обработкой USB шины. Cпециальных AVR кристалов от АТмел с интегрированным интерфейсом пока ненашел, на приемлемых условиях. Пока, хотел бы иметь некий переходник с USB на параллельную 8ми битную шину, с буфером для данных внутри.

Поодойдут ли мне обсуждаемые кристаллы?

Или поправьте меня.

Что потребется для использования?

Спасибо.

Мог бы посоветовать Вам FT245BM, с одной стороны USB с другой стороны 8битная шина с простым контролем), но тут без внешнего буфера на таких скоростях в реальном времени не обойтись - будут потери, но можно в разрыв поставить FIFO типа IDT7205 (на 8к) например, управлять можно всем этим с помощью атмеги, получится гораздо проще чем с сайпрессом, да и API у FTDI-ных чипов проще.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если не в тему извените.

Требуется передать пользовательский поток в 3 а лучше 6 мбит/с в ПВМ, допустим, с микроконтроллера типа АТмеги162, естественно процессор занят сбором этого потока, поэтому проекты программной реализации протокола USB могут рассматриваться только расположенные в отдельном 2ом процессоре.Есть сильные сомнения, что и этот второй процессор (AVR) успеет захватить этот поток параллельно с обработкой USB шины. Cпециальных AVR кристалов от АТмел с интегрированным интерфейсом пока ненашел, на приемлемых условиях. Пока, хотел бы иметь некий переходник с USB на параллельную 8ми битную шину, с буфером для данных внутри.

Поодойдут ли мне обсуждаемые кристаллы?

Или поправьте меня.

Что потребется для использования?

Спасибо.

 

пользовал ISP1581 USB 2.0 контроллеры от филипс с параллельной шиной совместно с мегой128

 

Direct interface to ATA/ATAPI peripherals; applicable only in the split bus mode

Complies fully with Universal Serial Bus Specification Rev. 2.0

Complies with most Device Class specifications

High performance USB peripheral controller with integrated Serial Interface

Engine (SIE), PIE, FIFO memory, data transceiver and 3.3 V voltage regulators

Supports automatic Hi-Speed USB mode detection and Original USB fall-back

mode

High-speed DMA interface (12.8 Mword/s)

Fully autonomous and multi-configuration DMA operation

7 IN endpoints, 7 OUT endpoints and a fixed control IN/OUT endpoint

Integrated physical 8 kbyte of multi-configuration FIFO memory

Endpoints with double buffering to increase throughput and ease real-time data

transfer

Bus independent interface with most microcontroller/microprocessors

(12.5 Mbyte/s)

12 MHz crystal oscillator with integrated PLL for low EMI

Integrated 5 V-to-3 V built-in voltage regulator

Software controlled connection to the USB bus (SoftConnect™)

Complies with the ACPI™, OnNow™ and USB power management requirements

Internal power-on and low-voltage reset circuit, also supporting a software reset

Operation over the extended USB bus voltage range (4.0 to 5.5 V) with 5 V

tolerant I/O pads

Operating temperature range -40 to +85 °C

Available in LQFP64 package.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите,

 

Контроллер CY7C68001

 

У меня не получается енумерация без EEPROM:

 

1. Делаю Reset usb

2. Получаю прерывание Ready (т.к. нет EEPROM)

3. Загружаю дескриптор по умолчанию программно от DSP (только VID, PID, DID)

4. Енумерация не присходит (нет прерывания)

Там одна хитрость есть. В регистре IFCONFIG (Register No 0x01) имеется бит DISCON (Bit No 0). Так он по умолчанию установлен, т.е. микросхема логически отключена от USB. Попробуй сбросить этот бит в ноль.

 

Пробовал,

перед загрузкой дескриптора, загружаю все регистры (0x001-0x01D) значениями по умолчанию, в .т.ч. IFCONFIG (0x0C8).

Вроде делаю также как написано в примерах (Bulk Transfers with the EZ-USB SX2™ Connected to a

Hitachi SH3™ DMA Interface и CY3682 Design Notes) .

но ENUMOK нету.

при енумерации грузится весь дескриптор, или точнее все дескрипторы, а не только VID, PID, DID. Грузи весь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за ответы,

но проблема была в железе,

 

заработало как должно быть

работает и с загрузкой всего дескриптора, так и по умолчанию (только VID, PID, DID)

 

1. Делаю Reset usb

2. Получаю прерывание Ready (т.к. нет EEPROM)

3. Загружаю дескриптор по умолчанию программно от DSP (только VID, PID, DID)

4. Енумерация происходит

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Скажите, пожалуйста, а кто-то подключал CY7C68001 к AT91RM9100? (изначально идея такая http://electronix.ru/forum/index.php?showtopic=16589)

 

Никто не подключал САБЖ к микроконтроллеру как внешнюю SRAM, никаких граблей при этом не было?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пока, хотел бы иметь некий переходник с USB на параллельную 8ми битную шину, с буфером для данных внутри.

Поодойдут ли мне обсуждаемые кристаллы?

IMHO, ничего проще CY7C68001 и быть не может :-) Микросхема, кварц, несколько резисторов/конденсаторов - все, что нужно для организации высокоскоростного канала USB 2.0 в своей разработке (и стоит все это копейки, что иногда бывает немаловажно). Занимает это дело 2-3 квадратных сантиметра на плате. Присоединяется CY7C68001 к микроконтроллеру/ПЛИС самым стандартным образом: CS/, RD/, OE/ (можно соединить с RD/), WR/, READY (можно не использовать), INT/ (можно не использовать), шина данных 8 или 16 бит и шина адреса. Куда уж проще? Если поставить еще малюсенькую сериальную ЕЕПРОМку, то микроконтроллер вообще сможет работать с USB 2.0 аналогично простейшей FT245. Однако, в отличие от FT245, вы получите кроме высокой скорости еще и 4 ендпойнта (две - туда, две - обратно) с двойным буферированием (2 х 512 байт каждая). Кроме того, можно очень гибко организовать буферирование, например, иметь 2 ендпойнта с 4 х 512 или 2 х 1024 буферами каждая.

 

На компьютерной стороне тоже все хорошо. Используя сайпрессовскую CY4604 - USB Developer's uStudio v1.5.1.1 я еще не сталкивался с проблемой ресета компьютера, как с драйверами от FTDI (правда, коллега Trashy упоминал о проблемах с EZUSB.SYS, но я работаю с CyUSB.sys, т.к. это рекомендует сам изготовитель микросхемы).

 

В общем, рекомендую :-)

 

Никто не подключал САБЖ к микроконтроллеру как внешнюю SRAM, никаких граблей при этом не было?
Я подключил, правда, не напрямую к микроконтроллеру, а через ПЛИС, но никаких граблей с этой микросхемой нет. Она выглядит просто как блок из 8-ми ячеек памяти (используется только пять). Сигналы для присоединения к микроконтроллеру тоже вполне стандартные.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...