上传之前从Arduino删除RX和Tx电缆!
连接板的电脑程序与下面的代码。你可以做出必要的改变。
请务必设置正确的COM端口和板下的工具。
在完事之后,取代RX和Tx线。你需要删除它们,每次你上传的代码。
<p>#include <br>Servo myServo;</p><p>int r_motor_n = 10; //PWM control Right Motor +
int r_motor_p = 11; //PWM control Right Motor -
int l_motor_p = 9; //PWM control Left Motor -
int l_motor_n = 6; //PWM control Left Motor +
int pump = 4;
int mop = 5;
int serv = 3;
int speedy = 255;
int incomingByte = 0; // for incoming serial data</p><p>void setup()
{
myServo.attach(3);
myServo.write(0);
pinMode(r_motor_n, OUTPUT); //Set control pins to be outputs
pinMode(r_motor_p, OUTPUT);
pinMode(l_motor_p, OUTPUT);
pinMode(l_motor_n, OUTPUT);
pinMode(pump, OUTPUT);
pinMode(mop, OUTPUT);
digitalWrite(r_motor_n, LOW); //set both motors off for start-up
digitalWrite(r_motor_p, LOW);
digitalWrite(l_motor_p, LOW);
digitalWrite(l_motor_n, LOW);
digitalWrite(pump, LOW);
digitalWrite(mop, LOW);
Serial.begin(9600);
}</p><p>void loop()
{</p><p>if (Serial.available() > 0)
{
incomingByte = Serial.read();
}</p><p>switch(incomingByte)
{</p><p>case 'S': // control to stop the robot
digitalWrite(r_motor_n, LOW);
digitalWrite(r_motor_p, LOW);
digitalWrite(l_motor_p, LOW);
digitalWrite(l_motor_n, LOW);
Serial.println("Stop");
incomingByte='*';
break;</p><p>case 'R': //control for right
analogWrite(r_motor_n, speedy);
digitalWrite(r_motor_p, LOW);
analogWrite(l_motor_p, speedy);
digitalWrite(l_motor_n, LOW);
Serial.println("right");
incomingByte='*';
break;</p><p>case 'L': //control for left
analogWrite(r_motor_n, LOW);
digitalWrite(r_motor_p, speedy);
analogWrite(l_motor_p, LOW);
digitalWrite(l_motor_n, speedy);
Serial.println("right");
incomingByte='*';
break;</p><p>case 'F': //control for forward
analogWrite(r_motor_n, speedy);
digitalWrite(r_motor_p, LOW);
analogWrite(l_motor_p, LOW);
digitalWrite(l_motor_n, speedy);
Serial.println("right");
incomingByte='*';
break;</p><p>case 'B': //control for backward
analogWrite(r_motor_n, LOW);
digitalWrite(r_motor_p, speedy);
analogWrite(l_motor_p, speedy);
digitalWrite(l_motor_n, LOW);
Serial.println("right");
incomingByte='*';
break;</p><p>case 'P': // pump on
digitalWrite(pump, HIGH);
Serial.println("pump on");
incomingByte='*';
break;</p><p>case 'p': // pump off
digitalWrite(pump, LOW);
Serial.println("pump off");
incomingByte='*';
break;</p><p>case 'M':
digitalWrite(mop, HIGH); // mopper on
Serial.println("mopper on");
incomingByte='*';
break;</p><p>case 'm':
digitalWrite(mop, LOW); // mopper off
Serial.println("mopper off");
incomingByte='*';
break;</p><p>case 'U': // roller up
myServo.write(0);
Serial.println("roller up");
incomingByte='*';
break;</p><p>case 'u': // roller down
myServo.write(135);
Serial.println("roller down");
incomingByte='*';
break;</p><p>case '1':
speedy = 155;
Serial.println("speed= 10");
incomingByte='*';
break;</p><p>case '2':
speedy = 185;
Serial.println("speed= 25");
incomingByte='*';
break;</p><p>case '3':
speedy = 215;
Serial.println("speed= 75");
incomingByte='*';
break;</p><p>case '4':
speedy = 255;
Serial.println("speed= 100");
incomingByte='*';
break;</p><p>delay(5000);
}
}</p>