lunes, 5 de marzo de 2018

Programa del reto


Programa para  puerta con el reto de incluir luz led y melodía: lo nuevo aparece  en grande.


#include <LiquidCrystal.h>
#include <Servo.h>
Servo servo1;
 LiquidCrystal lcd(8,9,4,5,6,7);    //
int v=-1;
int puertoservo =3;    //  variable para mandar datos servo
int trig = 13;
int echo =12; 
 int piezo =2;    // variable  para  el piezo
 int ledPin = 10; //  declaraciòn del  led en pin  10
 int tonos [] = {252, 176, 176, 120, 296, 0, 347, 262};
 int grados; //    variable que captura datos de los grados
 int tmp=0;    //variable  temporal usada en la condicional
 int pulsominimo=650;
 int pulsomaximo=2550;   
   int calcularDistancia();
float disCalculada;

void setup()
{
  lcd.setCursor(4,1);   //define la posiciiòn 4 en la fila uno de la pantalla
  lcd.print ("BIENVENIDO ESCUELA ABRAHAM lINCOLN");  //se muestra  la  palabra  BIENVENIDo en la posiciòn indicada
  lcd.noBlink();  //indicación  a  la lcd para que  no parpadee
  delay (3000);  // espera 2 segundos
  servo1.attach (puertoservo,pulsominimo , pulsomaximo);
  //--------------------//
pinMode (trig, OUTPUT);
pinMode (echo, INPUT);
pinMode (piezo,OUTPUT);     // se  define  la  salida en el piezo
 //--------------------//

 pinMode(ledPin, OUTPUT);
Serial.begin (9600);

}
void loop()
{
 disCalculada = calcularDistancia ();
 grados = servo1.read();
Serial.print("Grados :");
 Serial.println(grados);
delay (200);
 Serial.println("--------");
 Serial.print("cm :");
 Serial.println (disCalculada);
  delay (200);
  if (disCalculada < 20)     // condicional  Si
{
  
  tmp=90 + 10;   // variable temporal con  valor  asignado
  for (int x = 0; x < 8 ; x++)
  {
    digitalWrite (ledPin,HIGH);   //enciende  el pin
tone (piezo,tonos [x]);     // debe activar  el  piezo  y tocar tonos
}
}
else
{
  digitalWrite (ledPin,LOW);   // apaga  el  led
  noTone (piezo);    // el piezo  no  toca  ninguna pieza
  tmp=0-10;
  }
  delay (10);       // espera 10  milisegundos
  servo1.write (tmp);
  lcd.setCursor(1,1);  //posiciòn en el cursor,fila1,posición 1
  lcd.print ("Distancia");       //
  lcd.println(disCalculada);   //muestra  el valor  de  la  variable
}
   int calcularDistancia(){
    long distancia;
    long duracion;
   digitalWrite (trig, LOW);

No hay comentarios.:

Publicar un comentario

Problemas en la realización del Reto

Problemas y soluciones: 1.         1.  En   primer   lugar   tuve   complicaciones   para integrar   la   programación   de la   fotoc...