Herramientas de usuario

Herramientas del sitio


documentacion-proceso:tecnologicos:rtc

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
documentacion-proceso:tecnologicos:rtc [2016/01/27 16:35] brolindocumentacion-proceso:tecnologicos:rtc [Fecha desconocida] (actual) – borrado - editor externo (Fecha desconocida) 127.0.0.1
Línea 1: Línea 1:
-{{:documentacion-proceso:tecnologicos:huerta.jpg?400 |}}{{:documentacion-proceso:tecnologicos:control_riego.jpg?400 |}} 
- 
- 
-https://github.com/esp8266/Arduino#arduino-core-for-esp8266-wifi-chip   
- 
-core for arduino sp8266 
- 
-====== Circuito con RTC para Arduino ====== 
- 
-Antes de empezar: 
- 
-** Comunicación I2C y SPI ** 
- 
-** I2C ** 
- 
-I2C (Inter-integrated Circuit) es un bus de comunicaciones serie síncrona muy utilizado en la industria para la comunicación entre controladores y sus periféricos en sistemas integrados. 
- 
-** Consideraciones ** 
-  * Necesitan resistencias pull-up, ya que los dispositivos sólo pueden forzar al bus a ponerse a '0'. 
-  * la línea de tierra debe ser común a todos los dispositivos (estar unida). 
-  * Es bidireccinal half-Duplex y sigue el modelo maestro-esclavo. 
- 
-{{:documentacion-proceso:tecnologicos:captura_de_pantalla_2016-01-19_a_las_11.41.17.png?600|}} 
- 
- 
-Solo utiliza dos líneas para transmitir datos (SDA) y la señal de reloj (SCL) 
- 
-//Los dispositivos de un bus I2C tienen una dirección única para cada uno, y que pueden clasificarse como maestros o como esclavos.// 
- 
-  - El ** maestro  es el que inicia la transferencia de datos y genera la señal de reloj ** 
-  - El ** esclavo **espera a que un maestro se comunique con el para generar la transferencia. 
- 
-** SPI ** 
- 
-SPI(Serial Peripherial Interface) es un bus de comunicaciones serie síncrona usado para la transferencia serie síncrona usado para la transferencia de información entre circuitos integrados en equipos electrónicos. 
- 
-** Consideraciones ** 
- 
-  - Utiliza 3 líneas para transmitir (SDO), recibir (SDI) y para generar la señal de reloj (SCK). 
-  - la señal de reloj la genera uno de los dispositivos (el que actúa de maestro). 
-  - la linea de tierra debe ser común a todos los dispositivos (estar unida) 
-  - Permite comunicación Full-Duplex y utiliza el modelo maestro-esclavo. 
-  - Los dispositivos no tienen direcciones -> se utiliza una línea de control (CS -> Chip Select) para cada circuito integrado que tenga que ser controlado. 
-  - La transferencia no se inicia con todos sino con un dispositivo concreto activando (por nivel bajo) su correspondiente línea SS. 
- 
-{{:documentacion-proceso:tecnologicos:captura_de_pantalla_2016-01-19_a_las_11.59.48.png?300|}} 
- 
- 
- 
- 
- 
-===== Esquema básico del circuito. ===== 
- 
- 
-{{:documentacion-proceso:tecnologicos:ds1307-real-time-clock-rtc-circuit.png?600|}} 
- 
-RTC o Reloj en Tiempo Real – Es un circuito electrónico especializado cuya función es mantener la hora y fecha actual en un sistema informático (ya sea con microcontrolador u otro tipo de CPU). Se caracteríza por tener un bajo consumo de energía y también normalmente su propia fuente de alimentación auxiliar. Normalmente al recurrir a este tipo de circuitos integrados obtenemos una mejor precisión del tiempo. Un ejemplo de dispositivos que incluyen relojes en tiempo real son las computadoras personales (PC). 
- 
-===== Circuito ===== 
-  
- 
-{{:documentacion-proceso:tecnologicos:foto_el_14-1-16_a_las_17.48.jpg?600|}} 
- 
-===== Codigo actualizado ===== 
- 
- 
-#include "RTClib.h" 
-#include <Wire.h> 
- 
-RTC_DS1307 RTC; 
- 
-void setup() 
-{ 
-  Serial.begin(57600); 
-  Wire.begin(); 
-  RTC.begin(); 
-  pinMode(13, OUTPUT); 
-  if(!RTC.isrunning()) 
-  { 
-   // Serial.println("RTC is not runnig"); 
-    RTC.adjust(DateTime(__DATE__, __TIME__)); 
-  } 
-  
-} 
- 
-void loop() 
-{ 
-  DateTime now = RTC.now(); 
-  /* 
-  Serial.print(now.year(), DEC); 
-  Serial.print('/'); 
-  Serial.print(now.month(), DEC); 
-  Serial.print('/'); 
-  Serial.print(now.day(), DEC); 
-  Serial.print(' '); 
-  Serial.print(' '); 
-  Serial.print(now.hour(), DEC); 
-  Serial.print(':'); 
- 
- 
-  Serial.print(now.minute(), DEC); 
-  Serial.print(':'); 
-  Serial.print(now.second(), DEC); 
-  Serial.println(); 
-  */ 
- 
-if (now.hour() == 19) 
-{ 
-  if(now.minute() == 30) 
-  { 
-    digitalWrite(13, HIGH); 
-  } 
-  if(now.minute() == 35) 
-  { 
-    digitalWrite(13, LOW); 
-    delay(1000); 
-  } 
-} 
-  delay(1000); 
-} 
- 
  
documentacion-proceso/tecnologicos/rtc.1453912557.txt.gz · Última modificación: 2016/01/27 16:35 por brolin