Ich habe mal alles systematisch deaktiviert und herausgefunden, wenn ich myservo.. rausnehme funktionierts.
Du hast Rechts, der Compiler ist nicht alles. Grüße
void loop() {
myMotor->release();
// myservo1.write(0, 200, true);
Ich habe mal alles systematisch deaktiviert und herausgefunden, wenn ich myservo.. rausnehme funktionierts.
Du hast Rechts, der Compiler ist nicht alles. Grüße
void loop() {
myMotor->release();
// myservo1.write(0, 200, true);
Die Anweisung
myservo1.write(0, 200, true);
ist nicht definiert. Eigentlich sollte der Compiler da meckern.
Die Funktion nimmt nur ein Parameter an, und zwar einen Ganzzahlwert zwischen 0 und 180, der den Winkel in Grad darstellt. Siehe hier
Ich dachte der 1.Wert =Winkel, 2. Wert = Geschwindigkeit, oder ?
Ich beziehe mich auf die Arduino-Standard-Servo-Bibliothek, die mit #include <Servo.h> eingebunden wird.
Deine Initialisierung sollte in etwa so aussehen:
Code:#include <Servo.h> Servo myservo1; void setup() { myservo1.attach(9); // PIN 9 } void loop() { // ... irgendwas mit myservo1.write(winkel); }
Geändert von Sisor (27.02.2015 um 13:39 Uhr)
Du hast absolut Recht.
Ich habe jedoch die VarSpeedServo eingebunden. Das konntest du ja nicht wissen.
#include <Wire.h>
#include <Adafruit_MotorShield.h>
#include "utility/Adafruit_PWMServoDriver.h"
Adafruit_MotorShield AFMS = Adafruit_MotorShield();
Adafruit_StepperMotor *myMotor = AFMS.getStepper(200, 2); //1,8 Grad / Stepp auf Klemme 3/4
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
#include <VarSpeedServo.h>
Du müsstest schon ein bischen mehr Code liefern. So ist imho nichts Verdächtiges zu sehen.
Könnte einiges sein, vllt. benutzen die Bibliotheken die gleichen Resourcen wie z.B. Timer und kommen sich ins Gehege.
Lesezeichen