Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <VarSpeedServo.h>
- VarSpeedServo MeinServo;
- void setup() {
- pinMode(A0, INPUT);//joystick input
- MeinServo.attach(9); //Servo Pin
- Serial.begin(9600);
- }
- void loop() {
- static int pos = 0;
- static int geschw = 1;
- int posit = pulseIn (A0, HIGH);
- int tgeschw = pulseIn (A0, HIGH);
- tgeschw = map(tgeschw, 1000 , 2000 , -100 , 100);
- if (tgeschw < 0)
- {
- tgeschw = tgeschw * -1;///um aus map immer positive zahl zu machen
- }
- //geschwindigkeit für feueranlageservo
- if (tgeschw > 5)// >5 ist die Todzone
- {
- geschw = tgeschw;
- }
- else
- {
- geschw = 1;
- MeinServo.detach(); //detach um Servo zittern bei Stillstand zu vermeiden
- }
- //Endposition des Servos
- if (posit < 1400)
- {
- pos = 180;
- MeinServo.attach(9);
- }
- if (posit > 1600)
- {
- pos = 0;
- MeinServo.attach(9);
- }
- MeinServo.write(pos , geschw , false); //false bedeutet das die Aktion unterbrochen werden kann
- //wenn dies true wäre würde die Schleife mindestens solange wie die Servobewegung dauern
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement