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

 
 
> CY7C68013A и PKTEND, поведение CY7C68013A с использованием PKTEND
MSL
сообщение Aug 17 2009, 09:55
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 75
Регистрация: 25-07-04
Из: Rostov-on-Don
Пользователь №: 382



Работаю с CY7C68013A в режиме синхронного slave fifo, EP6 настроена как IN в AUTOIN mode c EP6AUTOINLEN = 0x200, quad buffered. Мастер пишет в EP6 данные и когда ему приходит команда - заканчивает запись дергая PKTEND вместе с последним SLWR. Размеры таких пакетов могут быть от 4х байт до нескольких килобайт. Проблема в том, что если размер отсылаемых данных случайным образом совпадет с 0x200 - то пакет просто "исчезает". В принципе проблема решается если флаг ZEROLEN поставить в 1 и PKTEND дергать через такт после последнего SLWR, но так бы делать не хотелось... Если кто знает - подскажите плиз как лучше решить данную проблему. Считать байты просьба не предлагать-)) Спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ArMouReR
сообщение Aug 18 2009, 20:01
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 61
Регистрация: 3-03-06
Пользователь №: 14 936



Я посмотрел в коде - это то как у меня был сконфигурован EP6
Код
  EP6CFG = 0xE3;  //Bulk,In,512,Tripple
  SYNCDELAY;
  EP6FIFOCFG = 0x0D;           //INFM1=0, AUTOIN=1, ZEROLENIN=1, WORDWIDE=1
  SYNCDELAY;


По поводу ZEROLENIN я ошибся он равен 1.
EP6AUTOINLEN похоже никто не игрался...
Пропажа даты замемечена не была... Попробуйте сделать так...

А зачем экономите такты ? Есть на то обьективная причина ?
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 30th July 2025 - 15:40
Рейтинг@Mail.ru


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