Några funderingar om RTC?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Några funderingar om RTC?

Inlägg av Al_Bundy »

Hej!

Jag har programmerat 4 stycken 7-segment och en RTC.
RTC:n har en livstid på 1 år och då har jag några frågor.

1.
När jag bränner över en sketch. Följer datum och tid då med från datorn till mikrokontrollern?
Här är en kod jag har skrivit

Kod: Markera allt

RTC.adjust(DateTime(__DATE__, __TIME__)); // Start it
Om RTC:n inte är aktivierad så körs denna kod. Är då __DATE_ och __TIME_ från min dator?

2.
Om jag drar ut batteriet och drar bort min nätaddapter som tillför ström/spänning till min mikroprocessor.
Sparas då tiden och datumet i min RTC? Så nästa gång jag startar upp systemet så återgår den till senaste datum och tid som dem kom ihåg?

3.
Finns det något sätt som jag kan ställa in tiden manuellt via

Kod: Markera allt

RTC.adjust(DateTime(__DATE__, __TIME__)); // Start it
?

Jag har kollat dokumentet keywords.txt men det står inget hur man ställer in tiden manuellt.
Det är bara tiden jag har fokus på.

Jag har använt mig av RTClib
https://github.com/adafruit/RTClib
Användarvisningsbild
Icecap
Inlägg: 26647
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Några funderingar om RTC?

Inlägg av Icecap »

1: Bra fråga, kolla dokumentationen. Eller förväntar du att vi andra ska göra det för dig? Men skulle det vara så är det ju totalt likgiltigt att ha en RTC, den börja då alltid med det datum/tid där programmet komplierades så varför bry sig?

2: Nej.

3: Javisst! Det är bara att du sparar dagens datum i rätt format i en variabel som du skriver in som __DATE__ och det samma fast med tiden som __TIME__. Alltså helt enkelt som med alla andra funktioner.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Några funderingar om RTC?

Inlägg av Al_Bundy »

Jag hittar ingen dokumentation. Okej. Då vet jag att RTC börjar räkna från den tiden koden brändes dit.

Nähä?
Hur kommer det sig att tiden sparas för mig om jag tar bort batteriet och tar bort strömtillförseln till processorn?
Tiden hamnar dock efter. Men på något sätt sparas den.

Okej.
Jag ska genast söka i koden om vad som ska stå där.
Jag har försökt men har inte direkt suttit mig in i koden riktigt.
Användarvisningsbild
Icecap
Inlägg: 26647
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Några funderingar om RTC?

Inlägg av Icecap »

RTC-kretsen hinner knappast bli helt spänningslös, de är oftast byggt för att vara riktigt strömsnåla så att ta bort batteri och driftspänning en stund räcker bara till att få klockan att stanna medan registerna står kvar. Gör det över natten och se på resultatet.

Att initiera RTC'n med att sätta datum och tid till ett inbränd värde är nog bland det dummaste jag har upplevd - men jag är inte förvånat heller...
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Några funderingar om RTC?

Inlägg av Al_Bundy »

Okej! Det ska jag testa.

Va?
Vad menar du?
Mr Andersson
Inlägg: 1409
Blev medlem: 29 januari 2011, 21:06:30
Ort: Lapplandet

Re: Några funderingar om RTC?

Inlägg av Mr Andersson »

Al_Bundy skrev:Om RTC:n inte är aktivierad så körs denna kod. Är då __DATE_ och __TIME_ från min dator?
__DATE__ och __TIME__ sätts av preprocessorn, så det är vad klockan på din dator var vid kompilering.
https://gcc.gnu.org/onlinedocs/cpp/Stan ... acros.html
LarryXz
Inlägg: 669
Blev medlem: 13 mars 2013, 20:31:08
Ort: Norra Uppland

Re: Några funderingar om RTC?

Inlägg av LarryXz »

Al_Bundy skrev:3.
Finns det något sätt som jag kan ställa in tiden manuellt via

Kod: Markera allt

RTC.adjust(DateTime(__DATE__, __TIME__)); // Start it
?
Vadå manuellt?
Med RTC.adjust() kan du ju ställa in tiden som du vill.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Några funderingar om RTC?

Inlägg av Al_Bundy »

Jag insåg nu att __DATE__ kan ersättas med "Dec 14 1970" och __TIME__ kan ersättas med "23:04:30" :)
Jag trodde först han den skulle ha hex eller något annat tjaffs.

Jag kommer dock bara sätta __DATE__ till ett en konstant värde sträng då jag är bara beroende av __TIME__ som jag ska uttrycka som "hh:mm:00".

Det är en hönsbursöppnare jag håller på att bygga :)
Miramithe
Inlägg: 1423
Blev medlem: 21 januari 2013, 17:45:10
Ort: Borlänge

Re: Några funderingar om RTC?

Inlägg av Miramithe »

Och kom ihåg att när det är djur med i bilden måste man bygga in så att ingen kan fasta eller klämma sig i de automatiska delarna.
Användarvisningsbild
Al_Bundy
Inlägg: 2889
Blev medlem: 11 september 2012, 23:59:50
Ort: The U.S - Chicago
Kontakt:

Re: Några funderingar om RTC?

Inlägg av Al_Bundy »

Det är inte badass maskin om du tror det. Men jag ska lägga det på minnet ja :)
Skriv svar