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

пару вопросов по USB

Итак только начал знакомится с usb, появилось несколько вопросов.

 

Собираюсь сделать Usb Audio Device c DSP ядром. Устройство будет подключатся к девайсу на андроиде.

На устройство необходимо передавать аудиопоток и коэффициенты для фильтров (порядка 333байт по изменению).

Причём всё должно обслуживатся стандартными драйверами на устройстве.

С аудиопотоком проблем нет, возник вопрос как передать коэфициенты. Если я правильно понимаю то реализовать можно добавив отдельный интерфейс HID Consumer Control и из своей программы отсылать коофициенты именно этому интерфейсу через Interrupt pipe.

1)Смогу ли я передать коофициенты во время активного воспроизведения? Аудиопоток при этом не прервётся?

2)Аудиопоток будет асинхронным с фидбэк конечной точкой. С чего начинается воспроизведение, с запроса данных от фидбэка или с пакета аудиоданных?

Изменено пользователем maxis

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


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

А почему не передавать эти коэфф. через Ep0?

С EP0 будет работать только 8051 ядро CY7C68013A, а остальные эндпоинты будут заведены в плис.

Мне кажется что реализовать протокол по EP0 в этом случае сложнее.

 

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


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

С EP0 будет работать только 8051 ядро CY7C68013A, а остальные эндпоинты будут заведены в плис.

Мне кажется что реализовать протокол по EP0 в этом случае сложнее.

Вам конечно виднее, ибо тут телепатов нет чтобы угадывать что у Вас там за схема. Вначале говорили о DSP (с USB), сейчас уже оказывается CY7C68013A + ПЛИС. Как тут можно что-то подсказать?

И непонятно - в чём сложность EP0 в CY7C68013A? Хост периодически будет запрашивать коэфф. у устройства, а оно будет отвечать.

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


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

Вам конечно виднее, ибо тут телепатов нет чтобы угадывать что у Вас там за схема. Вначале говорили о DSP (с USB), сейчас уже оказывается CY7C68013A + ПЛИС. Как тут можно что-то подсказать?

И непонятно - в чём сложность EP0 в CY7C68013A? Хост периодически будет запрашивать коэфф. у устройства, а оно будет отвечать.

Ну под DSP я имел ввиду просто обработку сигнала, которая будет включать в себя один 31 полосовой эквалайзер, после - разделение на 8 каналов, линию задержек и 10 полосный эквалайзер на каждый канал. Эквалайзеры состоят из последовательно включенных "Second-Order" фильтров, для которых необходимо по 5 коэффициентов в формате 4.20. Итого 333 байт + 8 байт задержек. Попробую сейчас проверить на STM32 (пока отладка сайпрасса едет из китая), но есть подозрения что данные будут передаваться довольно долго.

 

Я так понимаю вы предлагаете использовать Extension Unit для передачи данных?

Не возникнет ли проблем при попытке отправить данные ep0 из андроид приложения при использовании стандартного драйвера?

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


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

Я так понимаю вы предлагаете использовать Extension Unit для передачи данных?

Не возникнет ли проблем при попытке отправить данные ep0 из андроид приложения при использовании стандартного драйвера?

Не знаю что такое Extension Unit и про Андроид ничего не знаю.

Но в своих устройствах использовал EP0 для периодических небольших передач во время работы изохронных точек - никаких проблем не было.

Для EP0 по стандарту выделяется как минимум 10% полосы пропускания USB-шины. На это можно рассчитывать железно.

Кроме того думаю - если шина недозагружена (не вся полоса распределена между высокоприоритетными изохронными и интеррапт точками), то будет выделяться и больше.

Какая Вам результирующая средняя скорость передачи этих данных нужна? Т.е.: 333+8 байт с каким периодом должны передаваться в хост?

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


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

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

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

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

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

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

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

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

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

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