commit 9d2f303415fb871707f35fcea67e722948920527 Author: sans_red Date: Wed Feb 11 22:45:15 2026 +0700 1 hinzugefügt diff --git a/1 b/1 new file mode 100644 index 0000000..d69924f --- /dev/null +++ b/1 @@ -0,0 +1,52 @@ +// --- กำหนดขาอุปกรณ์ --- +const int pinX = A1; +const int pinY = A0; +const int pinMG = 2; +const int pinBomb = 3; +const int pinSafety = 4; + +void setup() { + Serial.begin(9600); + pinMode(pinMG, INPUT_PULLUP); + pinMode(pinBomb, INPUT_PULLUP); + pinMode(pinSafety, INPUT_PULLUP); +} + +void loop() { + // 1. ตรวจสอบสวิตช์เปิด-ปิด (Safety) + // ถ้า D4 ต่อลง GND (LOW) คือระบบทำงาน + if (digitalRead(pinSafety) == LOW) { + + // 2. อ่านค่าคันโยกและแปลงช่วงเป็น -90 ถึง 90 + int posX = map(analogRead(pinX), 0, 1023, 90, -90); + int posY = map(analogRead(pinY), 0, 1023, -90, 90);//S/W + + // 3. ทำ Deadzone: ถ้าอยู่ระหว่าง -1 ถึง 1 ให้เป็น 0 + if (posX >= -1 && posX <= 1) posX = 0; + if (posY >= -1 && posY <= 1) posY = 0; + + // 4. แสดงผลแกน X (90L / 90R) + Serial.print("X: "); + if (posX > 0) { Serial.print(posX); Serial.print("R"); }//D + else if (posX < 0) { Serial.print(abs(posX)); Serial.print("L");}//A + else { Serial.print("0"); } + + // 5. แสดงผลแกน Y และปุ่ม + Serial.print(" | Y: "); Serial.print(posY); + + // อ่านปุ่ม: ถ้ากด (LOW) ให้โชว์ 1, ถ้าไม่กดให้โชว์ 0 + int mg = !digitalRead(pinMG); + int bomb = !digitalRead(pinBomb); + + if (mg) Serial.print(" | [MG FIRE!] "); + if (bomb) Serial.print(" | [BOMB DROP!] "); + + Serial.println(); // ขึ้นบรรทัดใหม่ + + } else { + // ถ้าสวิตช์ปิดอยู่ (Safety On) + Serial.println("SYSTEM OFF (Safety Engaged)"); + } + + delay(50); // ความไวในการส่งข้อมูล +} \ No newline at end of file