Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define redLed 3
- #define yellowLed 4
- #define greenLed 5
- #define pbPin 6
- int pbState = 0;
- #define TRIG 7
- #define ECHO 8
- long distance, duration;
- #define buzPin 9
- void setup() {
- pinMode(redLed, OUTPUT);
- pinMode(yellowLed, OUTPUT);
- pinMode(greenLed, OUTPUT);
- pinMode(pbPin, INPUT);
- pinMode(TRIG, OUTPUT);
- pinMode(ECHO, INPUT);
- pinMode(buzPin, OUTPUT);
- Serial.begin(9600);
- digitalWrite(greenLed, LOW);
- digitalWrite(yellowLed, LOW);
- digitalWrite(redLed, LOW);
- }
- void loop() {
- pbState = digitalRead(pbPin);
- if (pbState == HIGH) {
- digitalWrite(TRIG, LOW);
- delayMicroseconds(2);
- digitalWrite(TRIG, HIGH);
- delayMicroseconds(10);
- digitalWrite(TRIG, LOW);
- duration = pulseIn(ECHO, HIGH);
- distance = duration / 2 / 29;
- if (distance >= 100) {
- digitalWrite(greenLed, HIGH);
- digitalWrite(yellowLed, LOW);
- digitalWrite(redLed, LOW);
- } else if (distance >= 50) {
- digitalWrite(greenLed, LOW);
- digitalWrite(yellowLed, HIGH);
- digitalWrite(redLed, LOW);
- tone(buzPin, 4000);
- delay(1000);
- noTone(buzPin);
- } else {
- digitalWrite(greenLed, LOW);
- digitalWrite(yellowLed, LOW);
- digitalWrite(redLed, HIGH);
- tone(buzPin, 4000);
- delay(500);
- digitalWrite(redLed, LOW);
- noTone(buzPin);
- }
- Serial.print("distance=");
- Serial.println(distance);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement