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

Максимальный размер USB-кадра в STM32L1xx

Вопрос знатокам, хорошо знающим USB в STM32L1xx: Чему равен максимально возможный размер USB-кадра для конечных точек, работающих в режиме двойной буферизации или изохронных?

Правильно ли я понимаю, что он определяется формулой: (M-16-8*2)/2; где M - размер "USB Packet Memory", которая у STM32L1xx = 512 байт? И тогда максимальный размер изохронной точки будет: (512-16-8*2)/2 = 240 байт? Или даже: (512-32-8*2)/2=232 байта? (это примерно, в зависимости от реализации USB-стека).

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


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

Обязательна таблица дескрипторов (4 записи по 8 байт) и для нулевой точки буферы (минимум 2 по 8).  Можно ли таблицу дескрипторов делать не полной - не пробовал, да и  не сделают они погоду.

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


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

Вопрос был не про урезание таблицы дескрипторов (именно, что 8 байт никак не спасут), а про возможность передачи содержимого изохронного-кадра в несколько приёмов. Скажем имеем изохронную IN.точку = 1023 байта. Можно ли для неё в USB RAM назначить два буфера скажем по 128 байт, прописать их в дескриптор в addrTx и в addrRx, а потом заполнять их не в одном прерывания сразу весь кадр, а частями по 128 байт, получая прерывание после каждой такой части?

Вообще как-то думал, что второе прерывание (которое high priority) именно для этого и заведено в STM32 - чтобы дёргаться чаще чем на 1кГц для изохронных и bulk-double-buffered точек. Похоже это не так? И 1023-байтные точки на USB.FS STM32 в принципе невозможны? Почему об этом ни слова в мануале??? Жулики STM?  :sad::sad::sad:

9 часов назад, VladislavS сказал:

Можно ли таблицу дескрипторов делать не полной - не пробовал

Я пробовал. С модифицированным стеком, вычисляющим нужный дескриптор альтернативным способом, нормально вырезается один ненужный дескриптор и остаётся 8*3 байт. Наверное ещё один дескриптор можно попробовать выцыганить, объединив ep0-дескрипторы. Что конечно погоды не делает.  😞

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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