RTC ds3231

Arduino shields
Berichten: 18
Geregistreerd: 07 Jul 2013, 19:04

RTC ds3231

Berichtdoor williamdv » 21 Mei 2016, 12:37

heb deze rtc aan mn mega 2560.
hier onder staat mn sketch loopt keurig ook in de seriele monitor
maar alleen hij onthoud niet waar hij gebleven met de tijd als ik de spanning eraf haal
wat mis ik??

https://codebender.cc/sketch:312560
cpp code
// DS3231_Serial_Easy
// Copyright (C)2015 Rinky-Dink Electronics, Henning Karlsen. All right reserved
// web: http://www.RinkyDinkElectronics.com/


#include <DS3231.h>
#define BUFF_MAX 256

// Init the DS3231 using the hardware interface
DS3231 rtc(SDA, SCL);

void setup()
{
// Setup Serial connection
Serial.begin(9600);
// Uncomment the next line if you are using an Arduino Leonardo
//while (!Serial) {}

// Initialize the rtc object
rtc.begin();

// The following lines can be uncommented to set the date and time
rtc.setDOW(SATURDAY); // Set Day-of-Week to SUNDAY
rtc.setTime(12, 20, 30); // Set the time to 12:00:00 (24hr format)
rtc.setDate(21, 5, 2016); // Set the date to January 1st, 2014
}

void loop()
{
// Send Day-of-Week
Serial.print(rtc.getDOWStr());
Serial.print(" ");

// Send date
Serial.print(rtc.getDateStr());
Serial.print(" -- ");

// Send time
Serial.println(rtc.getTimeStr());

// Wait one second before repeating :)
delay (1000);

// Send current temperature
Serial.print("Temperature: ");
Serial.print(rtc.getTemp());
Serial.println(" C");
delay (1000);
}

Advertisement

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: RTC ds3231

Berichtdoor nicoverduin » 21 Mei 2016, 14:06

Of hij onthoudt kun je nog niet bepalen. In de setup start je elke keer de klok met 21-5-2016 12:20:30.
Dus bij de 2e keer opstarten moet je die 3 regels als commentaar zetten. Lees de regel erboven....
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 18
Geregistreerd: 07 Jul 2013, 19:04

Re: RTC ds3231

Berichtdoor williamdv » 21 Mei 2016, 14:39

nicoverduin schreef:Of hij onthoudt kun je nog niet bepalen. In de setup start je elke keer de klok met 21-5-2016 12:20:30.
Dus bij de 2e keer opstarten moet je die 3 regels als commentaar zetten. Lees de regel erboven....



dat gaan we proberen @nicoverduin. thanks

Berichten: 18
Geregistreerd: 07 Jul 2013, 19:04

Re: RTC ds3231

Berichtdoor williamdv » 21 Mei 2016, 14:45

nicoverduin schreef:Of hij onthoudt kun je nog niet bepalen. In de setup start je elke keer de klok met 21-5-2016 12:20:30.
Dus bij de 2e keer opstarten moet je die 3 regels als commentaar zetten. Lees de regel erboven....


ik heb gewoon 25,26,27 gekopieerd en er onder geplakt maar dan voor iedere regel // gezet.
dan benk de temperatuur kwijt??

maar je moet toch in een sketch een regel zetten dat hij de tijd e.d. vast houd mocht de spanning er af vallen.

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: RTC ds3231

Berichtdoor nicoverduin » 21 Mei 2016, 17:13

ver welke source heb je het nu? Als ik in de listing boven kijk, dan klopt het niet wat je zegt lijkt mij. De temperatuur heeft niets te maken met het zetten van de tijd en datum. Een keer zet je de klok en daarna niet meer. Dus als jij de temperatuur kwijt bent, ben ik toch wel heel benieuwd naar jouw laatste versie van de source code.
Als het goed is heeft jouw module een batterij of een aansluiting met een batterij. die houdt de spanning erop als de spanning wegvalt. Sommige van dit soort modules hebben ook nog eens wat extra geheugen adressen die je kan vullen. Geen idee hoe dat werkt maar kun je zo uitvogelen door eens te "Googelen". Die modules zijn er al vele jaren dus iemand anders is je allang voor geweest met deze vraag. Dus ff goed je best doen.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 18
Geregistreerd: 07 Jul 2013, 19:04

Re: RTC ds3231

Berichtdoor williamdv » 21 Mei 2016, 18:39

nicoverduin schreef:ver welke source heb je het nu? Als ik in de listing boven kijk, dan klopt het niet wat je zegt lijkt mij. De temperatuur heeft niets te maken met het zetten van de tijd en datum. Een keer zet je de klok en daarna niet meer. Dus als jij de temperatuur kwijt bent, ben ik toch wel heel benieuwd naar jouw laatste versie van de source code.
Als het goed is heeft jouw module een batterij of een aansluiting met een batterij. die houdt de spanning erop als de spanning wegvalt. Sommige van dit soort modules hebben ook nog eens wat extra geheugen adressen die je kan vullen. Geen idee hoe dat werkt maar kun je zo uitvogelen door eens te "Googelen". Die modules zijn er al vele jaren dus iemand anders is je allang voor geweest met deze vraag. Dus ff goed je best doen.


ik had dit dus gedaan de regels van RTC.setDOW/ rtc.setTime/ rtc.setDate gekopieerd en weer geplakt met de schuine streep der voor

maar idd zal eens gaan zoeken naar geheugen van de ds3231 hoe dat zit met onhouden
cpp code
// DS3231_Serial_Easy
// Copyright (C)2015 Rinky-Dink Electronics, Henning Karlsen. All right reserved
// web: http://www.RinkyDinkElectronics.com/


#include <DS3231.h>

#define BUFF_MAX 256
uint8_t time[8];
char recv[BUFF_MAX];


// Init the DS3231 using the hardware interface
DS3231 rtc(SDA, SCL);

void setup()
{
// Setup Serial connection
Serial.begin(9600);
// Uncomment the next line if you are using an Arduino Leonardo
//while (!Serial) {}

// Initialize the rtc object
rtc.begin();

// The following lines can be uncommented to set the date and time
rtc.setDOW(6); // Set Day-of-Week to SUNDAY
rtc.setTime(12, 44, 30); // Set the time to 12:00:00 (24hr format)
rtc.setDate(21, 5, 2016); // Set the date to January 1st, 2014

//rtc.setDOW(6); // Set Day-of-Week to SUNDAY
//rtc.setTime(12, 44, 30); // Set the time to 12:00:00 (24hr format)
//rtc.setDate(21, 5, 2016); // Set the date to January 1st, 2014

}

void loop()
{
// Send Day-of-Week
Serial.print(rtc.getDOWStr());
Serial.print(" ");

// Send date
Serial.print(rtc.getDateStr());
Serial.print(" -- ");

// Send time
Serial.println(rtc.getTimeStr());

// Wait one second before repeating :)
delay (1000);

// Send current temperature
Serial.print("Temperature: ");
Serial.print(rtc.getTemp());
Serial.println(" C");
delay (1000);
}

Berichten: 4064
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: RTC ds3231

Berichtdoor shooter » 21 Mei 2016, 21:00

oke william even stukje basis.
als je voor een regel // zet wordt deze niet uitgevoerd, zoals ook in de listing die je hebt gekopieerd staan die drie regels als comment erin (kijk maar op de website)
die regels zitten erin als voorbeeld, maar horen er eigenlijk niet in. je zult een functie moeten maken om de tijd gelijk te zetten
dus de 3 regels die erboven staan weghalen kan ook.
de RTC loopt altijd als er een batterijtje inzit (die knoopcel dus)

de tijd loopt dan gewoon door zelfs als je het boardje uitzet.
en als je het bordje weer aanzet zal de tijd doorgelopen zijn.
dus eenmalig zet je de juiste tijd in de RTC(dat is al vaak in de fabriek gedaan trouwens.)

het bewaren van andere gegevens kan ook in de RTC want er zijn nog een paar geheugenplaatsen over.
daar kun je bijv je setpoint in zetten.
paul deelen
shooter@home.nl

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: RTC ds3231

Berichtdoor nicoverduin » 21 Mei 2016, 21:06

Misschien moet William wat meer tijd steken in het doorlopen van tutorials om zijn basiskennis wat uit te breiden.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 18
Geregistreerd: 07 Jul 2013, 19:04

Re: RTC ds3231

Berichtdoor williamdv » 21 Mei 2016, 22:42

nicoverduin schreef:Misschien moet William wat meer tijd steken in het doorlopen van tutorials om zijn basiskennis wat uit te breiden.


dat weet ik @nicoverduin. wil te veel tegelijk zonder me te verdiepen.

ik schaam me daar niet voor, kant maar vragen op een forum toch?
als je niks vraag weet je ook niet, en zo leer ik der wel van

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: RTC ds3231

Berichtdoor nicoverduin » 21 Mei 2016, 23:27

Nou we hebben er meer gehad die liever alleen consumeerden. Alleen is de ondersteuning een beetje opgedroogd.......
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Terug naar Shields

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 8 gasten