|     Inicio    |   |         |  |   FOROS      |  |      |      
   Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL
  Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino
  Raspberry Pi Visual Basic Script (VBS) FireBase (BD autoactualizable) NodeMCU como Arduino
  AutoIt (Programación) Visual Basic Cosas de Windows Webs interesantes
Translate:
Búsqueda en este sitio:


.

App inventor 2 en español
Cómo programar los teléfonos móviles con Android.
Bluetooth, Arduino y App inventor 2 - Juan Antonio Villalpando

-- Tutorial de iniciación de App Inventor 2 en español --

Volver al índice del tutorial

___________________________

9A02.- Bluetooth. Una pantalla para conectar. Otra para ver datos. Dos pantallas.

p9A02_bluetooth_dospantallas.aia

- Un ejemplo parecido lo vimos en: 299H_extension_GraficoDinamico.htm

- Se trata de que tenemos dos pantallas. En la Screen1 realizamos la conexión por Bluetooth y recibimos los datos del Arduino. Estos datos se van guardando en una TinyDB.

- En la Screen2 visualizamos los datos que contiene la TinyDB.

- Podemos pasar de la Screen1 a la Screen2 y viceversa, y visualizar los datos recibidos de Arduino.

___________________________
-
Conexión y código Arduino.

dos_pantallas.ino


// Juan A. Villalpando
// http://kio4.com/appinventor/9A02_Bluetooth_Dos_pantallas.htm

#include <SoftwareSerial.h>
SoftwareSerial BT(2,3);

int number = 0;
String numberS = "0";
char caracter = '0';

void setup(){
 BT.begin(9600);
 Serial.begin(9600);
}
 
void loop(){
  // Send number every 800 ms.
  delay(800);
  number = number + 1;
  if(number == 1000){number = 0;}
  Serial.println(number);
  numberS = (String) number + '\n';
  BT.write(numberS.c_str());

  // If receive char 'r' by BT, restart number.    
  if(BT.available()) {
    caracter = BT.read();
    Serial.println(caracter);
    if(caracter == 'r'){number = 0;}
    }
}

- El código envía por BT números cada 800 ms 1 2 3 4 5 6 7 8 9...

- Si recibe desde la aplicación el caracter 'r', reinicia, es decir vuelve a contar desde 0.

- Podemos ver los números en el Monitor Serie.

_______________________________________________

- Funcionamiento.

- Conectamos Bluetooth y seguidamente recibimos los números de Arduino 1 2 3 4 5 6 7 8 9...

- Esos números se van guardando en una TinyDB con la misma etiqueta: ReceiveText

- Se van guardando según van llegando y separados por coma: 1,2,3,4,5,6,7,8,9,...

- Se va uniendo el nuevo que se Recibe con los que ya había, separado por coma.

- Se muestra toda la etiqueta ReceiveText en etq_receive.

- Si escribimos la letra 'r' en el Casillero y la enviamos por BT, el código del Arduino reinicia la cuenta, es decir comienza a contar desde 0.

- Pulsando el Botón "Open Screen2", podemos abrir la Screen2 (cuando se abre la Screen2, la Screen1 permanece funcionando).

- Veamos la Screen2:

- Mediante el Temporizador vamos observando todo el contenido de la TinyDB. La TinyDB de la Screen1 y de la Screen2 es la misma.

- Podemos Cerrar la ventana mediante el Botón: "Close this Screen".

- Si pulsamos el Botón: "Send 'r' (by Screen1)", se cierra la pantalla y además envía el caracter 'r' a la Screen1.

- Cuando la Screen1 recibe ese caracter 'r', envía la 'r' al Arduino por BT para que reinicie, y además vuelve a abrir la Screen2.

_______________________________________________

- Diseño Screen1.

_______________________________________________

- Bloques Screen1.

_______________________________________________

- Diseño Screen2.

_______________________________________________

- Bloques Screen2.

__________________________________

 
- Mi correo:
juana1991@yahoo.com
- KIO4.COM - Política de cookies. Textos e imágenes propiedad del autor:
© Juan A. Villalpando
No se permite la copia de información ni imágenes.
Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación y realizan análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. Acepto    Más información