#include <Servo.h>

/*
  Button

  Turns on and off a light emitting diode(LED) connected to digital pin 13,
  when pressing a pushbutton attached to pin 2.

  The circuit:
  - LED attached from pin 13 to ground
  - pushbutton attached to pin 2 from +5V
  - 10K resistor attached to pin 2 from ground

  - Note: on most Arduinos there is already an LED on the board
    attached to pin 13.

  created 2005
  by DojoDave <http://www.0j0.org>
  modified 30 Aug 2011
  by Tom Igoe

  This example code is in the public domain.

  http://www.arduino.cc/en/Tutorial/Button
*/

// constants won't change. They're used here to set pin numbers:
const int buttonPin = A0;     // the number of the pushbutton pin
const int ledPin =  3;      // the number of the LED pin

// variables will change:
int buttonState = 0;         // variable for reading the pushbutton status
int brightness = 0;    // how bright the LED is
int fadeAmount = 10;    // how many points to fade the LED by
int echoPin = 5; 
int sensorValue = 0;
int trigPin = 4;
long sure;
long mesafe;
int servoPin = 6; 
Servo servomotor;
 int DCPin1 =  7; 
 int DCPin2 =  8; 
 
void setup() {
  // initialize the LED pin as an output:
  pinMode(ledPin, OUTPUT);
  // initialize the pushbutton pin as an input:
  pinMode(buttonPin, INPUT);
  pinMode(echoPin, INPUT);
  pinMode(trigPin, OUTPUT);
  pinMode(servoPin, OUTPUT);
  Serial.begin(9600);
  servomotor.attach(servoPin);
   pinMode(DCPin1, OUTPUT);
   pinMode(DCPin2, OUTPUT);
   
//0-360 derece adimlarla gider
}
void loop() 
  // read the state of the pushbutton value:,
  {
  buttonState = analogRead(buttonPin);
  digitalWrite(trigPin, LOW);
   delayMicroseconds(2);
   digitalWrite(trigPin, HIGH);
    delayMicroseconds(1);
   digitalWrite(trigPin, LOW);
  // check if the pushbutton is pressed. If it is, the buttonState is HIGH:
  sure=pulseIn(echoPin,HIGH);
  //yukselme suresi
  //mesafe formulu
  mesafe=(sure/2)/29,1;
 
  Serial.println("mesafe=");
  Serial.println(mesafe);
  delay(30);
 
    Serial.println("Süre=");
    Serial.println(sure);
   delay(30);
//  if (mesafe < 10 ) {
 //   brightness = brightness + mesafe;
//    servomotor.write(10);
     digitalWrite(DCPin1, LOW);
     digitalWrite(DCPin2, HIGH);
 //   }
 // else {
     brightness = brightness - mesafe;
 //    servomotor.write(100);  
      digitalWrite(DCPin1, HIGH);
     digitalWrite(DCPin2, LOW);
 // }
    analogWrite(ledPin, brightness);
     delay(1000);
  //if (buttonState < 10 ) {   
    servomotor.write(buttonState); 

  //   }
 // else { 
  
       delay(5000);
       Serial.println(brightness);
      Serial.println("DCPin1=");
       Serial.println(DCPin1);
       Serial.println("DCPin2=");
       Serial.println(DCPin2);
       Serial.println("buttonState");
       Serial.println(buttonState);
}
