ช่วยเขียน โปรแกรมรับค่าและนับ Arduino

/// สวิตช์ที่ขา 30 เป็นแบบ Active High ถ้ากด 1 ครั้งจะให้นับเป็น 10
/// ขา 40 ต่อสวิตช์แบบ Active High ไว้รอส่ง HIGH เริ่มทำงาน sensor , motor
/// ขา 8 เป็น Output ต่อ Relay ไว้รอส่ง LOW หยุด sensor, Motor

long sensordistance=0;
int switchpin=40;
long count10=0;
int sensorcount=0;
void setup(){
pinMode(8, OUTPUT);
pinMode(30, INPUT);
pinMode(40, INPUT);
digitalWrite(8, LOW);
digitalWrite(30, LOW);
digitalWrite(40, LOW);

}

voide loop(){
    sensordistance=analogRead(A0);
int switchstate10=digitalRead(30);
int switchstart=digitalRead(40);
if(switchstate10==HIGH)        ///ถ้าต้องการให้กดcount 10(จำนวนครั้งที่จะนับก่อน) ถึงจะเริ่มเดิน switch start ได้ ใช้ if แบบนี้ได้ไหมครับ
{                  
count10=count10+10;
Serial.print("Count Value= ");
Serial.println(count10);
}

if((count10>=10)&&ร้องไห้switchstart==HIGH))
{                      
                              ///ถ้าต้องการให้กดcount 10(จำนวนครั้งที่จะนับก่อน) ถึงจะเริ่มเดิน switch start ได้ ใช้ if แบบนี้ได้ไหมครับ    
                              ///โดยหากไม่มีการกด count10 อย่างน้อย 1 ครั้งจะไม่สามารถกด switch start ได้เลย
digitalWrite(8, HIGH);               ///สั่ง PIN RELAY เป็น HIGH เริ่มเดิน sensor,motor
}

if(sensordistance<=300){               //หรือต้องเปลี่ยนเป็น  if((sensordistance<=300)&&ร้องไห้sensorcount<count10))
sensorcount=sensorcount+1;
Serial.print("Sensorcount= ");
Serial.println(sensorcount);
delay(100);
}

if((sensorcount==count10)&&ร้องไห้switchstart==HIGH)){
digitalWrite(8, LOW)
Serial.print("Finish Count");
}
แก้ไขข้อความเมื่อ
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่