hello,
Alors j'ai mis de nouveau longtemps a revenir mais c'est pour une bonne raison lol
Mon ami et moi avons beaucoup travailler notre programme.
Pour vous expliquer, nous recevons une information exterieur qui est censée mettre en route le servo moteur lorsque je le lui demande.
Sauf que, au point ou nous en sommes, mon moteur tourne sans arret.... il demarre bien quand je le lui demande mais ne s'arrete pas :-(
pourriez vous m aider ? ce serait super sympa, je vous colle mon code ci dessous:
#include <Servo.h>
Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created
int pos = 0; // variable to store the servo position
int F = 6;
int G = 7;
int H = 8;
int I = 9;
int J = 10;
int K = 11;
int valI = 0;
int valJ = 0;
int valK = 0;
int led2 = 41;
int led3 = 42;
int i = 0;
int incomingByte[3];
void setup()
{
Serial.begin(57600);
myservo.attach(40);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(H, OUTPUT);
pinMode(I, INPUT);
pinMode(J, INPUT);
pinMode(K, INPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
}
void loop()
{
if (Serial.available() >= 3)
{
for (int i = 0; i < 3; i++)
{
incomingByte = Serial.read();
} // Arduino pins
digitalWrite(F, incomingByte[0]); // guirlande rouge
digitalWrite(G, incomingByte[1]); // visage mannequin
digitalWrite(H, incomingByte[2]); // mannequin volant
}
valI = digitalRead(I);
valJ = digitalRead(J);
valK = digitalRead(K);
while (valI == HIGH)
{servo1();}
}
void servo1(){
for(pos = 70; pos < 130; pos += 1) // goes from 0 degrees to 180 degrees
{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(50); // waits 15ms for the servo to reach the position
}
myservo.write(130);
delay (2000);
for(pos = 130; pos > 70; pos -= 1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position in variable 'pos'
delay(50); // waits 15ms for the servo to reach the position
}
}