Paso 9: El código y la aplicación
El módulo Bluetooth se arruinara la programación así que tienes que desconectar el módulo de Bluetooth antes de subir cualquier cosa.
Por lo tanto, para cargar el código, desconectar el Arduino (no sé qué sucede si usted lo deja en tan solo llevarlo hacia fuera), conecte un cable usb y copiar y pegar el código desde aquí en el IDE de Arduino. Asegúrese de que selecciona la derecha arduino y com. Ahora cargar el código.
Puede copiar el código desde aquí:
Código de TinyTank:
Se reciben los datos desde el módulo de Bluetooth y conducir los tanque delantero al revés izquierda y derecha. También el arma de fuego y las luces de encender y apagar cuando presionas los botones en la aplicación y se puede ajustar la velocidad de la aplicación. Emite cuando se puso en marcha y cuando se pierde la conexión.
-----------------------------------------------------------------------------------------------------------------------------------------
/ * Este esbozo conducirá el TinyTank con bluetooth.
Cuando se activa en él hará un sonido y si se desconecta se hace otro sonido y
* la luz parpadeará dos veces.
* Es obvio que cuando pulsas el botón de avance en la aplicación que va a conducir el tanque
* hacia adelante y así sucesivamente. Cuando usted presiona el botón de los faros la headlighst se enciende,
* y esto es lo mismo para la iluminación. al pulsar el botón de la bocina el cuerno se encenderá
* y si lo pulsa otra vez se apagarán. Cuando usted presiona el botón triángulo el arma se disparará una vez.
* Usted puede cambiar la velocidad que el tanque llevará deslizando la corredera hacia adelante y hacia atrás.
*
* lo unico que tienes que cambiar es el tiempo la pistola es alta por lo que se dispara una vez, lo hará
* depende de tu tipo de arma.
*
* Hecho por: Ynze Selders
*/
#include
rSpeed int = 0;
lSpeed int = 0;
Servo rightservo;
Servo leftservo;
comando de Char;
const int faros = 8;
const int iluminación = 2;
const int pistola = 3;
const int zumbador = 6;
void setup() {}
Serial.Begin(9600);
rightservo.Attach(9);
leftservo.Attach(10);
pinMode (faros, salida);
pinMode (contraluces, salida);
pinMode (arma, salida);
pinMode (zumbador, salida);
rightservo.Write(90);
leftservo.Write(90);
tono (zumbador, 750); tono de inicio
Delay(150);
tono (zumbador, 1000);
Delay(150);
tono (zumbador, 1250);
Delay(150);
noTone(buzzer);
}
void loop() {}
if(serial.Available() > 0) {}
comando = Serial.read();
STOP();
Switch(Command) {//these son todas las letras y números que envía la aplicación para el bluetooth
'F' del caso: //module
Forward();
rotura;
caso 'B':
Back();
rotura;
caso 'L':
Left();
rotura;
caso 'R':
Right();
rotura;
caso 'G':
forwardleft();
rotura;
caso 'I':
forwardright();
rotura;
caso 'H':
backwardleft();
rotura;
caso 'J':
backwardright();
rotura;
caso '0': //these son las diferentes velocidades
rSpeed = 85;
lSpeed = 95;
rotura;
caso '1':
rSpeed = 83;
lSpeed = 97;
rotura;
caso '2':
rSpeed = 81;
lSpeed = 99;
rotura;
Case '3':
rSpeed = 79;
lSpeed = 101;
rotura;
caso '4':
rSpeed = 77;
lSpeed = 103;
rotura;
caso '5':
rSpeed = 74;
lSpeed = 106;
rotura;
caso '6':
rSpeed = 70;
lSpeed = 110;
rotura;
caso '7':
rSpeed = 65;
lSpeed = 115;
rotura;
caso '8':
rSpeed = 59;
lSpeed = 121;
rotura;
caso '9':
rSpeed = 25;
lSpeed = 155;
rotura;
caso 'q':
rSpeed = 0;
lSpeed = 180;
rotura; extremo de las velocidades
caso 'W': / / si se presiona headlightbutton encender las linternas
digitalWrite (faros, HIGH);
rotura;
caso 'w': / / si headlightbutton se presiona otra vez apagar las linternas
digitalWrite (faros, LOW);
rotura;
caso de la 'U': / / si se presiona backlightbutton enciende la luz de fondo
digitalWrite (luz de fondo, alto);
rotura;
caso 'u': / / si se presiona backlightbutton otra vez apagará la luz de fondo
digitalWrite (luces, baja);
rotura;
caso 'X': / / si se pulsa tecla pistola dispara una vez
digitalWrite (arma, HIGH);
Delay(150); modificar este valor por lo que una vez dispara pulsando el botón
digitalWrite (pistola, baja);
rotura;
caso 'x': / / esto es lo mismo que uno sobre aquí pero de lo contrario tienes que presionar el
digitalWrite (arma, HIGH); //button dos veces para disparar una vez
Delay(150); así que modificar este valor para el mismo valor que el otro se
digitalWrite (pistola, baja);
rotura;
caso 'V': / / si se pulsa el botón de cuerno encender el zumbador
Tone(buzzer,1000); / / modificar este valor para obtener otros tonos
rotura;
caso 'v': / / Si el cuerno se presiona el botón otra vez de vuelta el timbre apagado
noTone(buzzer);
rotura;
caso sería ':
rightservo.Write(90); Si analizo apaga motores
leftservo.Write(90);
digitalWrite (pistola, baja); Si analizo Asegúrese de que la pistola está apagado
tono (zumbador, 2000); Si analizo parpadea luces y sonido
digitalWrite (faros, HIGH);
digitalWrite (luz de fondo, alto);
Delay(250);
digitalWrite (faros, LOW);
digitalWrite (luces, baja);
Delay(250);
digitalWrite (faros, HIGH);
digitalWrite (luz de fondo, alto);
Delay(250);
digitalWrite (faros, LOW);
digitalWrite (luces, baja);
Delay(250);
noTone(buzzer);
rotura;
}
}
}
//define forward() vacío qué es adelante
{
rightservo.Write(rSpeed); se mueve con la velocidad seleccionada en la aplicación
leftservo.Write(lSpeed);
}
void back() //define lo que es al revés
{
rightservo.Write(lSpeed);
leftservo.Write(rSpeed);
}
void left() //define lo que queda
{
rightservo.Write(rSpeed);
leftservo.Write(rSpeed);
}
void right() //define lo que es correcto
{
rightservo.Write(lSpeed);
leftservo.Write(lSpeed);
}
anular forwardright() //define qué es forwardright
{
rightservo.Write(90);
leftservo.Write(lSpeed);
}
anular forwardleft() //define qué es forwardleft
{
rightservo.Write(rSpeed);
leftservo.Write(90);
}
anular backwardleft() //define qué es backwardleft
{
rightservo.Write(90);
leftservo.Write(rSpeed);
}
anular backwardright() //define qué es backwardright
{
rightservo.Write(lSpeed);
leftservo.Write(90);
}
void Stop() //define lo que es parada
{
rightservo.Write(90);
leftservo.Write(90);
}
-------------------------------------------------------------------------------------------------------------------
La aplicación:
https://Play.Google.com/store/apps/details?id=Braulio.calle.bluetoothRCcontroller&hl=nl