Я хотел бы задать довольно конкретный вопрос относительно управления питанием USB.
Прежде всего, я опишу дизайн моего устройства. Это симметричный драйвер сигнальной линии со встроенным аудиокодеком для моей акустической системы DIY. Устройство внутренне разделено на два в основном независимых блока: линейный драйвер с управляющим MCU и аудиокодек (TI PCM2706). Для обоих требуется подключение USB-данных (через FT232R для блока драйвера), и все устройство должно питаться от шины. Два блока будут связаны между собой с помощью USB-чипа-концентратора, что приведет к единственному USB-соединению восходящей линии связи с ПК. Я ожидаю, что потребление ступени драйвера будет между 100 и 200 мА (определенно больше, чем одна единица нагрузки).
Возникает проблема: в соответствии со спецификацией USB концентратор с питанием от шины может обеспечить только один модуль на каждый выходной порт, в то время как отводит максимум 5 устройств от входного порта. Я хотел бы знать, что бы сделал концентратор, если бы я запросил два модуля через FT232 для этапа драйвера. Верхний предел в 5 блоков не будет достигнут (1 единица для концентратора, 1 единица для кодека и два для драйвера), поэтому компьютер должен быть физически способен подавать этот ток.
Что касается чипа-концентратора, я проверял http://www.ti.com/lit/ds/symlink/tusb2036.pdf . Есть опция «группового» режима питания, это поможет? Или чип просто отказался бы предоставить два блока водителю? И в этом случае, есть ли грязный обходной путь?
Мне известно о требовании, чтобы устройства высокой мощности также потребляли максимум 100 мА во время подсчета; это не проблема, так как FT232 может включить драйвер сразу после перечисления. Концентратор включит стадии независимо также.
Надеюсь, я изложил свою проблему достаточно ясно и спасибо за ваше время заранее :)
ОБНОВИТЬ:
Я провел еще несколько исследований на чипе TUSB2036. Защита от перегрузки по току может быть отключена с помощью контакта / OCPROT. Затем концентратор сообщает корневому контроллеру, что он не может обнаружить превышение тока. В техническом паспорте есть предупреждение, что защита по OC требуется по спецификации USB 2.0 - для меня это не важно, мне нужен только 1.1 Full-speed. Корневой концентратор ПК должен затем подать ИМО 500 мА на все устройство. Таким образом, я мог установить для FT232 драйвера только 100 мА, и концентратор никогда бы не узнал, превысил ли я предел (конечно, учитывая 500 мА от ПК). Может кто-нибудь сказать, может ли это работать?