Obsah:

Nastavení DS3231 RTC (hodiny v reálném čase) přesně, rychle a automatizovaně pomocí Javy (+-1 s): 3 kroky
Nastavení DS3231 RTC (hodiny v reálném čase) přesně, rychle a automatizovaně pomocí Javy (+-1 s): 3 kroky

Video: Nastavení DS3231 RTC (hodiny v reálném čase) přesně, rychle a automatizovaně pomocí Javy (+-1 s): 3 kroky

Video: Nastavení DS3231 RTC (hodiny v reálném čase) přesně, rychle a automatizovaně pomocí Javy (+-1 s): 3 kroky
Video: Tutorial: How to use DS3231 RTC module | Arduino 2024, Červenec
Anonim
Nastavení DS3231 RTC (hodiny v reálném čase) přesně, rychle a automatizovaně pomocí Javy (+-1 s)
Nastavení DS3231 RTC (hodiny v reálném čase) přesně, rychle a automatizovaně pomocí Javy (+-1 s)

Tento Instructable vám ukáže, jak nastavit čas na hodinách reálného času DS3231 pomocí Arduina a malé aplikace Java, která používá sériové připojení Arduina.

Základní logika tohoto programu:

1. Arduino odešle sériový požadavek.

2. Program Java vypadá, jaký den/měsíc/… arduino požadoval a odeslal relevantní data zpět.

3. Poté, co jsou shromážděny všechny potřebné informace, arduino uloží data do DS3231.

Modul RTC DS3231

Modul DS3231 RTC je relativně levný modul RTC s vysokou přesností. (několik minut ročně)

Existují různé odrůdy, jejichž základní funkce je stejná pouze s malými rozdíly.

Podrobné srovnání najdete zde: Porovnání DS323x | maximintegrated.com

Koupit DS3231: DS3231 | ebay.com

Datasheet: DS3231 Datasheet | maximintegrated.com

Datový list: DS1307 Datový list | maximintegrated.com

Potřebné díly

1x Arduino (Nano, Uno, MEGA atd.)

4x propojovací vodiče

1x modul DS3231 (modul DS1307)

Krok 1: Zapojení

Elektrické vedení
Elektrické vedení

Připojte DS3231, jak je znázorněno na obrázku výše. Samozřejmě to můžete udělat bez použití prkénka, ale bude to trochu chaotičtější. Pro demonstraci jsem použil Arduino Nano, ale Uno nebo MEGA by také měly fungovat. (Ostatní mohou také fungovat, ale jsem líný to potvrdit)

  • Arduino -> DS3231
  • A4 -> SCL
  • A5 -> SDA
  • 5V -> VCC
  • GND -> GND

Krok 2: Kód Arduino

Kód Arduino
Kód Arduino

Stáhněte soubor.ino zespodu a nahrajte jej do svého Arduina (v mém případě Nano).

Ke správné funkci náčrtu jsou nainstalovány následující knihovny:

github.com/PaulStoffregen/Time

github.com/JChristensen/DS3232RTC

Návod, jak nahrát kód do arduina, najdete zde (arduino.cc).

V Arduino IDE ověřte, zda byl kód odeslán správně. (Nahrávání dokončeno)

Vaše Arduino je nyní připraveno přijímat informace o čase

Stáhněte si kód zde: DS3231TimeSync.zip (mediafire.com)

Stáhněte si zdroj zde: DS3231TimeSyncSRC.zip (mediafire.com)

Úložiště GitHub: DS3213 RTC Time Sync (github.com)

Úložiště bitbucket: DS3231 RTC Time Sync (bitbucket.com)

Krok 3: Aplikace Java

Aplikace Java
Aplikace Java

1. Poklepáním na něj spusťte dříve stažený „DS3231Sync.jar“

2. Otevře se malé dialogové okno s dotazem na port vašeho arduina

Pokud si nejste jisti portem, který používá vaše arduino, podívejte se do Arduino IDE vpravo dole.

(Viz obrázky výše)

3. Otevře se další dialog a požádá vás o posun časového pásma

Offset je relativní k místnímu času vašeho počítače. Chcete -li nastavit RTC na místní čas, zadejte +00: 00.

Je důležité, abyste zadali posun časového pásma v určitém formátu!

Obecný formát je +hh: mm nebo -hh: mm. Vždy uvádějte úvodní nuly!

(Např.: -03: 00; -06: 00; +09: 00; +02: 30)

4. Aplikace Java spustí malé okno s výstupem z konzoly

Dávejte pozor na potvrzovací zprávy jako: „Čas nastaven skončil“

Když proces nastavování času skončí, kód vytiskne aktuální čas na DS3231 každých 5 sekund. Můžete potvrdit, že je čas nastaven správně.

Pokud po ~ 20 s nedosáhnete žádného výstupu, stiskněte resetovací tlačítko na arduinu a počkejte znovu.

Pokud stále nefunguje, ověřte skicu na Arduinu a/nebo ji nahrajte znovu. (Důležité: Před nahráním do Arduina zavřete Port v aplikaci Java; Jinak zablokuje sériový port!) Poté resetujte připojení v programu Java.

(Program Java používá k získání aktuálního data LocalDateTime.)

Čas je nyní nastaven. Bavte se

Pokud máte nějaké neřešitelné problémy s nastavením času, napište prosím níže a sdílejte se mnou svůj soubor log.txt (ve stejné složce jako jar). Díky moc!