#define MOTOR_A 9 #define MOTOR_B 10 #define ENCODER_G_1 2 #define ENCODER_G_2 3 #define ENCODER_G_3 A5 #define ENCODER_O_1 A4 #define ENCODER_O_2 A3 #define ENCODER_O_3 A2 // the setup function runs once when you press reset or power the board void setup() { // Initialize oins of H bridge as output pinMode(MOTOR_A, OUTPUT); pinMode(MOTOR_B, OUTPUT); } // the loop function runs over and over again forever void loop() { for(int i=0; i< 10; i++){ digitalWrite(MOTOR_A, HIGH); digitalWrite(MOTOR_B, LOW); while(!digitalRead(ENCODER_O_3)); delay(50); while(digitalRead(ENCODER_O_3)); digitalWrite(MOTOR_A, LOW); digitalWrite(MOTOR_B, HIGH); while(!digitalRead(ENCODER_O_3)); delay(50); while(digitalRead(ENCODER_O_3)); } delay(500); digitalWrite(MOTOR_A, LOW); digitalWrite(MOTOR_B, LOW); delay(2000); }