Mitt åttonde projekt: Robotarm med smarta Tank chassi och Bluetooth (5 / 8 steg)
Steg 5: 2. Test
Stor! Den rör sig perfekt! Så jag lägga till Bluetooth-modulen till Arduino:
VCC > 5V
GND > GND
TXD > stift 3
RXD > stift 2
Ladda upp koden i 4: e projektet:
#include < SoftwareSerial.h >
SoftwareSerial BT(3, 2); som TX och RX på bluetooth till stift 3 och 2 respektive
röding, kommando;
int motorPin = 8; höger sida till IB - framåt
int motorPin2 = 9; vänster sida till IA - framåt
int motorPin3 = 10; höger sida till IA - bakåt
int motorPin4 = 11; vänster sida till IB - bakåt
void setup() {
BT.begin (9600);
pinMode (motorPin, produktionen);
pinMode (motorPin2, produktionen);
pinMode (motorPin3, produktionen);
pinMode (motorPin4, produktionen);
}
void stop() {
digitalWrite (motorPin, låg);
digitalWrite (motorPin2, låg);
digitalWrite (motorPin3, låg);
digitalWrite (motorPin4, låg);
}
void forward() {
digitalWrite (motorPin, hög);
digitalWrite (motorPin2, hög);
digitalWrite (motorPin3, låg);
digitalWrite (motorPin4, låg);
}
void backward() {
digitalWrite (motorPin, låg);
digitalWrite (motorPin2, låg);
digitalWrite (motorPin3, hög);
digitalWrite (motorPin4, hög);
}
void turnLeft() {
digitalWrite (motorPin, hög);
digitalWrite (motorPin2, låg);
digitalWrite (motorPin3, låg);
digitalWrite (motorPin4, hög);
}
void turnRight() {
digitalWrite (motorPin, låg);
digitalWrite (motorPin2, hög);
digitalWrite (motorPin3, hög);
digitalWrite (motorPin4, låg);
}
void loop() {
om (BT.available() > 0) {
kommandot = BT.read();
Växla (kommandot) {
fallet "w":
Forward();
bryta;
fallet "x":
Backward();
bryta;
fallet "a":
turnLeft();
bryta;
fall skulle ":
turnRight();
bryta;
fallet ":
Stop();
bryta;
}
}
}
Och använda Android app 4. projektet för att testa det...
Inget svar.
Jag har testa robotarmen och smarta tank separat och båda är bra, och jag är ganska säker att Bluetooth-modulen fungerar korrekt. Problemet borde vara på ledningarna. Jag byta RX och TX PIN-koden men det fungerade inte... Så nedslående...: ()
Så jag försöker tiggeri ett svar från google och få denna information av en slump:
http://www.Arduino.cc/en/reference/SoftwareSerialExample
Obs:
Inte alla stift Mega och Mega 2560 stöd ändra avbrott,
så endast följande kan användas för RX:
10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69
Bluetooth-modulen kunde inte kommunicera med Arduino bara för att jag använt fel pin! Så jag TX och RX till 52 och 53 respektive och försök igen. Det fungerar!