Problem with counter


hi friends,

i not able find way mu counter not go across 10.
i want counter row of values counter stop 10.
could me ?
thanks

donato

char buffer[20];
int ledinput1 = 2;
int ledinput2= 3;
int ledinput3 = 4;
int cont=0;
int starttime;
void setup()
{
 
 serial.begin(57600);
// serial.println("lettura");
 pinmode(ledinput1,input);
 pinmode(ledinput2,input);
 pinmode(ledinput3,input);
 starttime=0;
}

void loop()

{
 int input=int(analogread(ledinput1));
  int input1=int(analogread(ledinput2));
   int input2=int(analogread(ledinput3));
  int input3;
 if((millis()-starttime) <=1000)
 {
   delay(1);
//  serial.print(" leggiamo valori del potenziometro:   ");
//  serial.print("il valore di sens0 e':  ");
//  serial.println(sens0);
input3=input1;
     buffer[0] = (input / 1000) + '0'; input %= 1000;
     buffer[1] = (input / 100) + '0'; input %= 100;
     buffer[2] = (input / 10) + '0'; input %= 10;
     buffer[3] = (input) + '0';
     buffer[4]=',';
     buffer[5] = (input1 / 1000) + '0'; input1 %= 1000;
     buffer[6] = (input1 / 100) + '0'; input1 %= 100;
     buffer[7] = (input1 / 10) + '0'; input1 %= 10;
     buffer[8] = (input1) + '0';
     buffer[9]=',';
     buffer[10] = (input3 / 1000)+ '0'  ; input3 %= 1000;
     buffer[11] = (input3 / 100)+ '0' ; input3 %= 100;
     buffer[12] = (input3 / 10)+ '0'; input3 %= 10;
     buffer[13] = (input3)+ '0' ;
     buffer[14]=',';
     buffer[15] = (cont / 1000) + 48; cont %= 1000;
     buffer[16] = (cont / 100) + 48; cont %= 100;
     buffer[17] = (cont / 10) + 48; cont %= 10;
     buffer[18] = (cont) + 48;
   
     
     //serial.println("l'array compilato e' : ");
     serial.println(buffer);
 
   //  serial.print("l'array ad ogni ciclo e' : ");serial.println(buffer);
 //delay(1);
 
//serial.print("il valore di cont  e' ");
//serial.println(cont);
   cont++;

 }
 

}

to illustrate why cont never goes above 10, i've extracted portion of code:

code: [select]
void loop()

{
  if((millis()-starttime) <=1000)
 {
// snipped bunch of code
     cont++;
 }
}


the variable starttime never reset, snipped code executes 1 second after arduino restarted.

the snipped code takes time execute, analogread statements taking longest, , serial.println taking time, too.

why letting run 1 second?


Arduino Forum > Forum 2005-2010 (read only) > Software > Syntax & Programs > Problem with counter


arduino

Comments