Új hozzászólás Aktív témák

  • gyapo11

    őstag

    válasz Neoka #2470 üzenetére

    A lényeg ez:
    #include <DS3231.h>
    #include <Wire.h>

    void setup() {Serial.begin(115200);}

    void ReadDS3231()
    {
    int minute,hour;
    minute=Clock.getMinute();
    hour=Clock.getHour(h12, PM);
    Serial.print(hour,DEC);
    Serial.print(':');
    Serial.print(minute,DEC);
    }
    void loop() {ReadDS3231();delay(1000);

    Ez a 3231-es óramodullal működik. Van egy függvény, a ReadDS3231, ami beolvassa a percet és az órát, a két változó értékét lehet fölhasználni az időablak kijelölésére, amikor a relé be vagy kikapcsolt állapotban legyen.
    Valahogy így (22 óra 10 perctől 23 óra 20 percig legyen bekapcsolva):
    if(hour==22 && minute==10) {digitalWrite(rele, HiGH);}
    if(hour==23 && minute==20) {digitalWrite(rele, LOW);}
    Ha másodpercenként olvasod ki az időt, akkor 59-szer fogja bekapcsolni, és 59-szer kikapcsolni abban az egy percben, amikor a feltétel igaz, de ez nem gond. Minden más időpontban egyik feltétel sem igaz, tehát nem történik semmi, a relé marad abban az állapotban, amiben éppen van.
    A teljes példaprogramot itt találod.

    menyország -> mennyország, akadáj -> akadály, jótálás -> jótállás, Iphoneal > Iphone-nal, kisuly > kisujj, csővet > csövet

Új hozzászólás Aktív témák