/* Test progam for print Checking the following - ULN2003 2 */ // Softwareserial (10, 11) RX, TX // Use putty to send command, 2 = up, 3 = down // Pin layout // Pin 1 TXD // Pin 0 RXD // Reset // GND const int buttonPin = 2; //D2 int buttonState = 0; const int motor1Pin1 = 3; //D3 const int motor1Pin2 = 4; //D4 const int motor1Pin3 = 5; //D5 const int motor1Pin4 = 6; //D6 // Pin 7 D7 Data out // Pin 8 D8 Data in const int motor2Pin1 = 9; //D9 const int motor2Pin2 = 10; //D10 const int motor2Pin3 = 11; //D11 const int motor2Pin4 = 12; //D12 /* ReadAnalogVoltage Reads an analog input on pin 0, converts it to voltage, and prints the result to the serial monitor. Attach the center pin of a potentiometer to pin A0, and the outside pins to +5V and ground. Schematic 5V-----IRPhotoled----------R=1M-----GND | A0 */ const int sensorPin = 14; //A0 int sensorValue = 0; int delayTime = 5; //see changelog, at delaytime 2 it stops turning int incomingByte = 0; // for incoming serial data void setup() { Serial.begin(9600); pinMode(buttonPin, INPUT); pinMode(motor1Pin1, OUTPUT); pinMode(motor1Pin2, OUTPUT); pinMode(motor1Pin3, OUTPUT); pinMode(motor1Pin4, OUTPUT); pinMode(motor2Pin1, OUTPUT); pinMode(motor2Pin2, OUTPUT); pinMode(motor2Pin3, OUTPUT); pinMode(motor2Pin4, OUTPUT); pinMode(sensorPin, INPUT); } void motor1up() { digitalWrite(motor1Pin1, HIGH); digitalWrite(motor1Pin2, LOW); digitalWrite(motor1Pin3, LOW); digitalWrite(motor1Pin4, LOW); delay(delayTime); digitalWrite(motor1Pin1, LOW); digitalWrite(motor1Pin2, HIGH); digitalWrite(motor1Pin3, LOW); digitalWrite(motor1Pin4, LOW); delay(delayTime); digitalWrite(motor1Pin1, LOW); digitalWrite(motor1Pin2, LOW); digitalWrite(motor1Pin3, HIGH); digitalWrite(motor1Pin4, LOW); delay(delayTime); digitalWrite(motor1Pin1, LOW); digitalWrite(motor1Pin2, LOW); digitalWrite(motor1Pin3, LOW); digitalWrite(motor1Pin4, HIGH); delay(delayTime); } void motor1down() { digitalWrite(motor1Pin1, LOW); digitalWrite(motor1Pin2, LOW); digitalWrite(motor1Pin3, LOW); digitalWrite(motor1Pin4, HIGH); delay(delayTime); digitalWrite(motor1Pin1, LOW); digitalWrite(motor1Pin2, LOW); digitalWrite(motor1Pin3, HIGH); digitalWrite(motor1Pin4, LOW); delay(delayTime); digitalWrite(motor1Pin1, LOW); digitalWrite(motor1Pin2, HIGH); digitalWrite(motor1Pin3, LOW); digitalWrite(motor1Pin4, LOW); delay(delayTime); digitalWrite(motor1Pin1, HIGH); digitalWrite(motor1Pin2, LOW); digitalWrite(motor1Pin3, LOW); digitalWrite(motor1Pin4, LOW); delay(delayTime); } void motor2up(){ digitalWrite(motor2Pin1, HIGH); digitalWrite(motor2Pin2, LOW); digitalWrite(motor2Pin3, LOW); digitalWrite(motor2Pin4, LOW); delay(delayTime); digitalWrite(motor2Pin1, LOW); digitalWrite(motor2Pin2, HIGH); digitalWrite(motor2Pin3, LOW); digitalWrite(motor2Pin4, LOW); delay(delayTime); digitalWrite(motor2Pin1, LOW); digitalWrite(motor2Pin2, LOW); digitalWrite(motor2Pin3, HIGH); digitalWrite(motor2Pin4, LOW); delay(delayTime); digitalWrite(motor2Pin1, LOW); digitalWrite(motor2Pin2, LOW); digitalWrite(motor2Pin3, LOW); digitalWrite(motor2Pin4, HIGH); delay(delayTime); } void motor2down() { digitalWrite(motor2Pin1, LOW); digitalWrite(motor2Pin2, LOW); digitalWrite(motor2Pin3, LOW); digitalWrite(motor2Pin4, HIGH); delay(delayTime); digitalWrite(motor2Pin1, LOW); digitalWrite(motor2Pin2, LOW); digitalWrite(motor2Pin3, HIGH); digitalWrite(motor2Pin4, LOW); delay(delayTime); digitalWrite(motor2Pin1, LOW); digitalWrite(motor2Pin2, HIGH); digitalWrite(motor2Pin3, LOW); digitalWrite(motor2Pin4, LOW); delay(delayTime); digitalWrite(motor2Pin1, HIGH); digitalWrite(motor2Pin2, LOW); digitalWrite(motor2Pin3, LOW); digitalWrite(motor2Pin4, LOW); delay(delayTime); } void motor1off(){ digitalWrite(motor1Pin1, LOW); digitalWrite(motor1Pin2, LOW); digitalWrite(motor1Pin3, LOW); digitalWrite(motor1Pin4, LOW); } void motor2off(){ digitalWrite(motor2Pin1, LOW); digitalWrite(motor2Pin2, LOW); digitalWrite(motor2Pin3, LOW); digitalWrite(motor2Pin4, LOW); } void loop() { if (Serial.available() > 0) { // read the incoming byte: incomingByte = Serial.read(); // say what you got: Serial.print("I received: "); Serial.println(incomingByte, DEC); if (incomingByte == 53) { //5 motor1down(); } if (incomingByte == 54) { //6 motor1up(); } if (incomingByte == 50) { //2 motor2down(); } if (incomingByte == 51) { //3 motor2up(); } } motor1off(); motor2off(); }