Hello,
I am totally new to this and could not find exact results for my question.
I have bought an Arduino UNO and this data logger shield:
UPDATE: I wrongly thought it functions exactly as the WeMos D1 Mini board which is an MCU like Arduino UNO:
See answer below from docdoc.
And connected it (written in red on the screenshot)
It has the DS1307 chip, it can log data to SD card and it can be used as RTC clock.
Now I don't know what to do next to get it to running.
I tried it with an example program from DS1307RTC (ReadTest
) but the logging messages stop when running the loop()
in the serial console:
#include <Wire.h>
#include <TimeLib.h>
#include <DS1307RTC.h>
void setup() {
Serial.begin(9600);
while (!Serial) ; // wait for serial
delay(200);
Serial.println("DS1307RTC Read Test");
Serial.println("-------------------");
}
void loop() {
tmElements_t tm;
if (RTC.read(tm)) {
Serial.print("Ok, Time = ");
print2digits(tm.Hour);
Serial.write(':');
print2digits(tm.Minute);
Serial.write(':');
print2digits(tm.Second);
Serial.print(", Date (D/M/Y) = ");
Serial.print(tm.Day);
Serial.write('/');
Serial.print(tm.Month);
Serial.write('/');
Serial.print(tmYearToCalendar(tm.Year));
Serial.println();
} else {
if (RTC.chipPresent()) {
Serial.println("The DS1307 is stopped. Please run the SetTime");
Serial.println("example to initialize the time and begin running.");
Serial.println();
} else {
Serial.println("DS1307 read error! Please check the circuitry.");
Serial.println();
}
delay(9000);
}
delay(1000);
}
void print2digits(int number) {
if (number >= 0 && number < 10) {
Serial.write('0');
}
Serial.print(number);
}
Is there any good tutorial that I could follow? I just find it for slightly different setups...
Here is the screenshot that shows that the program stops running after the first logging output: