#include <LiquidCrystal.h>
LiquidCrystal lcd(13,12,11,10,9,8);
int posX = 0;
int posY = 0;
void setup()
{
 Serial.begin(9600);
 lcd.begin(16,2);
}
void loop()
{
 Serial.println("1- Move to position"); // výpis textu cez Serial
 Serial.println("2- Set X");
 Serial.println("3- Set Y");
 while( ! Serial.available() ); // zacyklenie sa, pokým neprídu dáta (1-3)
 int volba = Serial.parseInt(); // načítanie čísla
 bufferCleaner(); // vymazanie zásobníka (znaku ENTER)
 if(volba == 1) // určenie, ktorá voľba sa má vykonať
 {
 Serial.println("\nMoving to: " + String(posX) + "/" + String(posY));
 lcd.clear(); // simulácia pohybu
 delay(1000);
 lcd.setCursor(posX, posY);
 lcd.print("X");
 }
 else if(volba == 2)
 {
 Serial.print("\nEnter your X-position (0-15): ");
 while( ! Serial.available() ); // zacyklenie, kým sa nezadá niečo do terminálu
 int x = Serial.parseInt();
 bufferCleaner();
 posX = x;
 Serial.println("\nPosition X was setup to: " + String(posX));
 }
 else if(volba == 3)
 {
 Serial.print("\nEnter your Y-position (0-1): ");
 while( ! Serial.available() );
 int y = Serial.parseInt();
 bufferCleaner();
 posY = y;
 Serial.println("\nPosition Y was setup to: " + String(posY));
 }
 else
 {
 bufferCleaner();
 }
}
void bufferCleaner()
{
 delay(1);
 while(Serial.available())
 Serial.read();
}