Dear All.
I have very basic sketch below :
#include<string.h>
//-------------VARS to SEND------------------------------
int sendvarlen = 6;
char* sendvarname[6]={"s0","s1","s2","s3","s4","s5"};
char* sendvarval[6]={"0","0","0","0","0","0"};
//-------------------------------------------------
long timetosend=millis();
void setup()
{
Serial.begin(9600);
delay(1000);
Serial.println("I'm Here !!!");
delay(1000);
}
void loop()
{
if(millis() - timetosend > 1000)
{
readsensor();
Serial.println("=============================");
devdata();
Serial.println("=============================");
timetosend=millis();
}
}
void readsensor()
{
Serial.println("Analog Sensor Read results");
char myread[10]="";
for (int i = 0 ; i < sendvarlen ; i++)
{
memset(myread, '\0', 10);
sendvarval[i]="";
itoa(analogRead(i),myread,10);
delay(50);
strcpy(sendvarval[i],myread);
Serial.print(sendvarname[i]);
Serial.print("=");
Serial.println(sendvarval[i]);
}
}
void devdata()
{
char mydata[500];
strcpy(mydata, "My Sensordata is : ");
for (int i=0; i<sendvarlen; i++)
{
strcat(mydata,sendvarname[i]);
strcat(mydata,"=");
strcat(mydata,sendvarval[i]);
if (i < sendvarlen-1)
{
strcat(mydata,"&");
}
}
Serial.print(mydata);
Serial.println(" ");
}
And below is the results (dumped using) : tail -f /dev/ttyUSB1
Analog Sensor Read results
s0=198
s1=244
s2=351
s3=440
s4=412
s5=273
73
My Sensordata is : s0=273&s1=273&s2=273&s3=273&s4=273&s5=273
73
Analog Sensor Read results
s0=191
s1=262
s2=378
s3=449
s4=381
s5=234
34
My Sensordata is : s0=234&s1=234&s2=234&s3=234&s4=234&s5=234
34
Some weird thing from the results :
- There is no "=============================" printed out.
- all the "value" after "My Sensordata is" is just the last value got by readsensor()
- 273 at the 1st result sequence , and
- 234 at the 2st result sequence
- There is always 2 last character reprinted at the end of readsensor() and devdata()
- 73 at the 1st result sequence , and
- 34 at the 2st result sequence
Kindly please give me your enlightment to fix this problem.
My IDE version : 0022
My Board : Arduino 2009 , ATMega328.
My OS : Ubuntu (Jaunty)
Sincerely
-bino-