usb hid ve usb cdc hakkında

Başlatan yamak, 08 Mayıs 2013, 00:08:21

yamak

Kafamı karıştıran bi durum var.Usb hid ve usb cdc protokollerini hangi durumlarda kullanarız.Her durumda hid daha avantajlı olmuyo mu eksta driver a gerek yok sonuçta.Yani asıl sorum hangi durumlarda ben hid kullanmayıp da cdc kullanayım.Cdc nin avantajı bant genişliğinin yüksek olması mı?

pea

HID > Birçok veriyi 1mS'de bir atmak için. Saniyede 1000*Veri uzunluğu hız. Max 64KB/sn
CDC > Seri port. 1Mbit/sn'ye çıkıyor. Lisans istemiyor. PC yazılımı gerekmiyor. MATLAB tanıyor.
İki sınıfın da driverı var aslında. "HID driver istemiyor, Windows'ta zaten var" deniyor ama Microchip'in driver'ı olmadan kullanamamıştım ben.

Burak B

Merakımı bağışlayın ama. Bu bahsettiğiniz "Microchip HID Driver" nedir ? Benim bildiğim Microchip' in MHCUSB diye bir custom sürücüsü mevcut. Bundan mı bahsediyorsunuz ?
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

SpeedyX

Alıntı yapılan: pea - 08 Mayıs 2013, 01:01:22CDC > Seri port. 1Mbit/sn'ye çıkıyor. Lisans istemiyor. PC yazılımı gerekmiyor. MATLAB tanıyor.
İki sınıfın da driverı var aslında. "HID driver istemiyor, Windows'ta zaten var" deniyor ama Microchip'in driver'ı olmadan kullanamamıştım ben.
CDC bir seri port emülasyonu olduğu için özel driver ister. HID ise standart bir protokol olduğu için özel driver istemez, işletim sistemi tarafından tanınır.
Haberleşme protokolleri lisans istemezler.
MATLAB hid ile de haberleşir, cdc ile de bulk ile de...
"Zaten driver ı var" kısmına da gelirsek; driver olmadan hiç bir donanım çalışmaz, ekranın bile driver ı var. Önemli olan standart yada özel olmasıdır.

pea

@ByteMaster
Evet o sürücüden bahsediyorum.

@SpeedyX
Ben HID'yi Microchip'in custom sürücüsü olmadan çalıştıramadım. Windows otomatik tanımadı.
MATLAB'in communication toolbox'ında HID sadece belli DAQ kartlarında tanımlıydı. Kendi cihazımızı kullanabilmek için uğraşmak gerekiyordu. CDC ise seri port olduğu için direkt kullanılabiliyor.
USB kullanmak için lisans almak gerekiyor normalde. CDC'de de gerekiyor olabilir, emin değilim. Ama HID'de gerekiyor. Seçilen PID, VID değerlerinin normalde usb.org'dan kaydedilmesi gerekiyor. O da 1000$ gibi bir şey olması lazım. Tabi ürün çıkaracaksak geçerli bu.

mehmet

Atmel ile yapılmış cdc ler...
http://www.recursion.jp/avrcdc/
Tabi max.38400baud oluyor ancak.
Tek başına kullanmak fiyat/performansta
biraz pahalı gelebilir. Ancak komple
sistemin içine gömülüp; özel bir usb
cihaz yapılacaksa uygun olabilir...
libusb-xxx kullanılırsa vid pid için ücrete
gerek kalmıyor...
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr