Jde mi hlavně o to aby se pohybovalo mnou určenou rychlostí,což nemůžu docílit.Funguje mi to pouze když podržím tlačítko a resetartuji Arduino.Prosím tedy o radu,snad jsem to vysvětlil srozumitelně
Zde je kod:
Kód: Vybrat vše
# include <Servo.h>
Servo myservo;
unsigned long MOVING_TIME = 1500;
unsigned long moveStartTime;
const int cidlo1 = 13;
int startAngle = 0;
int stopAngle = 40;
void setup() {
myservo.attach(9);
}
void loop() {
if (digitalRead(cidlo1) == LOW) {
unsigned long progress = millis()- moveStartTime;
if (progress <= MOVING_TIME) {
long angle = map(progress, 0, MOVING_TIME, stopAngle, startAngle);
myservo.write(angle);
}
}
else {
unsigned long progress = millis()- moveStartTime;
if (progress <= MOVING_TIME) {
long angle = map(progress, 0, MOVING_TIME, startAngle, stopAngle);
myservo.write(angle);
}
}
}