O módulo DS3231 nos permitirá manter um registro detalhado do tempo em nosso microcontrolador. Os projetos que podemos realizar com este módulo variam de estações de sensores a alarmes e sondas de registro de dados.
Especificações:
Faixa de temperatura: -40 a +85; Precisão de temporização: ± 5ppm (± 0.432 segundos / dia)
Fornece backup de bateria para temporização contínua
Baixo consumo de energia
Pacote de dispositivo e função compatíveis com DS3231
A função de calendário completo contém segundos e minutos, hora, semana, data, mês e ano e fornece compensação de ano bissexto até 2100.
Dois relógios de calendário
Saída: 1Hz e 32.768kHz
Redefinir saída e entrada Debounce of Pushbutton
Alta velocidade (400kHz), barramento serial I2C
Tensão de alimentação: + 3.3V a + 5.5V
Sensor de temperatura digital com uma precisão de ± 3 ℃
Temperatura de trabalho: -40 ~ C a +85 ~ C
16 pinos Pacote Pequeno Contorno (300mil)
Certificado pela Associação Americana de Underwriters Laboratories (UL)
Tamanho: 30 * 20mm
Peso: 4g
#include
#include “DS3231.h”
DS3231 RTC; // Cria o objeto do DS3231
char weekDay [] [4] = {“Sun”, “Mon”, “Ter”, “Qua”, “Qui”, “Sex”, “Sat”};
// ano, mês, data, hora, min, seg e dia da semana (começa de 0 e vai para 6)
// a gravação de qualquer dado de tempo inexistente pode interferir na operação normal do RTC.
// Cuide do dia da semana também.
DateTime dt (2011, 11, 10, 15, 18, 0, 5) // abre a porta da série e você pode verificar a hora aqui ou fazer uma alteração na hora conforme necessário.
void setup ()
{Serial.begin (57600); // definir a taxa de transmissão para 57600
Wire.begin ();
RTC.begin ();
RTC.adjust (dt); // Ajustar data e hora como definido ‘dt’
DateTime now = RTC.now (); // obtém a data e hora atuais
Serial.print (now.year (), DEC);
Serial.print (‘/’);
Serial.print (now.month (), DEC);
Serial.print (‘/’);
Serial.print (now.date (), DEC);
Serial.print (”);
Serial.print (now.hour (), DEC);
Serial.print (‘:’);
Serial.print (now.minute (), DEC);
Serial.print (‘:’);
Serial.print (now.second (), DEC);
Serial.println ();
Serial.print (weekDay [now.dayOfWeek ()]);
Serial.println ();
atraso (1000);
}