Étape 2: Tour de lego plus inutile. Partie 3
Partie 3. Croquis de l’Arduino.Le digisparks utilise une version « spéciale » de l’Arduino IDE basé sur 1,04. La plupart des bibliothèques est également particulier, essentiellement en raison de la petite mémoire sur le microcontrôleur attiny85. Dans cette implémentation, j’utilise la bibliothèque de SoftRcPulseOut qui se trouve être la mise en œuvre d’attiny85 de la bibliothèque de servo.
-------
#include < SoftRcPulseOut.h >
SoftRcPulseOut myservo ; Créez l’objet servo pour contrôler un servo
#define SERVO_PIN 3
#define switchPin 0
#define gnd 2
#define REFRESH_PERIOD_MS 20
void setup() {}
pinMode (switchPin, entrée) ; Placez l’interrupteur broche comme un pin d’entrée
digitalWrite (switchPin, HIGH) ; Allumez la résistance pullup
pinMode (gnd, sortie) ;
digitalWrite (gnd, faible) ; Utilisez cette broche comme motif
myservo.Attach(SERVO_PIN) ; attache le servo sur l’axe défini par SERVO_PIN à l’objet de servo
myservo.Write(5) ; dire de servo pour passer à 5 degrés
Delay(REFRESH_PERIOD_MS) ; attend la période d’actualisation 20ms
SoftRcPulseOut::refresh(1) ; génère l’impulsion servo
}
void loop() {}
int val = digitalRead(switchPin) ;
delayMicroseconds(20) ;
Si (val == faible) {}
myservo.Write(145) ; dire de servo pour passer à 145 degrés
Delay(REFRESH_PERIOD_MS) ; attend la période d’actualisation 20ms
SoftRcPulseOut::refresh(1) ; génère l’impulsion servo
} else {}
myservo.Write(5) ; dire de servo pour passer à 5 degrés
Delay(REFRESH_PERIOD_MS) ; attend la période d’actualisation 20ms
SoftRcPulseOut::refresh(1) ; génère l’impulsion servo
}
}
-------
Qui ' s all folks!!!