• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Zmiana stanów logicznych oświetlenia
#21
Niestety pomysł Agregacika nie działa (przynajmniej w moim wykonaniu). Przebudowałem funkcję timera i wygląda ona następująco:

byte lampka = 0;

#define t1Pin 3

// Godzina, minuta, sekunda włączenia obwodu 1
int t1HOn, t1MOn, t1SOn;

// Godzina, minuta, sekunda wyłączenia obwodu 1
int t1HOff, t1MOff, t1SOff;

...

//przyciski z bluetooth

        if (wiadomosc == "swit") {
      lampka = 1;         
      wiadomosc = "";
    }

        if (wiadomosc == "zmierzch") {
      lampka = 0;     
      wiadomosc = "";
    }

....

//funkcja timera

boolean timer(int tPin, byte hOn, byte mOn, byte sOn, byte hOff, byte mOff, byte sOff) {

  long czWL = (long(hOn) * 3600) + (long(mOn) * 60) + long(sOn);
  long czWYL = (long(hOff) * 3600) + (long(mOff) * 60) + long(sOff);

 
  if (czWL < czWYL) {
    if (AktualnyCzas >= czWL && AktualnyCzas < czWYL) {
      lampka = 1;
    }
  }

  if (czWL > czWYL) {
    if (AktualnyCzas >= czWL && AktualnyCzas <= 86399) {
      lampka = 1;
    }
    if (AktualnyCzas >= 0 && AktualnyCzas < czWYL) {
      lampka = 1;
    }
  }

  //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  if (lampka == 1) {
    analogWrite(led, jasnosc); // wejscie pwm jest deklarowane na pin leda o okreslonej jasnosci rownej 0
    jasnosc += wypelnienie;
    if (jasnosc > 255) //jesli jest powyzej 255, to ustalamy spowrotem 255
      jasnosc = 255;
  }

  if (lampka == 0) {
    analogWrite(led, jasnosc); // wejscie pwm deklarowane na pin led o jasnosci rownej 0
    jasnosc -= wypelnienie;
    if (jasnosc < 0) //jesli spadlo nam ponizej zera, to wracamy na wartosc 0.
      jasnosc = 0;
  }

}





Co do przerwań to czy zmienią one fakt, który opisywałem wcześniej? Nie chodzi mi o to czy czasowo program wpasuje się aby włączyć i wyłączyć lampkę bo robi to dobrze tylko czy po przekroczeniu przedziałów czasowych będe mógł operować manualnie lampką?
 
Odpowiedź
  


Wiadomości w tym wątku
RE: Zmiana stanów logicznych oświetlenia - przez Krzaczek - 25-11-2019, 19:48

Skocz do:


Przeglądający: 1 gości