Checkpoints in my code?


hi know how ask arduino read sensors during void , if statements changed go or restart loop. how can ask him out of loop ?

code: [select]
#include <servo.h>
servo servo;
int positions = 2;
int vpositions;

int capteur1 = a0; //pin de la photocell 1
int readcapteur1; //valeur de la photocell 1

int capteur2 = a1; //pin de la photocell 2
int readcapteur2; //valeur de la photocell 2

int capteur3 = a2; //pin de la photocell 3
int readcapteur3; //valeur de la photocell 3

int p;


void setup()
{
  servo.attach(9);
  serial.begin(9600); //imprimer les données recues - la fréquence
}


void loop()
{
  readcapteur1 = analogread(capteur1); //lecture analogique du capteur
  readcapteur2 = analogread(capteur2); //lecture analogique du capteur
  readcapteur3 = analogread(capteur3); //lecture analogique du capteur
  serial.print("lecture du capteur 1 = "); //imprimer les données sous...
  serial.print(readcapteur1); //imprimer les données analogiques recues
  serial.print("\t");
  serial.print("lecture du capteur 2 = "); //imprimer les données sous...
  serial.print(readcapteur2); //imprimer les données analogiques recues
  serial.print("\t");
  serial.print("lecture du capteur 3 = "); //imprimer les données sous...
  serial.print(readcapteur3); //imprimer les données analogiques recues
  serial.print("\t");

  serial.print("lecture vpositions = "); //imprimer les données sous...
  serial.print(vpositions); //imprimer les données analogiques recues
    serial.print("\n");

  if (readcapteur1 > 850) {
    positions = 1;
    if (vpositions != 1)
   {    droite();}
   else{}
  }

  if (readcapteur2 > 850) {
    positions = 2;
    if (vpositions != 2)
   {    centre();}
   else {}
  }

  if (readcapteur3 > 850) {
    positions = 3;
    if (vpositions != 3)
   {
    gauche();}
    else{}
  }
vpositions = positions;
  serial.print("lecture vpositions = "); //imprimer les données sous...
  serial.print(vpositions); //imprimer les données analogiques recues
    serial.print("\n");
}



void centre()
{
  if (p==2){
    for(int x=2400; x<=2400 && x>=1500; x-=25){
      servo.write(x);//120
      delay(200);
      serial.print(" x= "); //imprimer les données sous...
      serial.print(x);
       
  positions = 2;
    }
  }
  if (p==1){
    for(int x=544; x<=1500 && x>=544; x+=25){
      servo.write(x);//120
      delay(200);
      serial.print(" x= "); //imprimer les données sous...
      serial.print(x);
       
  positions = 2;
    }
  }
  serial.print(" position = centre2 "); //imprimer les données sous...
  serial.print('\n');
 
  positions = 2;
}

void gauche()
{
  if(vpositions == 1)
  {for(int x=544; x<=2400; x+=25){
    servo.write(x);//120
    delay(200);
    serial.print(" x= "); //imprimer les données sous...
    serial.print(x);
  }}
  else{
  for(int x=1500; x<=2400; x+=25){
    servo.write(x);//120
    delay(200);
    serial.print(" x= "); //imprimer les données sous...
    serial.print(x);
  }}
  serial.print(" position = droite3 "); //imprimer les données sous...
  p=2;
  serial.print('\n');

positions = 3 ;


void droite()
{ if (vpositions == 3)
   {for(int x=2400; x>=544; x-=25){
    servo.write(x);//120
    delay(200);
    serial.print(" x= "); //imprimer les données sous...
    serial.print(x);
  }}
  else{
  for(int x=1500; x>=544; x-=25){
    servo.write(x);//120
    delay(200);
    serial.print(" x= "); //imprimer les données sous...
    serial.print(x);
  }}
  serial.print(" position = gauche1 "); //imprimer les données sous...
  p=1;
  serial.print('\n');
   
  positions = 1; 









in ide, press alt + t format code properly.
get rid of else{} lines. nothing.
the 'void' you're talking called functions. there several functions in code, 1 asking about?
the use of delay() stopping sketch responding button presses. use millis() instead. see 'blink without delay' example in either ide or examples pages of site.


Arduino Forum > Using Arduino > Programming Questions > Checkpoints in my code?


arduino

Comments

Popular posts from this blog

invalid use of void expresion in FlexiTimer2 library

error: a function-definition is not allowed here before '{' token

LED Strip Code