Tunnin tehtävänä oli pelehtiä servojen kanssa. Teimme tehtävänannon ilman Servo.h-kirjastoa. Saimme servon suorittamaan halutun liikkeen, eli kääntymään 45 astetta ja sitten pysähtymään, jälleen kerran internetin avustuksella. Tähän asti olimme nimittäin käyttäneet servoa vain valmiin kirjaston avulla. Onneksemme vastaus tehtävään löytyi lopulta osoitteesta http://www.linuxcircle.com/2013/07/04/servo-manual-control-without-arduino-servo-library-on-raspberry-pi-and-gertboard/

Ohessa koodimme harjoitukseen:

#define SERVO_PIN 2

int lenMicroSecondOfPeriod = 25 * 1000;
int lenMicroSecondOfPulse = 1000;
int first = 0.7 * 1000;
int end = 3.7 * 1000;
int increment = 0.01 * 1000;
boolean runOnce = false;

void setup()
{
  pinMode(SERVO_PIN, OUTPUT);
}

void loop()
{
  int current = 0;
  if (!runOnce) {
    for (current = first; current < end; current+=increment) {
      digitalWrite(SERVO_PIN, HIGH);
      delayMicroseconds(current);
      digitalWrite(SERVO_PIN, LOW);
      delayMicroseconds(lenMicroSecondOfPeriod - current);
    }
  }
  runOnce = true;
}

Eipä tähän juuri lisättävää :) Terveisin Artsi ja Ana

PS: Tässä vielä videoita urotyöstämme: