i want to rotate a motor bidirectionally reading value from an analog sensor, but the code is not working. Would really appreciate your help.
#define INA 8 //clockwise motor direction input
#define INB 9 //anti-clockwise motor direction input
#define PW 5 //pin to write PWM value
#define analogPin A0
int a_read = 0; //analog sensor read
void setup() {
pinMode(INA, OUTPUT);
pinMode(INB, OUTPUT);
pinMode(PW, OUTPUT);
Serial.begin(9600);
pinMode(analogPin, INPUT);
Serial.begin(9600);
a_read=analogRead(analogPin); //analog sensor
delay(1000);
}
void loop() {
a_read = analogRead(analogPin);//read ADC
delay(100);
Serial.println(a_read);
delay(100);
Serial.print("\t");
delay(10);
if (a_read>=100 && a_read<700){ // o to 30
digitalWrite(INA, HIGH);
analogWrite(PW, 105);
delay(10);
}
else (digitalWrite(INA, LOW));{
delay(10);
digitalWrite(INB, HIGH);
analogWrite(PW, 25 );
}
}