كيف يتم تنسيق معلومات محور عصا التحكم من عصا التحكم USB؟

StackOverflow https://stackoverflow.com/questions/2524684

سؤال

لدي في الواقع سؤال صغير إلى حد ما، ولكنني واجهت أصعب وقت في العثور على معلومات حول هذا الموضوع.

بالنسبة للتطبيق الذي أقوم بالبرمجة له، سيكون هناك عصا تحكم ثلاثية المحاور يتم توصيلها عبر USB بجهاز كمبيوتر يعمل بنظام التشغيل Windows XP، ويتم التعامل معها بواسطة directx.سيتم بعد ذلك إرسال هذه المعلومات إلى مكان آخر إلى وحدة التحكم المضمنة.لا أحتاج إلى معرفة الكثير من التعقيدات المتعلقة بكيفية تعامل DirectX معها، لكني أريد أن أعرف كيف يتم تنسيق البيانات الخاصة بالمحاور؟

أقرب ما يمكنني قوله هو أن معظم أجهزة التحكم في الوقت الحاضر تحتوي على 12 بت من الدقة، فهل إخراج البيانات هو رقم مجاملة 12 بت 2؟وبعد ذلك، هل يتم تمثيله كعدد صحيح 16 بت موقّع عند التقاطه من DirectX؟

أود أن أعرف ذلك حتى أعرف كيف سأتعامل مع البيانات الموجودة على جانب النظام الأساسي المضمن، مثل كيفية تنسيق الحزم التي ترسل البيانات إلى الجانب المضمن، بالإضافة إلى كيفية استخدام المعلومات بمجرد وجودها على الجانب المضمن جانب.

هل كانت مفيدة؟

المحلول

المشكلة الكبيرة في برامج التشغيل هي أن هذا يعني أن الجهاز يمكنه توفير البيانات لك كيفما يريد.لا يوجد ما يمنعه من إرسال تمثيل سلسلة للرقم عبر USB، على سبيل المثال (على الرغم من أنني أعترف بأن هذا غير مرجح).طالما أن السائق يعيد تفسير البيانات إلى نموذج يمكن للنوافذ (أو أي نظام تشغيل) فهمه، فلا توجد مشكلة.

من الأفضل لك تحديد مجموعة فرعية من الأجهزة ورؤية كيفية وصول البيانات من خلال البيانات الأولية وكتابة التجريد الخاص بك بين الجهاز ونظامك.إذا كان جهازًا غير معروف، فيمكنك "تخمين" التنسيق الذي تأتي به البيانات ومحاولة تشغيله، لكنني أشك في أنك ستدير نظام الالتقاط بالكامل لأن بعض المتطفلين في مكان ما سيقومون بأشياء غريبة ( أي بطريقتهم الخاصة).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top