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

CY7C68013:Передача данных

Добрый день,

Используется чип вместе с FPGA в режиме slave fifo.Передача идет по EP2 (размер 512 байт,двойная буфферизация)

Хост периодически передает данные в контроллер.(один кадр размером 512 байт).

FPGA срабатывает по прерыванию от чипа.

Для этого в коде прошивки в процедуре TD_Poll есть такой код:

  if(!(EP2468STAT & 0x01)) {           //    EP2E

                      
    IOE &= ~_int_dsp_;
        IOE |=  _int_dsp_;
        SYNCDELAY;                    
        OUTPKTEND = 0x02;       
       return;
  }

Тоесть если буффер не пустой дрыгаем ногой.По нему собственно FPGA и начинает вычитывать fifo.

Проблема вот в чем.

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

Я подумал что возможно так происходит из-за двойной буфферизации. Хотя мне кажется что если присылаем всегда один пакет и шлем мы не часто(раз в секунду) то второй буффер не должен быть задействован.Врочем логика работы двойной буфферизации для меня покрыта мраком.Хотелось бы просвятится в этом направлении.

 

ЗЫ: Есть ли возможность убрать двойную буфферизацию.В даташите есть варианты:double triple quad invalid.Что означает invalid.Отсутствие буфферизации?

Спасибо.

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


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

в режиме slave fifo все конфигурации перечислены в описании Figure 3-5. Endpoint Configuration, для буфера 512байт там есть варианты только с 2-3-4 буферизацией.

 

По моему в вашем случае самое подходящее BULK EP + FLAGA.

При этом никаких прерываний и лишнего кода.

Сам для приема передачи использую 5 конфигурацию.

 

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


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

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

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

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

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

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

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

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

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

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