คู่มือการใช้งานชุดเซนเซอร์ 37-in-1 ร่วมกับ runlinc : Joystick Module
เอกสารนี้แนะนำวิธีการเชื่อมต่อและเขียนโค้ดควบคุมเซนเซอร์ 37 ชนิด ผ่านแพลตฟอร์ม runlinc โดยใช้บอร์ด ESP32 (E32W)
- Joystick Module
หน้าที่
ใช้สำหรับควบคุมทิศทางหรือค่าตัวแปรใน 2 แกน (X และ Y) โดยส่งสัญญาณออกมาเป็นแรงดันไฟฟ้าแบบ Analog (0 - 3.3V) และมีปุ่มกด (Switch) ในตัว
การเชื่อมต่อ
|
Joystick Pin |
E32W Pin |
คำอธิบาย |
|
GND |
GND |
กราวด์ |
|
+5V |
3V3 |
ไฟเลี้ยง (ใช้ 3.3V จากบอร์ด) |
|
VRX |
IO32 |
สัญญาณแกน X (Analog In) |
|
VRY |
IO33 |
สัญญาณแกน Y (Analog In) |
|
SW |
IO25 |
สัญญาณปุ่มกด (Digital In / Pull-up) |
การตั้งค่าใน runlinc:
- IO32: ANALOG_IN (Name: joyX)
- IO33: ANALOG_IN (Name: joyY)
- IO25: DIGITAL_IN (Name: joyBtn)
โค้ดตัวอย่าง
HTML:
<div class="card">
<h2>🎮 Joystick Control</h2>
<div class="data-box">X: <span id="xVal">0</span></div>
<div class="data-box">Y: <span id="yVal">0</span></div>
<div id="btnStatus">Button: Released</div>
</div>
CSS:
.card { text-align: center; border: 2px solid #333; padding: 20px; border-radius: 15px; background: #fdfdfd; }
.data-box { font-size: 24px; margin: 10px; font-weight: bold; color: #2c3e50; }
JavaScript Loop:
var x = analogIn( joyX );
var y = analogIn( joyY );
var btn = digitalIn( joyBtn );
document.getElementById("xVal").innerHTML = x;
document.getElementById("yVal").innerHTML = y;
document.getElementById("btnStatus").innerHTML = (btn == 0) ? "Button: Pressed" : "Button: Released";
ผลลัพธ์การใช้งาน
หน้าเว็บจะแสดงตัวเลข 0-4095 ตามการขยับก้าน Joystick และข้อความจะเปลี่ยนไปเมื่อมีการกดปุ่มลงไปตรงๆ
ภาพประกอบ
- Log in to post comments
- 11 views