Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SoftwareSerial.h>
- SoftwareSerial softSerial(5, 4); //TX_BT --> D5 / RX_BT --> D4
- const int TRIGGER = 6;
- const int ECHO = 7;
- const int BUZZER = 8;
- long duration;
- float distance;
- int flag = 0;
- void setup() {
- Serial.begin(9600);
- softSerial.begin(9600);
- pinMode(BUZZER, OUTPUT);
- pinMode(TRIGGER, OUTPUT);
- pinMode(ECHO, INPUT);
- }
- // 36 CM = EMPTY
- // 30 CM = 20% = 1
- // 24 CM = 40% = 2
- // 18 CM = 60% = 3
- // 12 CM = 80% = 4
- // 6 CM = 100% = 5
- void loop() {
- US();
- // 30 CM = 20% = 1
- if (distance > 24 && distance <= 400) {
- Serial.println("1");
- softSerial.println("1");
- flag = 0;
- delay(3000);
- }
- // 24 CM = 40% = 2
- else if (distance > 18 && distance <= 24) {
- Serial.println("2");
- softSerial.println("2");
- flag = 0;
- delay(3000);
- }
- // 18 CM = 60% = 3
- else if (distance > 12 && distance <= 18) {
- Serial.println("3");
- softSerial.println("3");
- flag = 0;
- delay(3000);
- }
- // 12 CM = 80% = 4
- else if (distance > 6 && distance <= 12) {
- Serial.println("4");
- softSerial.println("4");
- flag = 0;
- delay(3000);
- }
- // 6 CM = 100% = 5
- else if (distance > 0 && distance <= 6) {
- Serial.println("5");
- softSerial.println("5");
- flag = 0;
- delay(3000);
- }
- else {
- if (flag == 0) {
- softSerial.println("00");
- flag = 1;
- }
- }
- delay(100);
- }// end of LOOP
- void US() {
- digitalWrite(TRIGGER, LOW);
- delayMicroseconds(2);
- digitalWrite(TRIGGER, HIGH);
- delayMicroseconds(10);
- digitalWrite(TRIGGER, LOW);
- duration = pulseIn(ECHO, HIGH);
- distance = (duration / 2) / 29.1;
- Serial.println(distance);
- }
Advertisement
Add Comment
Please, Sign In to add comment