Avances laberinto
*(plantilla de corte en archivos)
Para hacer el laberinto, se usó madera mdf en corte láser, dimensiones: 15 x 21 x 3 cm
const (comando que no varia a través del tiempo)
estado del botón 0 estado natural de las cosas
setup (condición inicial) termina la etapa cuando aparece }
Loop repetir, programaciones que se iniciaran después del setup
High= verdadero
´´´ (para citar en gibhub) - revisar gibhub profes clases profe
ctrl +f - buscar una palabra y remplazar una palabra
Standby = quieto
const (proteger una parte del codigo)
*BUTTON_PIN =numero - modificar el numero y se modificara en todo el codigo
En el loop se usa switch modifica el estado - Switch (Standby)
if (revisaboton) - estadoActual= ACTIVO esa accion dice que cada vez que se precione el boton realiza esa accion
case TRABAJANDO:
Serial.println
Variable- boolean - true/false
ctrol+t- ordenar código
Umbrales-
*libreria adafrut es recomendada
&& es para condicionar ej: if (distancia > Umbral - 15 && distancia < Umbral){ }
=o
estado s (No esta la bolita, esta la bolita y esta el tiempo, esta la bolita finalizo el tiempo) CuentaRegresiva ()
case ACTIVO,
CuentaRegresiva ()
if (sensorFin () | cuentaRegresiv ( ) ) |
estadoActual = Trabajando
¿Qué es? Un juego que busca alcanzar completar un circuito en un tiempo definido (tiempo mostrado por los led del arduino), donde el jugador que logre llegar al final del juego antes de que finalice el tiempo ganará el juego.
TAREA: quiero empezar a jugar.
CASOS LÍMITES: que la pelotita no esté en el tablero. que el tiempo empiece a correr y no esté la pelotita. que el tiempo no corra.
PROGRAMAR void setup () sólo se ejecuta una vez. void loop () se ejecuta constantemente. void setup > pinmode (13, OUTPUT) avisa a Arduino que usare uno de los pines OUTPUT enviar info **y se usa ; para finalizar
Enviando info a través de lod pines void loop()> digitalWrite (13,HIGH); para prender el led.
Para apagar el led 13 void loop()> digitalWrite (13,LOW); al escribir bajo este el tiempo que se demore en encender delay(1000); se mide en milisegundos y si lo volvemos a agregar bajo LOW > delay(1000); se prende y apagara la luz en 1000 milisegundos.
** Uso de la protoboard (placa de prototipado)
LEDS : Pata larga es (+) y la pata corta (-) por lo que el LED se debe conectar de forma vertical ( Ej: en la fila 30 el polo positivo y en la 31 el negativo )
RESISTENCIAS: Para que pase solo la energía necesaria (para el ejemplo se usara una resistencia de 220v la patita quedara al positivo del led)
CABLE JUMPER: se usan los cables oscuros para aludir al - y el mas claro al + el cable se pasa primero por la resistencia (el mas claro +) luego conecto el cable a tierra , conectándolo al negativo del LED (cable oscuro -)
Luego para programar el LED se agregan 2 cables para conectar al pin 8 y al de tierra
Programando lo siguiente
https://youtube.com/shorts/_zaioiT6iik Parpadeo LED y si se queremos queremos crear una variante en las velocidades se debemos volver a agregar los códigos las veces que queramos y modificar el tiempo (con este parpadea 3 veces lento y 3 veces rápido)
No nos funciono la biblioteca del sensor CapacitiveSensor.h
CapacitiveSensor sensor = CapacitiveSensor(4,3);
void setup() { // put your setup code here, to run once: pinMode(12,OUTPUT); }
void loop() { // put your main code here, to run repeatedly: long lectura = sensor.capacitiveSensor(30);
if(lectura>1) digitalWrite(12,HIGH); else digitalWrite(12,LOW);
delay(10); }
Creando un sensor capacitivo con Arduino por Xukyo https://www.aranacorp.com/es/creando-un-sensor-capacitivo-con-arduino/ codigo:
//Libraries #include
Creando un sensor capacitivo con Arduino por Xukyo https://www.aranacorp.com/es/creando-un-sensor-capacitivo-con-arduino/ codigo:
//Libraries #include
#include “Arduino_LED_Matrix.h” //Include the LED_Matrix library #include “animation.h” //Include animation.h header file
// Create an instance of the ArduinoLEDMatrix class ArduinoLEDMatrix matrix;
void setup() { pinMode(2, INPUT); pinMode(3, OUTPUT); }
void loop() { if (digitalRead(2) == HIGH) { digitalWrite(3, HIGH); matrix.loadSequence(animation); matrix.begin(); matrix.play(true); delay(10000); } else { digitalWrite(3, LOW); matrix.play(false); delay(1000); } }
ANIMACIÓN
const uint32_t animation[][4] = { { 0x30c20, 0x43fc3fc2, 0x430c000, 50 },
{ 0x36c29, 0x41081082, 0x9436c000, 50 },
{ 0x30c20, 0x43fc3fc2, 0x430c000, 50 },
{ 0x0, 0x0, 0x0, 66, }, };