#define pinServo 1 void servoAttach(byte pin){ pinMode(pin, OUTPUT); } void servoWrite(byte pin, byte angle){ int pulseHigh = map(angle,0,180,430,2100); int pulseLow = 20000-pulseHigh; for (int i=0;i<50;i++){ digitalWrite(pin, HIGH); delayMicroseconds(pulseHigh); digitalWrite(pin, LOW); delayMicroseconds(pulseLow); } } void setup() { servoAttach(pinServo); } int pos = 0; void loop() { for (pos = 0; pos <= 180; pos += 1) { servoWrite(pinServo, pos); } for (pos = 180; pos >= 0; pos -= 1) { servoWrite(pinServo, pos); } }