int a=0; long pozycja; long pozycja_new; // enkoder int enkoder = 0; int impuls = 0; int last = 0; void setup() { pinMode(4, OUTPUT); // krok pinMode(6, OUTPUT); // kierunek pinMode(7, OUTPUT); // enable pinMode(8, INPUT); // krańcówka przod pinMode(9, INPUT); // enkoder pinMode(11, INPUT); // krańcówka tyl digitalWrite(4, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); Serial3.begin(9600); pozycja = 200; pozycja_new = pozycja; Serial3.print("Aktualna pozycja: "); Serial3.print((float)pozycja/400); Serial3.println(" mm"); } void loop() { long kroki=0; int error; int kierunek; long kroki_enkoder; if(Serial3.find("s")) { kroki = Serial3.parseInt(); kroki_enkoder=kroki; kierunek = Serial3.parseInt(); if(kierunek == 1) digitalWrite(6, HIGH); if(kierunek == 0) digitalWrite(6, LOW); if(kierunek == 0) pozycja_new+=kroki; else pozycja_new-=kroki; for(int x=0; x