Я хотів би задати досить конкретне питання щодо управління живленням USB.
Перш за все, я окреслю дизайн свого пристрою. Це симетричний драйвер сигнальної лінії із вбудованим звуковим кодеком для моєї системи гучномовців DIY. Пристрій внутрішньо розділений на два, головним чином, незалежні блоки: лінійний драйвер із керуючим MCU та аудіокодек (PCI2706 TI). І те й інше потребує підключення даних 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 повна швидкість. Тоді кореневий концентратор ПК повинен IMO постачати 500 мАмп на весь пристрій. Таким чином, я міг би встановити FT232 драйвера таким чином, щоб він вимагав лише 100 мА, і концентратор ніколи не дізнається, чи я перевищив би межу (зважаючи, звичайно, на 500 мА від ПК). Хтось може сказати, чи може це спрацювати?