การเขียนโปรแกรมจอยเพื่อควบคุมหุ่นยนต์โดยใช้โปรแกรม Microsoft Visual Studio C# นั่นสามารถทำได้ง่ายๆ เรามาดูวิธีทำกันเลยครับ!!

การเขียนโปรแกรมจอยเพื่อควบคุมหุ่นยนต์โดยใช้โปรแกรม Microsoft Visual Studio C# นั่นสามารถทำได้ง่ายๆ เรามาดูวิธีทำกันเลยครับ!!
สวัสดีครับ :D ในที่สุดก็ได้เริ่มงานเขียนกันสักทีหลังจากติดภารกิจมานาน สำหรับบทความนี้จะพาผู้อ่านไปใช้ USB Joystick โดยใช้ภาษา C# ร่วมกับ DirectX นะครับ จะเป็นตัวอย่างที่ง่ายมากครับ แล้วก็พื้นฐานที่สุดเพื่อให้โปรแกรมเบาและสามารถนำไปประยุกต์ใช้อย่างหลากหลายนะครับ เรามาเริ่มกันเลยครับ
System Requirement
เริ่มต้นเขียน
1. สร้าง Project แบบ Window Application Form ขึ้นมาใหม่ ตั้งชื่อตามใจชอบ
2. เพิ่ม DirectX เข้าโปรเจ็ค โดยการ คลิกขวาที่ References -> Add Reference
3. เลือก Browse แล้วหาๆฟล์ Microsoft.DirectX.DirectInput โดยปกติจะอยู่ที่ C:\Windows\Microsoft.NET\DirectX for Managed Code\1.0.2902.0
4. คลิกขวาที่ From1.Designer.cs -> View Code เพื่อแทรก Code
5. ทำการเพิ่ม Code ตามรูป this.Load+=newSystem.EventHandler(this.iJoy_Load);
![]() |
6. ใน Form1 เพิ่ม Code 2 ส่วน ได้แก่ เรียกใช้ namespace DirectX และ code เรียกใช้งาน USB Joystick โดยสามารถ Copy Code จากด้านล่างของบทความนี้
7. เพิ่ม Label แล้วเปลี่ยนชื่อเป็น lbJoystick เพื่อเตรียมตัวใช้แสดงผลการทำงาน
8. เพิ่ม Timer แล้วตั้งค่า Enabled จาก False เป็น True
9. ทำการเพิ่มโค้ดเรียกใช้เมดทอด UpdateJoystick ดังรูป โดยทำการ Double-Click ที่
10. จากนั้นทำการ Save ให้เรียบร้อย จากนั้น สั่ง Complied และ run จะได้โปรอกรมแสดงการทำงานของ USB Joystick
สำหรับการนำไปประยุกต์ก็ไล่โค้ดเอานะครับ เป็น C# ธรรมดาครับ หากมีอะไรสงสัยให้เมล์มาถามได้นะครับที่ ks_bomb@hotmail.com หวังว่าคงมีประโยชน์ต่อผู้อ่านนะครับ แล้วเจอกันใหม่บทความหน้านะครับ บ๊าย บาย …….. :D
+++++++++++++++++++++++++++++++++++++++
ในกรณีเกิด Error
ซึ่งอาจจะเกิดจากหลายสาเหตซึ่งมีวิธีแก้ที่ต่างกันดังนี้
Ø กรณียังไม่มี Application Configuration File สำหรับการใช้งาน CRT 4.0
วิธีแก้
1. เพิ่ม Application Configuration File โดย
คลิกขวาที่โปรเจ็ค -> Add -> New Item…
2. เลือก Application Configuration File แล้วกด Add
3. ทำการเพิ่ม Code ต่อไปนี้ระหว่าง <configuration>..configuration> ได้แก่
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0"/>
</startup>
4. ทำการ Save แล้วลอง Run ใหม่
+++++++++++++++++++++++++++++++++++
Ø กรณีเกิดปัญหา LoaderLock หากมีปัญหาคล้ายดังรูป ให้แก้ดังนี้
วิธีแก้
1. ที่เมนู Debug เลือก Exception… จะมีหน้าต่างดังนี้ pop up ขึ้นมา
2. ทำการขายส่วน (กดเครื่องหมาย +) หน้า Managed Debugging Assistants
3. หาคำว่า แล้ว เอาเครื่องหมายถูก ใน Colum Thrown ออก
4. ทำการ Save แล้วลอง Run ใหม่
+___________________________+
Code ที่ต้องเพิ่มเติม
//iAdd Code for init Joystick+++++++++++++++++++++++++++++++++
เอกสารอ้างอิง
· ตัวอย่าง Code ทีนำมาใช้ http://msdn.microsoft.com/en-us/library/bb153252%28VS.85%29.aspx#dx_DirectInput_creating_device_objects
· แก้ปัญหา CLR http://social.msdn.microsoft.com/Forums/en/vcgeneral/thread/5d1186ec-ad55-4929-b1e4-8806cdc758af
· การเพิ่มไฟล์ Config file http://www.devasp.net/net/articles/display/679.html
· แก้ปัญหา LoaderLock http://www.pcreview.co.uk/forums/thread-3741011.php