Paso 5: Tiempo para algún código de
Aquí están algunas piezas importantes del software que utilizamos para programar su dispositivo.#include "NewPing.h"
#define justRightLed 11 / / verde
#define 10 defectuoso / utilice
#define tooFarLed 9 / / rojo
#define tooCloseLed 8 / / azul
#define ECHO_PIN 12
#define TRIGGER_PIN 13
/*
Cambiar estos valores para su garaje
*/
doble tooCloseInches = 5;
doble tooFarInches = 20;
En función de la configuración, asegúrese de que usted ponga los pernos a la
pinMode (tooCloseLed, salida);
pinMode (justRightLed, salida);
pinMode (tooFarLed, salida);
pinMode(ECHO_PIN,INPUT);
pinMode(TRIGGER_PIN,OUTPUT);
/*
Este código se enciende o apaga todos los LEDs... Uso al probar...
*/
void lightAllLeds()
{
digitalWrite(tooCloseLed,HIGH);
digitalWrite(tooFarLed,HIGH);
digitalWrite(justRightLed,HIGH);
}
void resetAllLeds()
{
digitalWrite(tooCloseLed,LOW);
digitalWrite(tooFarLed,LOW);
digitalWrite(justRightLed,LOW);
}
/*
El bucle principal
*/
void loop()
{
Delay(300);
unsigned int nos = sonar.ping();
doble distanceCM = uS / US_ROUNDTRIP_CM;
Distanciaen doble = uS / US_ROUNDTRIP_IN;
Si displayCorrectStatus(distanceIn) (distanciaen > 0.1);
}
/*
Primero Compruebe si la distancia medida es mayor que la línea demasiada y si es el distante a menos de la 2 línea lejos - en este momento sabemos que es en la zona de seguridad
A continuación, compruebe si la distancia es demasiada, entonces el LED azul se ilumina.
Por último, el LED rojo se ilumina, si la distancia es demasiado.
*/
void displayCorrectStatus(int distanceIn)
{
Si ((distanciaen > = tooCloseInches) & & (distanciaen < = tooFarInches))
{
displayJustRightStatus();
}
else if (distanciaen < tooCloseInches)
{
displayTooCloseStatus();
}
otra cosa
{
displayTooFarStatus();
}
}