#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();
}