Haberler:

Forum kuralları güncellendi LÜTFEN  okuyunuz:  https://bit.ly/2IjR3ME

Ana Menü

Usb HID sorunu hk.

Başlatan againyigit, 07 Ekim 2014, 01:44:53

againyigit

Arkadaşlar şöyle bir sorunum var;
Bir ups cihazım var usb bağlantısı mevcut(Serial port çıkışı yok) HID olarak görüyor pc ve elektriğin gittiğini anlamak için bu cihaza c# ile data gönderip status bilgisi almak istiyorum fakat net üzerinde ki HID dll leri(SAmple'ları) ile bu işlemi gerçekleştiremedim.Bazılarında cihaza connect oluyorum fakat cihaz bilgilerini alırken yada data gönderirken hata almaktayım.Sistemim Windows 7 x64.Stabil çalışan bir sample yada API(Dll) önerebilirmisiniz.
Göndermek istediğim dataları usb monitör programı ile buldum çünkü cihazın usb spec'i yok serial port komutları mevcut.
Herkese iyi bayramlar.
Yardımlarınızı rica ediyorum.

mur@t


Daha önce kullandığım UPS için benzer bir program yazmıştım.
http://skyblg.wordpress.com/2013/01/12/delphi-ile-usb-port-okumayazma/

ben Delphi'de yazmıştım ama siz C# için aşağıdaki örneği kullanabilirsiniz. (UsbLibrary.dll kullanıyor)
http://skyblg.wordpress.com/2013/08/28/c-hid-usb-ornegi/

Zaten HID Terminal ile gelen dataları görmüşsünüz. Dataları parse etmekten başka iş kalmıyor...

iyi bayramlar...

againyigit

#2
Teşekkürler Deneyeceğim.

mesaj birleştirme:: 07 Ekim 2014, 20:01:22

Hocam tekrar selamlar,
EasyHID programını bulamadım Delphi linkinde ki proje linki de ölü bu iki dosyayı paylaşma şansınız var mı ? usb interface dosyası olmadığı için delphi de çalıştıramadım yada easyHID tarzı başka bir program önerirmisiniz?
C# örneğini daha önce denemiştim ve pto_Usb.usbpecifiedDevice null geldiği için data gönderemiyorum.İşletim sistemim 64 bit diğer usbLibrary ve HID.dll örneklerini de 2 gündür deniyorum fakat hatalar hep beni DLL'i 64 bit'e göre düzenlemeye itti yinede sonuca ulaşamadım.Aşağıdaki konudaki linkler de ölü sorunum bu olabilir mi ?
https://www.picproje.org/index.php?topic=46548.0
Yardımlarınız için tşk.

MCansız

EasyHID wizard programı Pic proton da var buradan indirebilirsin https://yadi.sk/d/kJYJDem9bsPgB

protonu kur sonra ve aç daha sonra EasyHID wizard programını aç (üst sekmede) gerekli yerleri doldur en son kısımda kodları delphi 6  için oluştur ilgili klasörde hem pic için hemde delphi 6 ve sonrası için kodlar oluşacaktır. Delphi kodları kullanımı basit denemeler ile öğrenirsin yapamadığın olursa yaz yardımcı olmaya çalışırım

againyigit

Merhaba,
Öncelikle teşekkürler ,Dediğiniz şekilde vb ve c++ olarak programdaki pic seçenekleri ile denedim fakat yine connect olabiliyorum ama data gönderdiğimde hiç bir tepki yok.
Delphi ups örneğinizde ki komutları göndererek de denedim sonuç aynı.Burda ben ups'im de ki pic'in hangi mimaride olduğunu bilmiyorum ama upsilon 2000 progragramında ups i kontrol edebiliyorum.Bu programda megatec usb denilen bir protocol kullanıyorum.Bu protocolde karşılık gelen Q1 0x4  0x0D  datalarını gönderdiğim de de aynı.Bu upsilon 2000 i decompile etme şansı var mı ? son çare C de yazılmış  megatec usb kütüphanelerini çevirmeyi proje haline getirmeye çalışacağım.Sizce başka bir yol var mı ?

againyigit

Ben unix tabanlı sistemde açık kaynak kodlu c de yazılmış bir kütüphane buldum onu çözmeye çalışıyorum.Daha önce rastlayan ilgilenmek isteyen varsa aşağıdaki linke gözatarmısınız.HID device'a datayı string basıyor.Elimde ki ups ile ancak bu şekilde haberleşebileceğim kesin çünkü UPSilon 2000(Megatec Protocol) dışında bir program ups'imi görmüyor.
http://sourcecodebrowser.com/nut/2.0.4/files.html
Tşk.

trinity

HID üzerinden veri göndermek sorun değil, önemli olan veri alış-veriş protokolünü bilmek. Protokolu öğrenip çözmeye çalışmalısınız.

mur@t

#7
Alıntı yapılan: againyigit - 07 Ekim 2014, 18:25:25
Teşekkürler Deneyeceğim.

mesaj birleştirme:: 08 Ekim 2014, 10:01:22

Hocam tekrar selamlar,
EasyHID programını bulamadım Delphi linkinde ki proje linki de ölü bu iki dosyayı paylaşma şansınız var mı ? usb interface dosyası olmadığı için delphi de çalıştıramadım yada easyHID tarzı başka bir program önerirmisiniz?
C# örneğini daha önce denemiştim ve pto_Usb.usbpecifiedDevice null geldiği için data gönderemiyorum.İşletim sistemim 64 bit diğer usbLibrary ve HID.dll örneklerini de 2 gündür deniyorum fakat hatalar hep beni DLL'i 64 bit'e göre düzenlemeye itti yinede sonuca ulaşamadım.Aşağıdaki konudaki linkler de ölü sorunum bu olabilir mi ?
https://www.picproje.org/index.php?topic=46548.0
Yardımlarınız için teşekkür.

Mail adresinizi özelden yazarsanız gerekli dosyaları gönderirim.
UPS uygulamasını, değişiklik yapmadan, 32 bit ve 64bit Win7'de sorunsuz kullandım. C# örneği de, USB PIC ile sorunsuz çalışıyordu.

Siz HID Terminal veya benzeri bir program ile, UPS'den gelen dataları görebiliyor musunuz?


againyigit

Hocam selamlar,
Bende ki ups inform 600 AP.Bir data göndermeden data alamıyorsun.USB monitör programı ile gelen dataları görebiliyorum.Ama arkada upsilon 2000 programı açık olunca çünkü bu program bir data göndererek iletişim başlatıyor ve sürekli status istiyor.
Terminal programını çalıştırdığımı yanıt vermiyora geçiyor.
Yardımlarınız için teşekkürler.