int ultraValu = 0; // متغير لتخزين المسافة المقروءة من الحساس
long readUltrasonicDistance(int triggerPin, int echoPin) {
pinMode(triggerPin, OUTPUT);
digitalWrite(triggerPin, LOW);
delayMicroseconds(2);
digitalWrite(triggerPin, HIGH);
delayMicroseconds(10);
digitalWrite(triggerPin, LOW);
pinMode(echoPin, INPUT);
return pulseIn(echoPin, HIGH);
}
void setup() {
pinMode(6, OUTPUT); // تحديد المنفذ 6 كمخرج للإنذار
}
void loop() {
ultraValu = 0.01723 * readUltrasonicDistance(10, 9); // قراءة المسافة من الحساس
if (ultraValu < 10) {
digitalWrite(6, HIGH); // تشغيل الإنذار إذا كانت المسافة أقل من 10 سم
}
if (ultraValu >= 10) {
digitalWrite(6, LOW); // إيقاف الإنذار إذا كانت المسافة أكبر من 10 سم
}
delay(10); // تأخير بسيط لتحسين الأداء
}