ใบงานทดลองที่12 เชื่อมต่อโมดูลวัดระยะทางด้วยอัลตราโซนิค ส่วนประกอบงานวิชา การเขียนโปรแกรมคอมฯ

ใบงานทดลองที่12

#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
int triggerPin = 13;
int echoPin = 12;
int buzzerpin = 11;
long duration,distCM;
void setup()
{
  lcd.begin();
  pinMode(buzzerpin,OUTPUT);
  pinMode(triggerPin,OUTPUT);
  pinMode(echoPin,INPUT);
  digitalWrite(buzzerpin,HIGH);
}
void loop()
{
  digitalWrite(triggerPin,LOW);
  delayMicroseconds(2);
  digitalWrite(triggerPin,HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin,LOW);
  duration = pulseIn(echoPin,HIGH);
  distCM = duration/58;
  lcd.home();
    if (distCM > 400)
  {   
    lcd.clear();
    lcd.print("**!!!Alarm!!!**");
    tone(buzzerpin,700,500);
    delay(500);
    digitalWrite(buzzerpin,HIGH);
    delay(70);
    lcd.setCursor(0,1);
    lcd.print(distCM); 
  }
  else
  {
    lcd.print("<-------------->");
    lcd.setCursor(0,1);
    lcd.print(distCM);
  }
}

   เมื่อวงจรทำงาน ถ้าค่าของโมดูลวัดระยะทาง(distCM)มากกว่า400 Lcd จะปริ้นคำว่า **!!!Alarm!!!**
และทำให้ Buzzer ดัง ถ้าไม่ถึง 400 LCD ขึ้นคำว่า <--------------> 

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

ส่วนประกอบงานวิชา การเขียนโปรแกรมคอมฯ ครั้งที่ 10 (Arduino วัดอุณหภูมิ)

ใบงานการทดลองที่ 14 การอ่านค่าอุณหภูมิด้วย DS18B20 ส่วนประกอบงานวิชา การเขียนโปรแกรมคอมฯ