El abridor de puertas de garaje de iButton (Arduino) (4 / 10 paso)

Paso 4: El reloj

No tiene la pantalla LCD, así que el siguiente paso sería averiguar cómo hacer las cosas de reloj. No quiero utilizar cualquier parte externa, como un IC de RTC (reloj en tiempo Real) o una conexión a internet o algo. El Arduino tiene un cristal interno, por lo que debe ser posible hacer un reloj con Arduino y dos botones para ajustar la hora y fecha.

El cableado
El cableado es añadiendo dos botones, de modo que es no tan duros.
Para obtener releiable de trabajo de botones en un Arduino, es necesario utilizar un pull-down resistor (conectado a la tierra) o un tirón para arriba del resistor (conectada a los + 5V).
Este resistor de 10 kOhm se encarga de que el botón es baja o alta, cuando no se pulsa. Usé un tirón para arriba del resistor, así que mis botones son altos cuando no se empujaron.
(todo lo que nunca quisiste saber sobre botones de Arduinos aquí aprender:)

  • Conecte un cable desde el + de la tira de la placa a + 5V en el Arduino
  • Conecte un cable de la - tira de la placa a GND de Arduino
  • poner dos botones en el tablero
  • conectar una resistencia de 10kOhm entre una pierna del botón y el + tira (2 x)
  • Conecte un cable de la misma pierna del botón donde se conecta la resistencia, al pin 8 de Arduino (y al pin 9 del otro botón)
  • Conecte un cable desde la otra pierna de los botones a de-tira (2 x)

El bosquejo
He intentado escribir mi propio sketch, usando la función [millis] Arduino, pero que no era tan fácil como pensé que sería, por lo que he buscado en www.arduino.cc y encontró algunas bibliotecas agradables y bocetos. Lo único era que los bocetos de todos algo externo utilizan para configurar el tiempo (internet, puerto serial o RTC). Quería utilizar los dos botones para ajustar la hora, así que había todavía algunos programando hacer para mí.
Todavía no tengo el LCD, por lo que la función de monitor de la serie del software de Arduino será mi pantalla por ahora.
Poder ejecutar el bosquejo, usted tendrá que descargar la librería desde aqui: http://www.arduino.cc/playground/Code/Time y ponerlo en la carpeta [arduino]. (y reiniciar el software de Arduino)

El código de
#include < Time.h > //adding la biblioteca de tiempo de

int knoptijd = 400; establecer todas las variables (lo siento por los nombres holandeses)
uur INT = 12;
minuut int = 15;
seconde int = 0;
int dag = 10;
maand int = 9;
jaar de int = 2011;
int knopset = 10;
int knopmode = 11;
int setwaarde = 0;
int modewaarde = 0;

void setup() {}
pinMode (knopset, entrada);
pinMode (knopmode, entrada);
Serial.Begin(9600);
setTime(uur,minuut,seconde,dag,maand,jaar); Ajuste el starttime para el reloj cuando se inicia

}

void loop() {}
setklok();
digitalClockDisplay();
Delay(1000);
}

void setklok() {//setting el reloj
modewaarde = digitalRead(knopmode);
Si (modewaarde == LOW) {//if el botón [mode] es està
Serial.println ("tijd instellen");
ajuste de las horas
Serial.println("UUR");
Serial.println(UUR);
Delay(knoptijd);
modewaarde = digitalRead(knopmode);
mientras que (modewaarde == HIGH) {}
Delay(knoptijd);
setwaarde = digitalRead(knopset);
Si (setwaarde == LOW) {}
UUR ++;
Si uur (uur > 24) = 1;
Serial.println(UUR);
}
modewaarde = digitalRead(knopmode);
}

Ajuste los minutos
Serial.println("minuut");
Serial.println(minuut);
Delay(knoptijd);
modewaarde = digitalRead(knopmode);
mientras que (modewaarde == HIGH) {}
Delay(knoptijd);
setwaarde = digitalRead(knopset);
Si (setwaarde == LOW) {}
minuut ++;
Si minuut (minuut > 59) = 0;
Serial.println(minuut);
}
modewaarde = digitalRead(knopmode);
}

Ajuste el mes
Serial.println("maand");
Serial.println(maand);
Delay(knoptijd);
modewaarde = digitalRead(knopmode);
mientras que (modewaarde == HIGH) {}
Delay(knoptijd);
setwaarde = digitalRead(knopset);
Si (setwaarde == LOW) {}
maand ++;
Si maand (maand > 12) = 1;
Serial.println(maand);
}
modewaarde = digitalRead(knopmode);
}

fijar el día
Serial.println("Dag");
Serial.println(Dag);
Delay(knoptijd);
modewaarde = digitalRead(knopmode);
mientras que (modewaarde == HIGH) {}
Delay(knoptijd);
setwaarde = digitalRead(knopset);
Si (setwaarde == LOW) {}
Dag ++;
Si (maand == 1 || maand == 3 || maand == 5 || maand == 7 || maand == 8 || maand == 10 || maand == 12) {}
Si dag (dag > 31) = 1;
}
Si (maand == 4 || maand == 6 || maand == 9 || maand == 11) {}
Si dag (dag > 30) = 1;
}
Si (maand == 2) {}
Si dag (dag > 28) = 1;
}
Serial.println(Dag);
}
modewaarde = digitalRead(knopmode);
}

setTime(uur,minuut,seconde,dag,maand,jaar);
}
}

void digitalClockDisplay() {//printing hora y fecha

Serial.Print(hour());
printDigits(minute());
Serial.Print("");
Serial.Print(Day());
Serial.Print("/");
Serial.Print(month());
Serial.println();
}

void printDigits (int dígitos) {}
función de utilidad para la visualización del reloj digital: impresiones anteriores a colon y lleva 0
Serial.Print(":");
if(digits < 10)
Serial.Print('0');
Serial.Print(digits);
}

Artículos Relacionados

Abridor de puerta de garaje "jugador 2"

Abridor de puerta de garaje "jugador 2"

No soy sólo un jugador, soy un entusiasta de los juegos de azar. Yo nací en el mismo año que Pong, jugar juegos de Juego Vortex y PlayStation ilustrado e incluso creó y enseñó una introducción al curso de desarrollo de videojuegos de L.S.U. mientras
Abridor de puerta de garaje IOT (Edison Intel y Android)

Abridor de puerta de garaje IOT (Edison Intel y Android)

Este instructivo describe un método que utiliza un Edison de Intel y una aplicación del teléfono/tablet Android como control remoto puerta garage. Esto no es realmente una nueva idea y soy consciente de proyectos similares ya que hay en la web, pero
Instalar un abridor de puerta de garaje en tu moto

Instalar un abridor de puerta de garaje en tu moto

cuando me mudé a mi casa primero me alegré de finalmente poner mi moto en un garaje. He comprado puertas de garaje extra para hacer las cosas uno más conveniente para el carro y uno para cada moto (esposa monta demasiado). El problema que tuve con es
Abridor de puerta de garaje eléctrica Imp

Abridor de puerta de garaje eléctrica Imp

He perdido la cuenta de la cantidad de veces que hemos fijado en un viaje sólo para tener que volver atrás para comprobar si recordamos cerrar la puerta del garaje. Este ' ible le muestra cómo conectar el diablillo eléctrico a su abridor de puerta de
Abridor de puerta de garaje WiFi Arduino

Abridor de puerta de garaje WiFi Arduino

¿Nunca en la lluvia para encontrar la puerta cerrada y las llaves en otro lugar? ¿No? Suerte que luego! Para aquellos que han tenido esta experiencia o no desea nunca, este proyecto le permitirá abrir su puerta de garaje con nay pero un smartphone/ta
Abridor de puerta de garaje de Arduino RFID

Abridor de puerta de garaje de Arduino RFID

En este proyecto, utilizaremos el poder de la RFID en su sistema de abertura de la puerta de garaje. Vamos al puente, una conexión en la apertura de interruptor a través de una placa de relé RobotGeek, iniciando la puerta como si hubiera pulsado el b
Cómo instalar un abridor de puerta de garaje en un tablero

Cómo instalar un abridor de puerta de garaje en un tablero

Tuve un problema... Contamos con un abridor de puerta de garaje de artesano y dos mandos. El problema es que los mandos mantienen perderse porque no tenían clips sobre ellos. Coche de mi esposa no disponen de un botón de la puerta del garaje, así que
Abridor de puerta de garaje de coche del espía :)

Abridor de puerta de garaje de coche del espía :)

No pude encontrar un buen lugar para mantener el abrelatas de la puerta de mi garaje. Las viseras del sol en mi coche eran más gruesas que la pinza en el primer partido, así que me quitó la mordaza y trató varios puntos para evitar que el abridor. Se
Abridor de puerta de garaje de frambuesa Pi

Abridor de puerta de garaje de frambuesa Pi

Hola a todos!Este instructable explica cómo configurar un Raspberry Pi para abrir mi puerta de garaje con un smarthphone. Mientras que esto se ha hecho antes, que pensé que sería publicar mi solución. Este fue mi primer proyecto hardware y instructab
Abridor de puerta de garaje de Arduino DIY-huella digital

Abridor de puerta de garaje de Arduino DIY-huella digital

comentario o mensaje si usted tiene preguntas, este es mi primer instructable y im no todavía ha terminado con el proyecto, pero sí tiene trabajo. más fotos prontoPaso 1: Cómo funcionaCómo funciona el proyecto.1. los cables del botón de garaje montad
Cámara y abridor de puerta de garaje

Cámara y abridor de puerta de garaje

Mi proyecto utiliza Arduino Mega 2560, sensor de evitación de la colisión de distancia, sensor de distancia de eco, relé, RTC reloj y conexión por cable para el abrelatas de la puerta de garaje. Puedo controlar el estado de la puerta del garaje, ver
FJR1300 Integrado abridor de puerta de garaje de Genie GM3T-BX

FJR1300 Integrado abridor de puerta de garaje de Genie GM3T-BX

En este instructable voy a mostrarle cómo poner este abrelatas de la puerta de garaje en la cubierta del carenado de la fjr donde iría el nob de control climatizada. Elegí este panel ya es sacrificio. Pero si quieres ponerlo en otro lugar, esto deber
Abridor de puerta de garaje de Bluetooth y el arrancador del coche

Abridor de puerta de garaje de Bluetooth y el arrancador del coche

Si eres como yo, casi siempre llevar tu teléfono o están con frecuencia en una computadora. A menudo encuentro más conveniente cuando yo puedo interactuar con las cosas a mi alrededor como puertas de garaje, arrancador del coche, aspersores, mantas e
Android abridor de puerta de garaje - No Andriod para programación, No requiere de soldadura.

Android abridor de puerta de garaje - No Andriod para programación, No requiere de soldadura.

Actualización: ahora puede crear su propio menú personalizado para abrir la puerta y conectar relés de encendido y apagado con pfodDesigner . El pfodDesigner libre generará todo el código para usted y pfodApp mostrará el menú colorido en tu móvil. Ve