2009-02-13 11 views
20

मैं विंडोज और जावा के तहत एक यूएसबी डिवाइस के साथ संवाद करना चाहता हूं लेकिन मुझे ऐसा करने के लिए एक अच्छी लाइब्रेरी नहीं मिल रही है। मैं नहीं चाहता कि उपयोगकर्ता को यह काम करने के लिए कोई अतिरिक्त हार्डवेयर या डिवाइस ड्राइवर स्थापित करना पड़े। यही है, मैं अन्य विंडोज अनुप्रयोगों की तरह यूएसबी के साथ बातचीत करने में सक्षम होना चाहता हूं।विंडोज और जावा के तहत एक यूएसबी डिवाइस के साथ संवाद कैसे करें?

मैं जेयूएसबी और जेएसआर 80 से परिचित हूं लेकिन दोनों मृत परियोजनाएं (कम से कम विंडोज़ के लिए) प्रतीत होते हैं।

+0

मैं सिर्फ http://cafe.elharo.com/blogroll/what-java-still-cant-do/#comment-69109 "पर [इस पाया के लिए आयोजित किया जाता है ...] विंडोज़ पर, आप सिर्फ कनेक्टेड डिवाइस सूचीबद्ध नहीं कर सकते हैं और उनसे बात करना शुरू कर सकते हैं, जो कि जावा यूएसबी एपीआई है। " मैं उनकी टिप्पणी पूरी तरह से समझ नहीं पा रहा हूं लेकिन यह निराशाजनक लगता है :( – Gili

उत्तर

2

मैंने कुछ समय पहले इस पर काफी शोध किया था, और दुर्भाग्यपूर्ण तथ्य यह था कि सभी उपयोगी मुफ्त यूएसबी + विंडोज + जावा परियोजनाएं मर गईं। वाणिज्यिक और महंगा है (मूल्य $ 39.99 प्रति डेवलपर नहीं है, लेकिन आपके सॉफ़्टवेयर की प्रति प्रति बेची गई है!) JCommUSB लाइब्रेरी जो शायद काम करती है, हालांकि मुझे इसका कोई अनुभव नहीं है; हमें यूएसबी ड्राइवरों के लिए अपने स्वयं के कस्टम सी रैपर बनाना और जेएनआई के माध्यम से उनके साथ संवाद करना पड़ा।

+0

ऐसा लगता है कि जेकॉमयूएसबी लाइब्रेरी भी मर चुकी है। डोमेन नाम बिक्री के लिए है। – Cypher

9

libusb-win32 आपको अपने सामान्य ड्राइवर को स्थापित करने की आवश्यकता है, जो तब आपके लिए एक यूएसबी डिवाइस उपलब्ध कराता है। मुझे यकीन नहीं है कि यूएसबी डिवाइस की चालक-कम पहुंच करना संभव नहीं है जब तक कि डिवाइस कई मानक वर्गों (स्टोरेज और एचआईडी, विशेष रूप से) में से किसी एक से संबंधित न हो।

Java wrapper for libusb-win32 है जो आपके लिए काम कर सकता है। हालांकि, मैंने इसे स्वयं नहीं इस्तेमाल किया है।

+0

सभी यूएसबी डिवाइस ऑन-बोर्ड ड्राइवरों के साथ शिप नहीं करते हैं जो इंस्टॉल हो जाते हैं स्वचालित रूप से जब आप डिवाइस को प्लग करते हैं? या यह सिर्फ "मानक" उपकरणों के लिए है? क्या ड्राइवरों के बिना जावा का उपयोग करके "मानक" उपकरणों के साथ संवाद करना कम से कम संभव है? – Gili

+3

नहीं, ऑन-बोर्ड ड्राइवर अपवाद हैं। मानक डिवाइस , जैसे स्टोरेज और एचआईडी (कीबोर्ड, मकान इत्यादि) शायद उपर्युक्त libusb-win32 के साथ काम करेंगे। विंडोज़ में उनके लिए मानक ड्राइवर शामिल हैं। –

+1

मैं एक कस्टम यूएसबी डिवाइस के साथ बातचीत करने का एक आसान तरीका ढूंढ रहा हूं जो ' टी एक कॉम पोर्ट अनुकरण, धन्यवाद – 8bitwide

0

कुछ देशी कोड हैक करना सबसे तेज़ और आसान तरीका है :) मैंने छुपा उपकरणों के लिए एक छोटा सा रैपर लिखा जो मेरे जावा अनुप्रयोगों को CalComp digitizers से डेटा पढ़ने में सक्षम बनाता है, इसलिए यह निश्चित रूप से करने योग्य और बहुत कठिन नहीं है। बुरी बात यह है कि मेरा काम अभी भी मेरे पूर्व नियोक्ता के स्वामित्व वाले स्वामित्व कोड है, इसलिए कानूनी कारणों से मैं इसे ओपन-सोर्स के रूप में रिलीज़ नहीं कर सकता हूं।

अच्छी बात है कि आप Microsoft DDK :) विंडोज के बीच

0

संचार और जावा से एक यूएसबी डिवाइस से HID उदाहरण कोड के साथ एक उड़ान शुरू मिल सकता है। http://javausbapi.blogspot.com/2010/05/java-usb-api.html

एक उदाहरण एक फ्रीस्केल माइक्रोकंट्रोलर

संबंधित मुद्दे