Página principal
Arduino
RELOJ DS1307
BMP280 - AHT20 - DS1307 - OLED
SDD1306 - AT24C32
Otro
montaje de relojes, esta vez montado con un DS1307.
En esta ocasión utilizo el sensor de presión BMP280, junto con
el sensor de temperatura y humedad AHT20.
Además utilizo la memoria AT24C32 para registrar los valores diarios de
temperatura, humedad, presión.
Se toman 4 valores por hora, en los minutos, 0, 15, 30, 45.
Con la memoria que tiene la EEPROM 24C32 , se podría
almacenar 10 días, pero eso lo dejo para el que lo quiera
hacer.
La toma de los diferentes sensores se toma cada 5 segundos, y
esta se representa en la pantalla OLED y se transmite al
terminal.
Para visualizar los valores diarios almacenados en la memoria,
se debe escribir en el terminal serie la orden "print".
Para modificar la hora y la fecha, he añadido dos botones, con
uno seleccionas el valor que quieres cambiar, y con el otro
incrementas el valor.
He tenido algún problema con el BMP280, se bloqueaba
aleatoriamente sin motivo. Para arreglar esto, he reducido la
velocidad del reloj del bus I2C y he colocado un condensador (100uF
5V) en la alimentación.

Los pines del dibujo del BMP280 no corresponden a los pines
reales, mirar en vuestro caso cuales son.


Respuesta de la placa cuando mandas la orden "print"
Programa
Librería
Espero que os haya gustado este pequeño circuito.
Saludos.
Juan Galaz
Bibliografía:
https://github.com/adafruit/RTClib
https://naylampmechatronics.com/blog/52_tutorial-rtc-ds1307-y-eeprom-at24c.html