โค้ดนี้มันผิดตรงไหนหรอคะ

คือทำโปรเจคArduino uno r3 ค่ะแล้วเขียนโค้ดขึ้นมาการทำงานของมนคือมี2เซ็นเซอรตัวแรกคือultrasonic เขียนมาแล้วก็ใช้ได้ค่ะแต่พอเอาเซนเซออีกตัวนึงมาเขียนด้วยตัวนั้นคือPIR การทำงานคือเมื่อมีวัตถุผ่านจะให้แสดงปลไปที่LCDตอนยังไม่เอามารวมกันมันก็นับได้แต่พอเอามารวมกันมันไม่นับเลขเลยค่ะ
นี่ค่ะโค้ด
//ultra
const int pingPin = 13;// กำเนิดคลื่นเสียง
int inPin = 12;// รับสัญญาณคลื่นเสียง
int LED_Pin = 11;
//pir
#include <LiquidCrystal.h>
LiquidCrystal lcd (9,8,7,6,5,4);
int pir = 10;
int pirStat= 0;
int number = 0;

void setup() 
//ultra
{
Serial.begin(9600);
pinMode(11, OUTPUT);
//pir
 lcd.begin(16, 2);// จอกว้าง 16 ตัวอักษร 2 บรรทัด
 lcd.print("Number of Parcels");// แสดงผลคำว่า Number of Parcels ออกหน้าจอ
 pinMode(10, INPUT);
 Serial.begin(9600);
}
void loop()
//ultra
{
long duration, cm; // long ใช้ระบุให้เก็บค่าเลขจํานวนเต็มในตัวแปรที่มีค่ามากกว่า int เป็น 2 เท่า
pinMode(13, OUTPUT);
digitalWrite(13, LOW);
delay(1000);
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
pinMode(12, INPUT);
duration = pulseIn(12, HIGH);
cm = microsecondsToCentimeters(duration);
Serial.print(cm);
Serial.println();
delay(120);
if( cm <= 120) // ถ้าวัตถุอยู่ไกลเซ็นเซอร์น้อยกว่า120cm
{
digitalWrite(11, HIGH);//ไฟติด
}
else
{
digitalWrite(11, LOW);//ถ้าไม่ใช่ไฟดับ
}
}
long microsecondsToCentimeters(long microseconds)
{
return microseconds / 29 / 2;
//pir
  pir= digitalRead(10);//กำหนดใpirเป็นตัวรับค่า
  if(pir==HIGH)//ถ้าpir high 
  { 
     lcd.setCursor(0, 1); //กำหนดตำแหน่ง Cursor
     lcd.print(number);
     delay(1000); // Wait for 500 millisecond(s)
     delay(1000); // Wait for 500 millisecond(s)
     number +=1;
  Serial.println(pir);  
  }
}
แสดงความคิดเห็น
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่