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
___________________________
9B1.- App Inventor solicita Temperatura o Humedad por Bluetooth. Arduino.
- En este tutorial vimos cómo obtener la Temperatura y Humedad de un Sensor en Arduino:
9B.- Bluetooth y Arduino. Potenciómetro. Ultrasonido. Humedad-Temperatura. JoyStick. Teclado.
- En ese caso se obtenían los dos valores a la vez.
- Ahora mediante dos Botones en App Inventor solicitaremos la Temperatura o la Humedad, según el Botón pulsado.
- Arduino solo enviará la Temperatura o la Humedad.
- Es necesaria la librería DHT11.zip.
- Esta es otra librería DHT por si no te funciona la anterior: DHT.zip. (llámala DHT11)
- Baja este archivo, lo descomprimes y lo pegas la carpeta DTH en C:/Archivos de programa(x86)/Arduino/libraries/
_______________________________________________
- El App Inventor solicita Temperatura o Humedad.
p9B1_bluetooth_humedad.aia
_______________________________________________
- Diseño.
_______________________________________________
- Bloques.
- En dirección, primero mediante el bloque DireccionesYNombres consulta la dirección de tu Bluetooth y luego la pones en el bloque de Conectar dirección de la forma: CC:CC:CC:CC:CC:CC
___________________________
- Conexión Arduino.
___________________________
- Código Arduino.
- IMPORTANTE: Para cargar el programa en el Arduino, debe estar desconectado el módulo Bluetooth.
|
// Juan Antonio Villalpando
// juana1991@yahoo.com
// kio4.com
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
// LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);
char caracter;
void setup() {
lcd.begin(16,2);// Columnas y filas de LCD
Serial.begin(9600);
dht.begin();
}
void loop(){
float humedad = dht.readHumidity();
float temperatura = dht.readTemperature();
lcd.clear(); // Borra pantalla
lcd.setCursor(0,0); // Inicio del cursor
lcd.print("Temper. = ");
lcd.print(temperatura);
lcd.setCursor(0,1); // Siguiente renglón.
lcd.print("Humedad = ");
lcd.print(humedad);
delay(300);
// Bluetooth
if(Serial.available()) {
caracter = Serial.read();
if(caracter == 'T')
{
int temper = (int) (temperatura);
Serial.print(temper);
Serial.print("\n"); // Fin de línea. Importante.
}
if(caracter == 'H')
{
int humed = (int) (humedad);
Serial.print(humed);
Serial.print("\n"); // Fin de línea. Importante.
}
caracter == ' ';
}
}
|
__________________________________
|