03-09-2017, 20:51
Poradziłem sobie z godzinami :ały czas wklepywałem kod w główną petle loop() co było błedem gdy wkolepałem kod w funkcję od zwracania z RTC czasu zadziałało lecz nadal nie wiem jak zrobić aby jedna z funkcji startowała tylko w sobote
Poniżej kod jak to zrobiłem
oraz mam pytanie czy takie coś da się zapisać inaczej jakoś prościej
Poniżej kod jak to zrobiłem
Kod:
void obecnyCzas() {
DateTime now = RTC.now();
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("Godzina:");
p2d(now.hour());
lcd.print(":");
p2d(now.minute());
lcd.print(":");
p2d(now.second());
lcd.setCursor(0,1);
lcd.print("Data: ");
lcd.print(now.day());
lcd.print("/");
lcd.print(monthName[now.month()-1]);
lcd.print("/");
lcd.print(now.year());
//sprawdzenie czasu i zapisanie minut do zmiennej int czasS
int czasS = now.minute();
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print("Godzina:");
lcd.print(czasS);
delay(500);
//wlaczanie lub wylaczenie danego przekaznika o danej godzienie lub minucie
if (czasS == 40){
digitalWrite(p1, LOW);
}
if(czasS ==45){
digitalWrite(p1, HIGH);
}
if (czasS == 42){
digitalWrite(p2, LOW);
}
if(czasS ==44){
digitalWrite(p2, HIGH);
}
}
oraz mam pytanie czy takie coś da się zapisać inaczej jakoś prościej
Kod:
if (czasS == 40){
digitalWrite(p1, LOW);
}
if(czasS ==45){
digitalWrite(p1, HIGH);
}
if (czasS == 42){
digitalWrite(p2, LOW);
}
if(czasS ==44){
digitalWrite(p2, HIGH);
}