Arduino ทำยังไงไม่ให้โค๊ด ++1 เลื่อยๆครับ ช่วยหน่อยครับ

กระทู้คำถาม
โค๊ตทำงาน Menu1 แล้วมัน ทำงาน Menu2 ต่อเลนอะครับพอกดปุ่ม
เพราะ เมื่อกดปุ่ม Menu มันจะ +1เลื่อยๆไม่ยอมหยุด ทำยังไงให้ รับค่าได้แค่ทีละ 1 และทำงานทีละคำสั่งต่อการกดปุ่มครับ

รู้ปัญหาแต่แก้ไม่ได้ช่วยหน่อยครับ

int motor1 = 2;  
int motor2 = 3;
int motor3 = 5;
int motor4 = 6;

int buttonPin = 4;  
int buttonStart = 0;  
int Menu = 0;
int lastinput = LOW;

void setup(){
  pinMode(motor1, OUTPUT);
  pinMode(motor2, OUTPUT);
  
  pinMode(buttonPin, INPUT) ;
  Serial.begin(9600);
}
void loop()

{
  buttonStart = digitalRead(buttonPin);
  if (buttonStart != lastinput)
{
  delay (300);
  Menu++;
  

  
if (Menu==1)
{
  Serial.println("Motor Left");
  
  digitalWrite(motor1,LOW);
  digitalWrite(motor1, HIGH);
  delay (2620);
  digitalWrite(motor1,LOW);
  digitalWrite(motor3,LOW);
  digitalWrite(motor3, HIGH);
  delay (4000);
  digitalWrite(motor3,LOW);
}

else if(Menu==2)
{
  Serial.println("Motor Right");
  
  digitalWrite(motor4,LOW);
  digitalWrite(motor4, HIGH);
  delay (4000);
  digitalWrite(motor4,LOW);
  
  digitalWrite(motor2,LOW);
  digitalWrite(motor2, HIGH);
  delay (2620);
  
  digitalWrite(motor2,LOW);
  Menu=0;
}
}
}
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่