• 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
Tablica i przycisk
#1
Serwus!

Ja z kolejnym banalnym problemem.

Potrzebuje ustawić pełną godzinę za pomocą jednego przycisku, myk polega na tym, że chcę ją wyciągać z tablicy:

Kod:
const char *godziny[25] = {
 "00", "01", "02", "03", "04", "05",
 "06", "07", "08", "09", "10", "11",
 "12", "13", "14", "15", "16", "17",
 "18", "19", "20", "21", "22", "23",
 "24"
};

  p1state = digitalRead(przycisk1);
  if(p1state == HIGH){ JAK TO TUTAJ ZDEFINIOWAĆ? }

i zależy mi na tym, żeby chodziło to w pętli, tzn, dojdę do "24", to kolejna wskoczy "00".

Z góry dzięki za pomoc. Smile
 
#2
Tak lekko kolego to nie ma Big Grin , przyciśnij zmieni godzinę przytrzymaj poleci dalej . I proszę zamieszczać całość kodu a nie wyrwane z kontekstu .

Kod:
const char *godziny[25] = {
"00", "01", "02", "03", "04", "05",
"06", "07", "08", "09", "10", "11",
"12", "13", "14", "15", "16", "17",
"18", "19", "20", "21", "22", "23",
"24"
};

char czas ;

int x = 0;
int z = 0;
byte state = 0;
long pm = 0;

void setup() {

Serial.begin(9600);

pinMode(2 ,INPUT_PULLUP);

while ( x < 20 ){

  long cm = millis();
  
  if ( cm - pm >= 100 ){
  
    if( digitalRead(2) == LOW )x++;
    if( digitalRead(2) == LOW and state == 0 ){
    state = 1;z = z + 1;delay(250);
    if ( z > 24 ){z = 0;}
  
}
    if( digitalRead(2) == HIGH ){state = 0;x = 0;}
    Serial.println(godziny[z]);
    pm = cm;}
   }
}

void loop() {
  
  Serial.print("USTAWIONO GODZINE - ");
  Serial.println(godziny[z]);

}
Ważne aby robić co się lubi albo lubić co się robi .
Arduino UNO, TINY, PRO MINI
Pomoc nagradzamy punktami reputacji Wink
 
#3
Dziękuje bardzo, postaram się poprawić, ale to w kolejnym wątku. Wink

Można zamknąć.
 
  


Skocz do:


Przeglądający: 1 gości