Paso 19: Cargar el código
Antes de cargar el código, quite cualquier Arduino el escudo o Bluetooth módulo Rx y Tx. copia el código siguiente y péguelo en el ide de Arduino. He comentado delante de las líneas para que los principiantes entiendan el código fácilmente. Aquí el código:
#include < LiquidCrystal.h > //Adding todas las bibliotecas
#include < dht11.h >
#define START_CMD_CHAR ' *'
#define CMD_ANALOGWRITE 11
#define MAX_COMMAND 20 / / máximo número de código de comando. utiliza para la comprobación de errores.
#define MIN_COMMAND 10 / / mínimo número de código del comando. utiliza para la comprobación de errores.
#define MAX_ANALOGWRITE 255
#define PIN_HIGH 3
#define PIN_LOW 2
int tecla = 7; definir el número de pin y el valor
inttempPin = A1;
temp de flotador;
int estado = 0;
intpotPin = A0;
int valor = 0;
dht11 DHT11;
LiquidCrystallcd (12, 16, 5, 4, 3, 2);
Cadena in;
void setup() {}
DHT11.Attach(8); diciendo Arduino que al que se conecta el sensor de pin DHT11
pinMode(button,INPUT);
LCD.Begin(16,2);
Serial.Begin(9600);
Serial.Flush();
LCD.Print ("lámpara de LED Arduino"); el mensaje de inicio de impresión
Delay(2000);
LCD.Clear();
LCD.Print("control:"); Decir que el modo se utiliza para controlar el tablero llevado
lcd.setCursor(0,1);
LCD.Print("Potensiometer");
Delay(2000);
LCD.Clear();
}
void loop()
{
LCD.Clear();
LCD.Print("INSTRUCTABLES");
Delay(50);
Si (digitalRead (botón) == alto & & estado == 0) / / cambiar el modo de las instrucciones dadas por el usuario
{
Estado ++;
LCD.Print("control:");
lcd.setCursor(0,1);
LCD.Print("app");
Delay(2000);
LCD.Clear();
}
else if (digitalRead (botón) == alto & & estado == 1)
{
Estado ++;
LCD.Print("control:");
lcd.setCursor(0,1);
LCD.Print("Potensiometer");
Delay(2000);
LCD.Clear();
}
else if (digitalRead (botón) == alto & & estado == 2)
{
estado = estado-2;
intchk = DHT11.read();
Temp = analogRead(tempPin); recibe la tensión de salida del sensor de temperatura
Temp = temp * 0.48828125; convertir el voltaje de salida de temperatura en grados celcius
LCD.Print ("temperatura:");
LCD.Print(Temp);
LCD.Print("*C");
lcd.setCursor(0,1);
LCD.Print("Humi:");
LCD.Print((int)DHT11.humidity,DEC);
LCD.Print("%");
Delay(4000);
LCD.Clear();
}
Si (estado == 1) / / código para controlloing led tablero de aplicación
{
Serial.Flush();
intard_command = 0;
intpin_num = 0;
intpin_value = 0;
charget_char = ' ';
get_char = Serial.read();
Si (get_char! = START_CMD_CHAR) volver;
ard_command = Serial.parseInt();
pin_num = Serial.parseInt();
pin_value = Serial.parseInt();
Si (ard_command == CMD_ANALOGWRITE) {}
analogWrite (pin_num, pin_value);
}
}
else if (estado == 0) / / código para el control de la aplicación de Potensiometer
{
valor = analogRead(potPin);
valor = mapa (valor, 0, 1023, 0, 255);
analogWrite(11,value);
}
}