मैं एक PIC32 USB परियोजना के लिए मैं कोशिश करना चाहता हूँ के लिए सी में एक USB छिपाई वर्णक बनाने पर अपने आप को थोड़ा शिक्षित करने की कोशिश कर रहा हूँ।
मैंने http://www.usb.org/developers/hidpage/ से HID यूसेज टेबल्स डॉक्यूमेंट डाउनलोड किया है और यह जानने की कोशिश कर रहा हूँ कि HID डिस्क्रिप्टर में विभिन्न तत्वों के लिए वास्तविक मान कहाँ दर्शाए गए हैं।
मैं जिस नमूने को देख रहा हूं, उसके एक अंश के साथ समझाता हूं:
ROM struct{BYTE report[HID_RPT01_SIZE];}hid_rpt01={{
0x05,0x01, // USAGE_PAGE (Generic Desktop)
0x09,0x05, // USAGE (Game Pad)
0xA1,0x01, // COLLECTION (Application)
0x15,0x00, // LOGICAL_MINIMUM(0)
0x25,0x01, // LOGICAL_MAXIMUM(1)
0x35,0x00, // PHYSICAL_MINIMUM(0)
0x45,0x01, // PHYSICAL_MAXIMUM(1)
// ...
उपर्युक्त उदाहरण से, यह स्पष्ट है कि BYTE सरणी मुख्य / मूल्य जोड़े का गठन है, अगर मैं इसे कह सकता हूं। उदाहरण के लिए दूसरी पंक्ति: 0x05,0x01 कुंजी 0x05 को इंगित करती है, जो कि उपयोग पृष्ठ है , और 0x01 जेनेरिक डेस्कटॉप को इंगित करने वाला मान है
मैं यह पता लगाने की कोशिश कर रहा हूं कि इन मूल्यों को एचआईडी उपयोग तालिका पीडीएफ दस्तावेज़ में कहां इंगित किया गया है। उदाहरण के लिए, मुझे कोई संदर्भ नहीं मिल रहा है
USAGE_PAGE == 0x05
और उदाहरण के लिए
COLLECTION == 0xA1
मैंने 0xA1 के लिए पीडीएफ को खोजने की कोशिश की, कोई नतीजा नहीं निकला। एकमात्र तरीका मैं यह पता लगाने में सक्षम हूं कि मान क्या हैं, या तो उदाहरण की टिप्पणियों को देख रहे हैं, या ऊपर दिए गए लिंक से यूएसबी डिस्क्रिप्टर टूल का उपयोग करके ।
मैं बस सोच रहा हूँ, क्या मैं इस कुंजी / मूल्य संदर्भ दस्तावेज को गायब करने के लिए पूरी तरह से पागल हूँ?
उदाहरणों के भार ऑनलाइन हैं, उदाहरण के लिए निम्न लिंक: http://www.frank-zhao.com/cache/hid_tutorial_1.php
लेकिन यहां तक कि यह END_COLLECTION == 0xc0 जैसे स्ट्रिंग मानों का भी संदर्भ देता है
मुझे इन मूल्यों के लिए संदर्भ कहां मिलेगा? मैं क्या खो रहा हूँ?