//===================PROGRAM 1=====================
/* percobaan 1
#define echoPin 6 // Echo Pin
#define trigPin 7 // Trigger Pin
#define LEDPin 13 // Onboard LED
int maximumRange = 200;
int minimumRange = 0;
long duration, distance;
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(LEDPin, OUTPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration/58.2;
if (distance >= maximumRange || distance <= minimumRange){
Serial.println("-1");
digitalWrite(LEDPin, HIGH);
}
else {
Serial.println(distance);
digitalWrite(LEDPin, LOW);
}
delay(50);
}
//end percobaan 1*/
//===================PROGRAM 2=====================
/* percobaan 2
const int pwPin = 10;
long pulse, inches, cm;
int measure = 0;
void setup() {
Serial.begin(9600);
pinMode(pwPin, INPUT);
}
void loop() {
pulse = pulseIn(pwPin, HIGH);
inches = pulse/147;
cm = inches*2.54;
Serial.println(cm);
measure = measure + 1;
}
//end percobaan 2*/
//===================PROGRAM 3=====================
/*percobaan 3
int trigPin = 7; //Trig
int echoPin = 6; //Echo
long duration, cm, meter;
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(5);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
// convert jarak →cm dan meter
cm = (duration/2) / 29.1;
meter = cm / 100;
Serial.print(meter);
Serial.print("m, ");
Serial.print(cm);
Serial.print("cm");
Serial.println();
delay(250);
}
//end percobaan 3*/
//===================LATIHAN 1=====================
/*LATIHAN 1
int trigPin = 7; //Trig
int echoPin = 6; //Echo
long duration, cm, meter;
void setup() {
Serial.begin (9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(5);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
pinMode(echoPin, INPUT);
duration = pulseIn(echoPin, HIGH);
// convert jarak →cm dan meter
cm = (duration/2) / 29.1;
meter = cm / 100;
Serial.print("Jarak Benda dengan Sensor Sejauh ");
Serial.print(meter);
Serial.print(" meter");
Serial.println();
delay(250);
}
//end LATIHAN 1*/
//===================LATIHAN 1=====================
//LATIHAN 2
int trigpin = 7;
int echopin = 6;
int led[]={11,12,13};
long pulse, cm, inch, distance;
void setup(){
Serial.begin(9600);
pinMode(trigpin, OUTPUT);
pinMode(echopin, INPUT);
for(int i=0;i<3;i++){
pinMode(led[i], OUTPUT);
}
}
void loop(){
digitalWrite(trigpin, LOW);
delayMicroseconds(5);
digitalWrite(trigpin, HIGH);
delayMicroseconds(10);
digitalWrite(trigpin, LOW);
pinMode(echopin, INPUT);
pulse = pulseIn(echopin, HIGH);
distance = pulse/58.2;
inch = distance/147;
cm = inch*2.54;
Serial.println();
delay(500);
if (distance<=50){
Serial.write("Jarak Benda adalah ");
Serial.print(distance);
Serial.print(" cm");
digitalWrite(led[0], HIGH);
digitalWrite(led[1], LOW);
digitalWrite(led[2], LOW);
}
if (distance>=50 && distance<345){
Serial.write("Jarak Benda adalah ");
Serial.print(distance/147);
Serial.print(" inch");
digitalWrite(led[0], LOW);
digitalWrite(led[1], HIGH);
digitalWrite(led[2], LOW);
}
if (distance>=345){
Serial.write("Jarak Benda adalah ");
Serial.print(distance/100);
Serial.print(" Meter");
digitalWrite(led[0], LOW);
digitalWrite(led[1], LOW);
digitalWrite(led[2], HIGH);
}
}
//end LATIHAN 2*/