USB güç yönetimi ile ilgili oldukça özel bir soru sormak istiyorum.
Her şeyden önce, cihazımın tasarımını ana hatlarıyla anlatacağım. DIY hoparlör sistemim için yerleşik bir ses codec bileşenine sahip simetrik bir sinyal hattı sürücüsü. Cihaz dahili olarak çoğunlukla bağımsız iki bloğa ayrılmıştır: kontrol eden MCU ve ses kodekine sahip çok hatlı sürücü (TI'nin PCM2706). Her ikisi de USB veri bağlantısına ihtiyaç duyar (sürücü bloğu için bir FT232R üzerinden) ve tüm cihaza veri yolu ile güç verilmelidir. İki blok, bir USB hub çipi ile birbirine bağlanacak ve PC'ye tek bir yukarı bağlantı USB bağlantısı sağlayacak. Sürücü aşamasının tüketiminin 100 ile 200 mA arasında (kesinlikle birden fazla yük birimi) olmasını bekliyorum.
Sorun geliyor: USB spesifikasyonuna göre, veri yolundan güç alan bir hub, yukarı akıştan maksimum 5 birim çekerken, aşağı akış bağlantı noktası başına yalnızca bir birim sağlayabilir. FT232 üzerinden sürücü aşaması için iki ünite talep etsem hub ne yapardı bilmek istiyorum. 5 birim yukarı akış sınırına ulaşılamaz (hub için 1 birim, kodek için 1 birim ve sürücü için iki birim), bu nedenle bilgisayarın fiziksel olarak bu akımı sağlayabilmesi gerekir.
Hub çipi için http://www.ti.com/lit/ds/symlink/tusb2036.pdf adresini ziyaret ediyorum . "Çete" güç modu seçeneği var, bu herhangi bir yardım olur mu? Yoksa çip sürücüye iki ünite vermeyi reddeder mi? Ve bu durumda, kirli bir çözüm var mı?
Numaralandırma sırasında maksimum 100 mA çekmek için yüksek güçlü cihazların da gerekli olduğunun farkındayım; FT232 numaralandırmadan hemen sonra sürücüyü açabildiğinden bu bir sorun değildir. Hub aşamaları bağımsız olarak da açacaktır.
Umarım sorunumu yeterince açık ve zaman ayırdığınız için şimdiden teşekkür ederim :)
GÜNCELLEME:
TUSB2036 yongası hakkında biraz daha araştırma yaptım. Aşırı akım koruması / OCPROT pimi ile kapatılabilir. Ardından hub, aşırı akım algılayamadığını kök denetleyiciye bildirir. Veri sayfasında USB 2.0 özellikleriyle OC korumasının gerekli olduğuna dair bir uyarı var - bu benim için önemli değil, sadece 1.1 Tam hıza ihtiyacım var. PC'nin kök hub'ı IMO'ya tüm cihaza 500 mAmp güç sağlamalıdır. Böylece, sürücünün FT232'sini sadece 100 mA gerektirecek şekilde ayarlayabilirim ve hub, limiti aşıp aşmayacağımı asla bilemezdi (PC'den 500 mA'ya saygı duyarak elbette). Birisi bunun işe yarayıp yaramayacağını söyleyebilir mi?