was ist hier falsch?

2 Antworten

Vlt erzählst Du auch, was Du vom Code erwartest... Der Servo wird zumindest nur einmal im Setup angesteuert. Und zwar auf Pos 0, wie "poti" zuvor initialisiert wurde... Danach wird erst der analoge Eingang im Loop eingelesen. Aber kein Befehl mehr an den Servo gesendet, da Setup nur ein einziges mal durchlaufen wird... Analogeingänge müssen auch nicht als Eingang deklariert werden...

Ergänzend: Delay(10) sind keine 50ms, wie im Text dahinter, sondern 10ms...


IquasDas 
Fragesteller
 27.02.2024, 18:14

die 50ms war nur ein automatischer kommentar des programms das delay 10 keine 50ms sind ist mir selber bewusst habe nur übersehen das ich den servo im setup ansteuere danke für den hinweis!

0
RareDevil  27.02.2024, 18:14

Noch was... Den Servo kannst Du nur von 0-180 ansteuern, AnalogRead liest aber 0-1023 ein.. Also nur ein Bruchteil deines Poti wird wirklich als Servoposition ausgewertet. Der Rest ist einfach Endanschlag.. Du müsstest evt die Poti-Position noch mappen, damit der volle Poti-Weg auch den Servo exakt steuern kann...

0

a.) Der Analoge EIngang muss nicht per pinMode gesetzt werden (darf nicht)

b.) Hier wird nur ein einziges Mal das Poti gelesen (in setup() ) Danach wird poti stets gelesen, aber nicht mehr auf Servo ausgegeben (in loop() )