Objetivo practicar con Arduino y puntero láser (3 / 4 paso)

Paso 3: Subir el código a tu Arduino

El código:

 <p>/*<br> * ===================================================================================== * * Filename: TargetPractice_photoresistor.ino * * Description: Uses a photoresistor to detect how long it takes a player * to hit a target with a laser pointer after a countdown. * http://www.ardusat.com * * This example uses many third-party libraries available from * Adafruit (https://github.com/adafruit). These libraries are * mostly under an Apache License, Version 2.0. * * http://www.apache.org/licenses/LICENSE-2.0 * * Version: 1.0 * Created: 2/24/2016 * Revision: none * Compiler: Arduino * * Author: Chris Hoffman (chris * Organization: Ardusat * * ===================================================================================== *</p><p>*----------------------------------------------------------------------------- * Includes *-----------------------------------------------------------------------------*/ #include <arduino.h> #include <wire.h></wire.h></arduino.h></p><p>/*----------------------------------------------------------------------------- * Constant Definitions *-----------------------------------------------------------------------------*/</p><p>long top = 38; boolean win = false; boolean gameOn = true; boolean Started = false; boolean timer = false; long startTime; long endTime; long randomTime; float elapsedTime; int ledPin2 = 2; int ledPin3 = 3; int ledPin4 = 4; int ledPin5 = 5; const int sensorPin = 0; int lightLevel, high = 0, low = 1023;</p><p>/* * === FUNCTION ====================================================================== * Name: setup * Description: This function runs when the Arduino first turns on/resets. This is * our chance to take care of all one-time configuration tasks to get * the program ready to begin the game. * ===================================================================================== */ void setup(void){ Serial.begin(9600); pinMode(ledPin2,OUTPUT); //red LED pinMode(ledPin3,OUTPUT); // yellow LED pinMode(ledPin4,OUTPUT); // green LED pinMode(ledPin5,OUTPUT); // "go" sign Serial.println("All systems go. Watch for the countdown."); }</p><p>/* * === FUNCTION ====================================================================== * Name: loop * Description: After setup runs, this loop function runs until the Arduino loses * power or resets. We go through and update each of the attached * sensors, write out the updated values in JSON format, then delay * before repeating the loop again. * ===================================================================================== */ void loop(void){ Serial.print("lightLevel: "); Serial.println(lightLevel);</p><p> lightLevel = analogRead(sensorPin); lightLevel = map(lightLevel, 0, 1023, 0, 255); lightLevel = constrain(lightLevel, 0, 255); manualTune(); // manually change the range from light to dark if (gameOn == true){ digitalWrite(ledPin2,HIGH); delay(2000); digitalWrite(ledPin2,LOW); digitalWrite(ledPin3,HIGH); delay(2000); digitalWrite(ledPin3,LOW); digitalWrite(ledPin4,HIGH); delay(2000); digitalWrite(ledPin4,LOW); Random(); digitalWrite(ledPin5,HIGH); Serial.println("Fire!"); gameOn = false; } if (lightLevel >= top){ win = true; } if (win == true){ Stop(); int i=0; while (i <= 9){ digitalWrite(ledPin2,HIGH); digitalWrite(ledPin3,HIGH); digitalWrite(ledPin4,HIGH); digitalWrite(ledPin5,HIGH); delay (200); digitalWrite(ledPin2,LOW); digitalWrite(ledPin3,LOW); digitalWrite(ledPin4,LOW); digitalWrite(ledPin5,LOW); delay (200); i++; } delay(3000); win = false; gameOn = true; }</p><p> delay(10); }</p><p>/* * === FUNCTION ====================================================================== * Name: Random * Description: Delays the time inbetween the initial countdown and detecting the * laser pointer. * ===================================================================================== */</p><p>void Random() { randomTime = random(4,10); randomTime = randomTime*1000; delay(randomTime); Start(); }</p><p>/* * === FUNCTION ====================================================================== * Name: Start * Description: Starts a timer so we can report to the player how quickly they * hit the light sensor with a laser pointer. Calculated in millis. * ===================================================================================== */</p><p>void Start(){ startTime = millis(); }</p><p>/* * === FUNCTION ====================================================================== * Name: Stop * Description: Stops the timer and reports the player's elapsed time between the * go light and hitting the sensor. * ===================================================================================== */ void Stop(){ endTime = millis(); elapsedTime = (endTime - startTime)+5; elapsedTime = elapsedTime/1000; Serial.println("Direct Hit!"); Serial.print("Time, Seconds: "); Serial.println(elapsedTime); }</p><p>void manualTune() { lightLevel = map(lightLevel, 0, 1023, 0, 255); lightLevel = constrain(lightLevel, 0, 255); }</p> 

Siguiente

Artículos Relacionados

Creación de un termómetro digital con Arduino

Creación de un termómetro digital con Arduino

¿imaginaste alguna vez que hace su propio termómetro digital? Con el desarrollo de la tecnología cada vez más sofisticado, que nada es imposible.Esta vez el proyecto es crear su propio termómetro digital con Arduino. Que debe ser aprendido en este tu
Control de luces fluorescentes con un puntero láser y un Arduino

Control de luces fluorescentes con un puntero láser y un Arduino

algunos miembros de la Alfa un Hackerspace de laboratorios no les gusta la luz de lámparas fluorescentes.  ¿Querían una forma de poder controlar fácilmente los accesorios individuales, quizá con un puntero láser?Llegué a él.  Había cavado un montón d
Cómo escribir con un puntero láser azul o verde y tomar fotos

Cómo escribir con un puntero láser azul o verde y tomar fotos

un instructable simple que explicará cómo escribir usar un puntero láser para escribir en superficies tales como edificios, la tierra etc. para fotos genial.Paso 1: Cámara y configuración La primera cosa que necesitas es una cámara decente como este
DIY un lente Macro del IPhone con puntero láser por $1

DIY un lente Macro del IPhone con puntero láser por $1

lentes Macro para iPhones y teléfonos inteligentes hoy en día suelen ser bastante caras. Aquí es cómo hacer que un lente macro de iPhone con un puntero láser de $1.Paso 1: Obtener un puntero de láser Barato $1 puntero láser de la tienda de dólar o ti
Manteniendo el puntero láser en fácilmente (con fijador o Clips Bulldog)

Manteniendo el puntero láser en fácilmente (con fijador o Clips Bulldog)

Por lo tanto, tienes el nuevo puntero láser de Ebay y jugaba con él. Ahora desea apuntar contra una pared y admirar la belleza de su rayo en la oscuridad y descubres que es difícil de mantener en debido a su mala botón (mayoría de los casos en ebay b
Puntero láser con alimentación solar hecha de piezas bastante común y una lata altoids.

Puntero láser con alimentación solar hecha de piezas bastante común y una lata altoids.

Hoy crearemos un puntero láser con alimentación solar.Partes:5V 300ma (o menos) el panel solar3.6V batería (yo usé uno de un viejo cable menos teléfono)al azar trozos de alambre, preferentemente rojo y negrolata Altoids (mmm wintry minty-ness)interru
Vuelo simulador con Arduino y Python

Vuelo simulador con Arduino y Python

Control de la opción de simulador de vuelo de Google Earth utilizando un Arduino y un acelerómetro.Volar prácticamente todo el mundo; el acelerómetro de inclinación hacia adelante, atrás, izquierda y derecha para controlar el avión Pitching y banca.O
Automatización casera con Arduino... Y JavaScript!

Automatización casera con Arduino... Y JavaScript!

En este instructable (mi primera una realidad), te guiará para realizar la automatización en su hogar con Arduino, sí, no tan nueva... Pero también se incluyen JavaScript, usando Node.js y una impresionante biblioteca con Arduino llamado johnny cinco
Control potente con Arduino: Interfaz un actuador lineal

Control potente con Arduino: Interfaz un actuador lineal

En este artículo específico vamos a discutir cómo sencillo es controlar la poderosa fuerza mecánica usando un microcontrolador como Arduino y un actuador lineal de DC lineales Actuadores Inc.Paso 1: microcontroladoresRaspberryPi y Arduino han convert
Detector de movimiento PIR con Arduino: Funciona en el modo de consumo de energía más bajo

Detector de movimiento PIR con Arduino: Funciona en el modo de consumo de energía más bajo

Este video demuestra rápido y acercamiento fácil de reducir el consumo de energía de ATMEGA 328p basado en placas Arduino en torno al 70-75% mediante sensores PIR o PID para detección de movimiento.Este proyecto introduce a raíz de las cosas-1) inter
BRICOLAJE artesanal hexápodo con arduino (Hexdrake)

BRICOLAJE artesanal hexápodo con arduino (Hexdrake)

Hola, soy David y en este instructable te voy a mostrar cómo hice este hexápodo cuyo nombre es Hexdrake.Desde los 16 me interesé en electrónica y más tarde en robótica. Después de conseguir algún nivel y programación con arduino que decidí construir
Cómo medida actual de AC usando el Sensor de efecto Hall con Arduino u otros microcontroladores comunes

Cómo medida actual de AC usando el Sensor de efecto Hall con Arduino u otros microcontroladores comunes

Un nuevo enfoque más simple consulte aquíObjetivo: Este Instructable muestra cómo hacer una caja de interfaz que, al empalmar un cable de extensión, permite a los microcontroladores comunes como Arduino a medida AC actual como una señal de voltaje DC
Uber domótica con Arduino y Pi

Uber domótica con Arduino y Pi

[EDITAR] He creado un foro para colaborar en el código de puerta de enlace.http://homeautomation.proboards.com/Board/2/openha...Hace unos años me convertí en propietario de un perro por primera vez. Me gustaba salir de Cody en la perrera solo todo el
Juegos de azar con pensamientos/Mindwaves (con Arduino)

Juegos de azar con pensamientos/Mindwaves (con Arduino)

¿Qué pensar ¿por qué nos gusta de videojuegos? La respuesta no es difícil: el de los videojuegos nos muestra, muy buenos retos. Yo juego videojuegos rara vez, pero mis favoritos son carreras de coches y juegos de mundo abierto como necesidad de veloc