/* esercizio_02_tipi di carattere
 * Esempio di classico programma che utilizza la seriale per ingresso/uscita
 * Aprire il terminale (da "Tools"->"Serial Monitor Ctrl+Maiusc+M" oppure con Control+Maiuscole+M)
 * il prigramma indica il tipo di carattere premuto (minuscola, maiuscola, numeri, caratteri di controllo e simboli)
 */
 
void setup () {
  Serial.begin (9600);    // Imposta la velocita' della seriale
}
 
void loop () {
  int i;
  Serial.println ("Scrivi un carattere");         // Scrive un messagio (con "a capo")
  do {
    i = Serial.read();                            // Legge un carattere (-1 se nessun carattere disponibile)
  } while (i < 0);                                // Attende finche' non e' disponibile un tasto
  Serial.print ("  Hai scritto ");                // Scrive il messaggio
  Serial.print (i);                               // Scrive il valore (numerico) di i
  Serial.print (" che in ascii corrisponde a '");
  Serial.write (i);                               // Scrive il "carattere" i
  Serial.print ("' che e'");
  if (i >= 'A' && i <= 'Z') {
    Serial.println("una letera maiuscola");
  } else if (i >= 'a' && i <= 'z') {
    Serial.println("una letera minuscola");
  } else if (i >= '0' && i <= '9') {
    Serial.println("un numero");
  } else if (i >= 0 && i <= 31) {
    Serial.println("un carattere di controllo");
  } else {
    Serial.println("un simbolo");
  }
}


