DS3231
3 berichten
• Pagina 1 van 1
DS3231
Beste, Ik heb het programma geschreven voor de DS3231 module. Deze gegevens komen dan binnen. Alleen vraag ik mij af hoe ik een led laat branden tussen 13 en 16 uur? Het programma vind u hieronder. Kan er iemand soms mijn programma dan aanpassen en terugsturen of mij zeggen hoe ik het moet doen? Alvast bedankt.
#include <RTClib.h>
#include <Wire.h>
RTC_DS3231 rtc;
char t[32];
int led = 13;
void setup()
{
Serial.begin(9600);
Wire.begin();
rtc.begin();
rtc.adjust(DateTime(F(__DATE__),F(__TIME__)));
//rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0));
pinMode(led, OUTPUT);
}
void loop()
{
DateTime now = rtc.now();
sprintf(t, "%02d:%02d:%02d %02d/%02d/%02d", now.hour(), now.minute(), now.second(), now.day(), now.month(), now.year());
Serial.print(F("Date/Time: "));
Serial.println(t);
delay(1000);
}
#include <RTClib.h>
#include <Wire.h>
RTC_DS3231 rtc;
char t[32];
int led = 13;
void setup()
{
Serial.begin(9600);
Wire.begin();
rtc.begin();
rtc.adjust(DateTime(F(__DATE__),F(__TIME__)));
//rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0));
pinMode(led, OUTPUT);
}
void loop()
{
DateTime now = rtc.now();
sprintf(t, "%02d:%02d:%02d %02d/%02d/%02d", now.hour(), now.minute(), now.second(), now.day(), now.month(), now.year());
Serial.print(F("Date/Time: "));
Serial.println(t);
delay(1000);
}
Advertisement
Re: DS3231
Je zou kunnen kijken of de uren 13, 14 of 15 zijn.
cpp code
Dan wordt de pin van de led gezet, bij iedere keer dat de loop() wordt doorlopen. Dat is duizenden keren per seconde. Dat geeft niet, maar het kan beter.
Er is een https://www.pjrc.com/teensy/td_libs_TimeAlarms.html library die werkt samen met de https://www.pjrc.com/teensy/td_libs_Time.html library. Dat is dus een andere dan de Adafruit RTClib die je nu hebt.
Op internet zie ik dat de Adafruit RTClib soms samen met de TimeLib wordt gebruikt om zo de TimeAlarms library te kunnen gebruiken. Dan wordt het een rommeltje, dus dat zou ik niet doen.
cpp code
void loop()
{
DateTime now = rtc.now();
int uren = now.hour();
if(uren >= 13 && uren < 16)
{
digitalWrite( ledPin, HIGH);
}
else
{
digitalWrite( ledPin, LOW);
}
Dan wordt de pin van de led gezet, bij iedere keer dat de loop() wordt doorlopen. Dat is duizenden keren per seconde. Dat geeft niet, maar het kan beter.
Er is een https://www.pjrc.com/teensy/td_libs_TimeAlarms.html library die werkt samen met de https://www.pjrc.com/teensy/td_libs_Time.html library. Dat is dus een andere dan de Adafruit RTClib die je nu hebt.
Op internet zie ik dat de Adafruit RTClib soms samen met de TimeLib wordt gebruikt om zo de TimeAlarms library te kunnen gebruiken. Dan wordt het een rommeltje, dus dat zou ik niet doen.
3 berichten
• Pagina 1 van 1
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 22 gasten