// TB6612FNG DC-MOTOR CONTROLLER test (2 motor) #define PWMA 6 #define AIN1 7 #define AIN2 8 #define STBY 9 #define PWMB 11 #define BIN1 12 #define BIN2 13 void setup() { pinMode(STBY, OUTPUT); pinMode(AIN1, OUTPUT); pinMode(AIN2, OUTPUT); pinMode(BIN1, OUTPUT); pinMode(BIN2, OUTPUT); digitalWrite(STBY, HIGH); pinMode(PWMA, OUTPUT); pinMode(PWMB, OUTPUT); } void loop() { int i; // Motor stop digitalWrite(AIN1, LOW); digitalWrite(AIN2, LOW); digitalWrite(BIN1, LOW); digitalWrite(BIN2, LOW); delay(1000); // Motor forward rotation & speed variable digitalWrite(AIN1, HIGH); digitalWrite(AIN2, LOW); digitalWrite(BIN1, HIGH); digitalWrite(BIN2, LOW); for(i = 0; i < 256; i++) { analogWrite(PWMA, i); analogWrite(PWMB, i); delay(100); } for(i = 255; i >= 0; i--) { analogWrite(PWMA, i); analogWrite(PWMB, i); delay(100); } // Motor stop digitalWrite(AIN1, LOW); digitalWrite(AIN2, LOW); digitalWrite(BIN1, LOW); digitalWrite(BIN2, LOW); delay(1000); // Motor reverse rotation & speed variable digitalWrite(AIN1, LOW); digitalWrite(AIN2, HIGH); digitalWrite(BIN1, LOW); digitalWrite(BIN2, HIGH); for(i = 0; i < 256; i++) { analogWrite(PWMA, i); analogWrite(PWMB, i); delay(100); } for(i = 255; i >= 0; i--) { analogWrite(PWMA, i); analogWrite(PWMB, i); delay(100); } // Motor standby digitalWrite(STBY, LOW); delay(5000); }