http://www.usb.org/developers/hidpage/dt2_4.zip (http://www.usb.org/developers/hidpage/dt2_4.zip)
HID Descriptor tanımlarını oluştururken yol gösterebilecek uygulamalı açıklamasını yapan güzel bir kaynak
http://www.frank-zhao.com/cache/hid_tutorial_1.php (http://www.frank-zhao.com/cache/hid_tutorial_1.php)
Genel amaçlı tüketici denetim aygıtı diye bir şey var. input output 64 bayt. işte bunu kullanıcaz. Descriptor size özel veya bilinen bir tanımlama yapmanızı sağlar. aslında hiç de bir işe yaramaz. aygıtınızı joystik olarak göstertmek isterseniz, veya bilinen başka aygıt volum kontrol düzeneği olarak göstertmek isterseniz işe yarar,
Böyle göstermeniz, ayrıca program kullanmayacaksanız gerekli olur. windows aygıtı bulsun denetim masasında görünsün ayrıca programı olmasın derseniz işe yarar. kıl bir şekilde windows menülerinden ayarlarsınız.
Alıntı yapılan: ErsinErce - 06 Haziran 2012, 23:00:33
HID Descriptor tanımlarını oluştururken yol gösterebilecek uygulamalı açıklamasını yapan güzel bir kaynak
http://www.frank-zhao.com/cache/hid_tutorial_1.php (http://www.frank-zhao.com/cache/hid_tutorial_1.php)
Anlamaya calisiyorum fakat olmuyor.
@T2
Sana hak veriyorum. Fakat report desriptoru kirpamazmiyiz. Kafa karistiran gereksiz satirlar kaldirilip atilabiliyorsa atalim.
Hocam Muhtemel İncelemişsindir.
http://www.lvr.com/usb.htm (http://www.lvr.com/usb.htm)
usb description a gelince kırpılacak yer bulamadım ben.
Vendor Usage ile ilgili örnek (sf.31) ve kullanımları açıklayan bir app note hocam bir de buna gözatın isterseniz
http://www.silabs.com/Support%20Documents/TechnicalDocs/AN249.pdf (http://www.silabs.com/Support%20Documents/TechnicalDocs/AN249.pdf)
ayrıca pudn de usb osiloskop projesinin hid descriptor'unu yakaladım bu şekilde yazmışlar bunu da bir inceleyin hocam isterseniz
6, 0, 255, // Usage Page = Vendor Defined
9, 1, // Usage = IO device
0xa1, 1, // Collection = Application
0x19, 1, // Usage minimum
0x29, 8, // Usage maximum
0x15, 0x80, // Logical minimum (-128)
0x25, 0x7F, // Logical maximum (127)
0x75, 8, // Report size = 8 (bits)
0x95, 8, // Report count = 8 bytes
0x81, 2, // Input (Data, Var, Abs)
0x19, 1, // Usage minimum
0x29, 8, // Usage maximum
0x75, 8, // Report size = 8 (bits)
0x95, 8, // Report count = 8 bytes
0x91, 2, // Output (Data, Var, Abs)
0xc0 // End Collection
Tam adres;
http://read.pudn.com/downloads132/sourcecode/others/564199/DIY%20USB%20PC%20OSC/usb_desc_hid%208-byte.h__.htm (http://read.pudn.com/downloads132/sourcecode/others/564199/DIY%20USB%20PC%20OSC/usb_desc_hid%208-byte.h__.htm)
Edit: descriptor'un alındığı orijinal adres http://semifluid.com/2006/03/27/pic18f2550-usb-hid-oscilloscope/ (http://semifluid.com/2006/03/27/pic18f2550-usb-hid-oscilloscope/)
Ayrıca VB kodları da mevcut
Alıntı yapılan: z - 07 Haziran 2012, 01:20:49
@T2
Sana hak veriyorum. Fakat report desriptoru kirpamazmiyiz. Kafa karistiran gereksiz satirlar kaldirilip atilabiliyorsa atalim.
report desriptorun içeriğini ben pek anlamıyorum ne desem boş. logical minimum ne olaki?
Bir yerde Usage minimum = 1 demiş. bunu 8 yapsak işlemler güzelleşir, daha hızlı mı tamamlanır?
feature yerine report kullanmak ne demek birinin diğerine üstünlüğü olur mu? hiç bir fikrim yok.
Report count, HID_INT_IN_EP_SIZE ve HID_INT_OUT_EP_SIZE ile eşit olması gerekiyor. bu bilgi işinize yarayabilir.
jan axelson (ben erkek sanıp mail atmıştım. bayan cevap vermişti. :) ) kitabını şiddetle tavsiye ederim..
jan axelson gibi adamların kitabı yüzünden millet hid mid nedir öğrenemedi gitti. Şunu bu işi bilerek izah edecek biri daha çıkmadı. Ben bodosloma pratik uygulamalarla başlamanızı basitten zora doğru ilerlemenizi öneririm.
Hidin bilinecek uzmanlaşılacak hali yok. Sana gerektiği kadar kağıtlara bakıp veya hazır koddan kopyalayıp descriptor kullanılacak. Hid uzmanı filan yok. ezbere bilinecek şeyler değil. hid 1.0 hid 1.10 hid 1.11 gibi çeşitli versiyonlar var. oku oku bitmez. ne iişe yarayacak. bunu kim niye anlatacak. 1 kere lazım olacak şey. descriptor mu lazım yap kullan. artık sabah akşam kalkıp hid özelliklerini ezberlemek anlatmak gerekmez. bir kere lazım olur. bin kere kullanılır.
bazı önemli bilgiler şunlar:
hid interface'i interrıupt transfer yapar başka türlü olmaz. Bulk olmaz. isochronous olmaz.
Hid aygıtta transfer için 1 end point kullanılır. 2. bir endpoint açayım onunla da transfer yapayım dersen olmaz. 2. interface'ler ilave etmek gerekir. hidmakerFS denen program bu nu yapmaktadır.
hidin basiti 1input 1 output endpointi olan halidir. 64 bayt gönderir 64 bayt alabilirsin.
karmaşık olanı ise en az 2 interface sahibi olan halidir.
Alıntı yapılan: t2 - 07 Haziran 2012, 22:29:27.....hid interface'i interrıupt transfer yapar başka türlü olmaz. Bulk olmaz. isochronous olmaz.
Hid aygıtta transfer için 1 end point kullanılır. hidin basiti 1input 1 output endpointi olan halidir. 64 bayt gönderir 64 bayt alabilirsin....
Peki ben nerede hata yapiyorum.
PC tarafinda usb cihazdan talep ederek, Get report ve Get Feature ile 64 byte veri alabiliyorum. Bunun disinda usb cihazdan veri alma sekli varmi? Varsa adi ne?
EDIT: Galiba ben hep control transfer yaparak veri alis verisi yapiyorum. Halbuki HID cihazlarda interrupt transferi de var. Fakat bu transfere ait tek bir satir kodum dahi yok.
Gelisi guzel bir zamanda endpoint 1 den PC ye veri yollasam olurmu?
Get report ve Get Feature nedir nasıl kullanırım bilmiyorum. pic için konuşursak derleyicideki hazır gönderme komutları ve örnekleri çalışıyor.
Protonda
dene:
usbout 1, buffer0, 64 ,dene
diyoruz kendisi 1 nolu endpointten gidiyor. Pakedi yerine yerleştirene kadar dene etiketine dallanıyor. buffer yüklendikten sonra BU transfer tamamlandı anlamına gelmez. sıraya konmuştur. interval oluştuğunda HOSTtan çağrı geldiğinde yerine varacak demektir. Benim anladığım bu.
HID tanımı gereği sınırlama var. Hidde interval minimum 1ms olabilir. buffer 64 bayt olabilir. yani 1ms de 64 bayttan daha fazla veri gitmez.
"USB cihazdan veri alma şekli" daha genelş bir ifade olsa gerek. belki de Get report ve Get Feature dediğiniz komutlar sadece hid için kullanılabilir.
@t2 hocam, boş vaktinde şuna da bir el at https://www.picproje.org/index.php/topic,29075.msg290934.html#msg290934 (https://www.picproje.org/index.php/topic,29075.msg290934.html#msg290934)
http://www.usblyzer.com/download.htm (http://www.usblyzer.com/download.htm)
usb paketleri analiz etme programi. (33 gunlugune bedava)
Usblyzer programinda gelen giden datalarin tamamini goremiyorum. Datalarin sadece basindan bir kismini gosteriyor. Ornegin 12,23,45,56..... gibi.
Sondaki ...... lar bedava deneme surumunu kullandigimiz icinmi? Lisansli yada kirik kullanan varmi? Sizde de mi datalarin tamami gorunmuyor?
ben crack lı kullanıyorum 2.20 versiyonunu nette var
Daha eski versionlarının ilaçlısını sonsivri de gördüm gibi hatırlıyorum.
Alıntı Yapben crack lı kullanıyorum 2.20 versiyonunu nette var
Nerede? Bulduklarımı kıramadım.
http://rapidshare.com/files/456390327/USBlyzer.2.0.20.rar (http://rapidshare.com/files/456390327/USBlyzer.2.0.20.rar)
4shared e yüklerken tıkanıyor nedense bir ara yeniden denerim şimdilik buyrun
Aynı hata,
USBlyzer2.20-mansooreyan.exe çalıştırdığımda
(http://s15.postimg.cc/vpvdds9ob/Ekran_Al_nt_s.png) (http://postimg.cc/)
image upload (http://postimg.cc/)
Sanıyorum bu programcık DOS ve x64 sorunu.
Alıntı yapılan: OG - 09 Haziran 2012, 17:11:40
Aynı hata,
USBlyzer2.20-mansooreyan.exe çalıştırdığımda
(http://s15.postimg.cc/vpvdds9ob/Ekran_Al_nt_s.png) (http://postimg.cc/)
image upload (http://postimg.cc/)
Sanıyorum bu programcık DOS ve x64 sorunu.
serial i crack a gircen anladın dimi
ben xp sp3 kullanıyorum en küçük sorun yok
Annadııım annadım ;)
Ha işte, o seriyi doğru olarak kabul etmesi için önce bu patch çalışması gerekiyor, o patch de çalışmıyor,
Annadın demi.
http://doctus.org/showthread.php?t=44579&p=388350&viewfull=1#post388350 (http://doctus.org/showthread.php?t=44579&p=388350&viewfull=1#post388350)
Alıntı yapılan: OG - 09 Haziran 2012, 17:22:22
Annadııım annadım ;)
Ha işte, o seriyi doğru olarak kabul etmesi için önce bu patch çalışması gerekiyor, o patch de çalışmıyor,
Annadın demi.
http://doctus.org/showthread.php?t=44579 (http://doctus.org/showthread.php?t=44579)
bizim gibi programcılar 2 sene daha xp sp3 kullanmak zorunda win7 bize gelmez bu tip sorunlar çıkıyor
yalnız o patch değil crack programın çalıştığı klasöre koycan çalıştırıp seriali gircen o kadar normalde o şekilde
Annadiginizi bi de bana annatin.
Gercekten bu isleri kendi basima beceremiyorum.
Adim adim yazabilirmisiniz. Ben de kirayim.
Sistem 64 bit ise zor gibi, uğraşma hocam. Patch çalışmıyor. Patch çalışmayınca seri noyu kabul etmiyor.
Başka program vardır aynı işleri yapan.
Anahtar kelime şunlar olsa gerek,
USB Traffic Analyzer
USB traffic monitor
USBTrace
usb sniffer
USBSpy
USB Spy
XP kullaniyorum.
patch ile yanındaki key dosyasını programın kurulu olduğu yere kopyalayıp patchi orada çalıştırmayı denedinizmi..
Henuz bir sey denemedim. Bu arada kullandigim programin veriyonu (2.0 Build 25)
http://www.sysnucleus.com/ (http://www.sysnucleus.com/)
Buradan Kitabı
http://avaxhome.ws/ebooks/usb_design_by_example_a_practical_guide_to_building_i_o_devices.html (http://avaxhome.ws/ebooks/usb_design_by_example_a_practical_guide_to_building_i_o_devices.html)
Buradan Programın daha ileri versionunu (senin işini görüen bir programmı bilmiyorum)
http://avaxhome.ws/software/software_type/utilities/USBTrace2.6.1.74.html (http://avaxhome.ws/software/software_type/utilities/USBTrace2.6.1.74.html)
Link kırıksa buraya yükledim (prg)
https://hotfile.com/dl/159255395/cbda428/SysNucleus_USBTrace_2.6.1.74.rar.html (https://hotfile.com/dl/159255395/cbda428/SysNucleus_USBTrace_2.6.1.74.rar.html)