Presnost DS3231 v čase

AstroMiK
Příspěvky: 592
Registrován: 08 pro 2017, 19:05
Reputation: 0

Re: Presnost DS3231 v čase

Příspěvek od AstroMiK » 18 led 2022, 20:10

Ten problém se zastavením hodin při vypnutém napájení by mohl být způsobený nějakým nechtěným nastavením bitu 7 v Control registru (0x0E)
datasheet.gif

Jindra
Příspěvky: 19
Registrován: 28 čer 2020, 22:24
Reputation: 0

Re: Presnost DS3231 v čase

Příspěvek od Jindra » 18 led 2022, 20:20

AstroMiK Zatím jsem do hodin nic posílal koukám že v datascheetu je napsáno0Eh a ty píšeš (0x0E) mám to mu rozumět že 0Eh znamená adresa
hexadecimálně ?

SkullKeep kam prosím zadáváš hodnoty ?

verze 2:

Kód: Vybrat vše

Wire.beginTransmission(0x68);
Wire.write(0x01);
Wire.write(0000001);
Wire.endTransmission(); // stop transmitting
Naposledy upravil(a) Jindra dne 18 led 2022, 20:41, celkem upraveno 1 x.

AstroMiK
Příspěvky: 592
Registrován: 08 pro 2017, 19:05
Reputation: 0

Re: Presnost DS3231 v čase

Příspěvek od AstroMiK » 18 led 2022, 20:31

Ano. 0x0E je hexadecimální zápis, který se používá v Arduinu.

Pozor na ten tvůj zápis čísla 0000001.
Pro jednu minutu to náhodou udělá přesně to, co očekáváš.
Pro jiná čísla to může skončit nečekanými výsledky.
Když zapisuješ číslo, které začíná nulou, rozumí tomu překladač jako by bylo číslo zadáno v osmičkové soustavě.

Ke studiu formátů doporučuji tuto stránku:
https://www.arduino.cc/reference/en/lan ... constants/


SkullKeep ti tam dal kód funkce pro nastavení datumu a času.
Takže ji stačí spustit se správnými parametry.
Například:

Kód: Vybrat vše

setDS3231time(0, 30, 20, 2, 18, 1, 2022);

Jindra
Příspěvky: 19
Registrován: 28 čer 2020, 22:24
Reputation: 0

Re: Presnost DS3231 v čase

Příspěvek od Jindra » 18 led 2022, 20:41

Díky právě jsem na to přišel, že to při 00000011 udělá 9 ale cítím že jsem blízko - prostuduji formáty

edit: oprvil jsem na 0b00000001

edit2: Díky MOC všem už to maká jak má :-)

Uživatelský avatar
Caster
Příspěvky: 380
Registrován: 11 zář 2019, 09:02
Reputation: 0

Re: Presnost DS3231 v čase

Příspěvek od Caster » 18 led 2022, 23:56

Pokud by jsi chtěl atomovou přesnost ;) , lze použít přijímač časového signálu DCF77, který se dal koupit v Conradu. Knihovna pro Arduino je zde.

Viz také Přesný čas z Německa DCF1 a Radio Controlled Clock.

cz_marek
Příspěvky: 104
Registrován: 31 led 2018, 09:01
Reputation: 0

Re: Presnost DS3231 v čase

Příspěvek od cz_marek » 19 led 2022, 19:14

Ahoj,
po 14 dnesch jsem udelal kontrolu modulu - o kolik se rozešel realny cas s tim co je v RTC modulu a tady jsou výsledky:

Hadex moduly:
2s
1s

Aliexpres moduly:
6s
3s
0s
4s
jeden se smazal - nevim jestli KO baterka - znovu jsem nastavil cas

Udelam kontrolu jeste po mesici nebo delsim case. Zatim mi z toho plyne ze ALI modul nemusi byt smejd ale chce to koupit dvojnasobek kolik potrebuji udelat testy a pak si vybrat.

AstroMiK
Příspěvky: 592
Registrován: 08 pro 2017, 19:05
Reputation: 0

Re: Presnost DS3231 v čase

Příspěvek od AstroMiK » 19 led 2022, 21:51

3.1.2022 jsem tu hlásil, že:
Naposledy jsem seřizoval hodiny při změně času 28.11.2021 (67dní) a od té doby se mi zpozdilo RTC o 9 sekund.

Při dnešním porovnání (19.1.2022) se rozchází proti DCF hodinám už jenom o 8 sekund.

Takže se chvíli zpožďují a chvíli zase předchází. Pro mě to je ale dostatečná přesnost.

RTC byl kupovaný někde od číňanů.
19_01_2022.jpg

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 4 hosti