The code below works fine when vibrator1 is connected to digital pin 5, because it supports PWM.
It doesn't work when vibrator1 is connected to A0-A7 pins, and the #define statement is changed accordingly.
(vibrator1 is a vibration motor, you sicko)
#define trigPin1 2 //initialize pins
#define echoPin1 3
#define vibrator1 5
const int smallvibration=50;
const int bigvibration=125;
long duration, distance, FrontSensor;
void setup()
{Serial.begin (9600);
pinMode(trigPin1, OUTPUT);
pinMode(vibrator1, OUTPUT);
pinMode(echoPin1, INPUT);}
void loop() {
SonarSensor(trigPin1, echoPin1);
FrontSensor = distance;
if(FrontSensor<25)
{analogWrite(vibrator1,bigvibration);}
else if (FrontSensor>25 && FrontSensor<70)
{analogWrite(vibrator1,smallvibration);}
else
{analogWrite(vibrator1,0);}
Serial.println(FrontSensor);
}
void SonarSensor(int trigPin,int echoPin)
{digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = (duration/2) / 29.1;
delay(50);}