
final project
const int Red_f_pin = 12;
const int Red_s_pin = 11;
const int Red_t_pin = 10;
const int trigPin = 7;
const int echoPin = 6;
const int Buzzer = 5;
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
// put your setup code here, to run once:
pinMode(Red_f_pin, OUTPUT);
pinMode(Red_s_pin, OUTPUT);
pinMode(Red_t_pin, OUTPUT);
//pinMode(Buzzer, OUTPUT);
lcd.init();
lcd.backlight();
Serial.begin(9600);
pinMode(trigPin,OUTPUT);
pinMode(echoPin,INPUT);
}
void loop() {
long duration, cm;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
cm = microsecondsToCentimeters(duration);
//Serial.print(cm);
//Serial.print("cm");
//Serial.println();
lcd.clear();
lcd.setCursor(0,0);
lcd.print(cm);
lcd.setCursor(0,1);
lcd.print("cm");
delay (300);
if(cm<10){
digitalWrite(Red_f_pin, HIGH);
digitalWrite(Red_s_pin, HIGH);
digitalWrite(Red_t_pin, HIGH);
//digitalWrite(Bazzer, HIGH);
tone(Buzzer, 97.999, 500);
delay(200);
tone(Buzzer, 500.407, 500);
delay(500);
}else{
digitalWrite(Red_f_pin, LOW);
digitalWrite(Red_s_pin, LOW);
digitalWrite(Red_t_pin, LOW);
digitalWrite(Buzzer, LOW);
}
}
int microsecondsToInches(long microseconds) {
return microseconds / 74 / 2;
}
long microsecondsToCentimeters(long microseconds) {
return microseconds / 29 / 2;
}

