//Preberi tri števila, ki so ločena z vejico (oblika zapisa: 45,123,45)

#define SEZNAMstevil 3
int seznamIndex = 0; // indeks posameznega stevila locenega z vejico
int stevilo[SEZNAMstevil]; // seznam v katerega zapisemo vsa stevila

void setup(){
  Serial.begin(9600);
  Serial.println("Vpisi tri stevila, locena z vejico");
}

void loop(){
  if(Serial.available()){
    char znak = Serial.read();
    if(znak >= '0' && znak <= '9'){
      stevilo[seznamIndex] = (stevilo[seznamIndex] * 10) + (znak - '0');
    }
    else if (znak == ','){
      if(seznamIndex < SEZNAMstevil -1) seznamIndex ++;
    }
    else {
      Serial.print("Seznam stevil: ");
      Serial.println(seznamIndex + 1);
      for (int i = 0; i <= seznamIndex; i++){
        Serial.print(stevilo[i]);
        Serial.print(",");
        stevilo[i] = 0; // lahko preberemo naslednji niz števil
      }
      seznamIndex = 0; //preberemo nova tri stevila
    }
  }
}



 ///////////////////////////////////////////
 /*
 //Preko serijskega porta preberi niz znakov (5 števil) in jih zapiši v seznam (tipa char).
 //Končni seznam pretvori v celo število. 
int ledPin = 11;
int utrip;
char seznam[6]; // seznam znakov
int index = 0; // indeks seznama 

void setup(){
  Serial.begin(9600);
  Serial.println("Vpiši niz števil:");
  pinMode(ledPin, OUTPUT);
}

void loop(){
  if (Serial.available()){
    char znak = Serial.read();
    if( index < 5 && znak >='0' && znak <='9'){
      seznam[index++] = znak;
    }
    else {
      seznam[index] = 0; // seznam aključimo z 0
      utrip = atoi(seznam); // pretvorba stringa v integer
      Serial.println(utrip);
      index = 0;
    }
  }
  utripanje(utrip);
}

void utripanje(int x){
  digitalWrite(ledPin, HIGH);
  delay(x);
  digitalWrite(ledPin, LOW);
  delay(x);

}
*/
///////////////////////////////////////////////////////
/* Program prebere ASCII znak
// 1 - izpiše se 1 - utrip 1x
// 2 izpiše se 2 - utrip 2x
// + izpiše se + - LED on
// + izpiše se + - LED off

int ledPin = 11;

void setup(){
  Serial.begin(9600);
  pinMode(ledPin, OUTPUT);
  Serial.println("Vpiši znak");
}

void loop(){
  if( Serial.available()){
    char znak = Serial.read();
    switch(znak) {
        case '1':
          Serial.println("ena");
          utripanje();
          break;
        case '2':
          Serial.println("dve");
          utripanje();
          utripanje();
          break;
        case '+':
          Serial.println("+");
          digitalWrite(ledPin, HIGH);
          break;
        case '-':
          Serial.println("-");
          digitalWrite(ledPin, LOW);
          break;
        default :
          Serial.println("Ni pravi znak.");
          break;
    }
  }
}

void utripanje(){
  digitalWrite(ledPin, HIGH);
  delay(200);
  digitalWrite(ledPin, LOW);
  delay(200);
}
*/
///////////////////////////////////////////////////////

/* program prebere 3 znake (ASCII koda), ki jih pretvorimo v številčno vrednost
int ledPin = 11;
int utrip = 0;
int vrednost;

void setup() {
 Serial.begin(9600);
 Serial.println("Vpisi stevilo:");
 pinMode(ledPin, OUTPUT);
}

void loop() {
  if( Serial.available()) {
    char znak = Serial.read();
    if (znak >= '0' && znak <= '9'){ // '0' je 48
      vrednost = (vrednost * 10) + (znak - '0');
    }
    else if (znak == 10) { // enter po ASCII je zap. št. 10
      utrip = vrednost;
      Serial.println(utrip);
      vrednost = 0;
    }
  }
utripanje(utrip);
}

void utripanje(int x){
  digitalWrite(ledPin, HIGH);
  delay(x);
  digitalWrite(ledPin,LOW);
  delay(x);
}*/