HID USB test yazilimi

Başlatan z, 26 Temmuz 2014, 15:44:19

z

Kendi tasarladigim usb donanim ve yazilimlarimi test etmek icin kullaniyorum. Baska tasarimlarla hic denemedim. Dolayisi ile duzgun calisacaginin garantisi yok.

Ozellikleri

Program calistirildiginda PC'ye bagli USB HID cihazlarin kimlik bilgilerini gosterir.
Belirlediginiz Vendor Name ile eslesen cihaz varsa bu cihazla kontrol ve interrupt transferi yapabilir.

Kullanimi

VendorName.txt dosyasina tek satir halinde cihazinizin Vendor Name'inizi yazip kaydedin.
Programi calistirin.
HID cihazlar listelenirken sizin cihazinizi bulursa linki kurar.


Indirmek icin tiklayin

USB mouse ile haberlestiremedim. Hata veriyor. Ama kendi USB cihazlarimla sorunsuz haberlesiyor.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

armsistem

Hocam merhaba , benim de kullandığım c#.net ile bir program lpc2368 hid olarak programladım sıkıntı yok ama bende mouse veya klavye ile haberleştiremedim.

z

Peki verdigim yazilim senin yaptigin usb cihaz ile konusabildimi? (Programi daha once indirdiysen tekrar indir cunku onemli bir iki degisiklik yaptim)
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

acemi2010

Hocam
Mouse protokolü low speed'dir.
Low speed hid prosedürüne görede mi haberleşme olmuyor?

Saygılarımla
Timucin

z

#4
Aslinda USB yazilimimda descriptorlerimi HID olarak hazirladim ama haberlesmeyi HID protokulu ile yaptigimi sanmiyorum.

HID, PC tarafindan surucusuz taninmami saglayan ortu sadece.

PC tarafindaki yazilimi da kendim yazdigim icin haberlesmeyi control ve interrupt transferi olarak gerceklestiriyorum. HID'a ozel protokol varsa da ben bilmiyorum.

Evet benim yaptigim isleme Raw HID ..... deniyormus.

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

acemi2010

Hocam merhaba;
Enumerasyon tamamlandıktan sonra PC tanımlanan cihaz için bir DevNode ataması yapar ve bu DevNode'a ilişkin bu cihaza özel ve dinamik bir Device Stacks alanı ayırır.
PnP (Plug and Play) cihaz ile haberleşilmesi esasen bu stack alanına data yazmakla veya buradan data okumakla olur.

Tasarladığımız cihaz, usage page olarak Vendor Defined'dır; bu urumda device stack'ine ulaşım için Kernel driver yeterldir.
Ancak Mouse ve Keybord gibi cihazların Usage Page'i "Generic Desktop Controls" dur ki, windows burada farklı driverlar da kullanılır.  Kbdclass Driver ve Mouclass Driver.
Muhtemelen sadece kernel driver ile Windows'un çok farklı tanımladığı Mouse ve/veya keybord Device Stack'ine ulaşım mümkün değil gibi
http://msdn.microsoft.com/en-us/library/windows/hardware/ff539956(v=vs.85).aspx

Pek anlamadığı konularda ahkam kesenleri hep eleştirmişimdir; yazdıklarımı okuyunca kendimi acımasızca eleştiresim geldi (!...)

Saygılarımla
Timuçin


armsistem

Hocam bu foruma beğen ikonu koyalım.