RFID based book shelving system

Hello,
I have taken up a RFID based project. I'm going to implement it through Arduino Uno. My project is about displaying the shelf number where the book is supposed to be placed after reading the tag number of the book. So basically I want to store all the tag numbers before and then while reading the tags one by one want to compare the read tags with the stored tag numbers and if the tags match, display the corresponding shelf number.
I'm having problem in program since I dont know the basics of Java, if somebody could help in telling how to compare the tags while reading with the known tag numbers and then displaying the shelf number on LCD , it would be great.

Is there some part of your project you are keeping secret from us?

Paul

No, there isn't anything. I have mentioned all the important points. If you are finding any part of the description difficult to understand, please specify.

diksha:
No, there isn't anything. I have mentioned all the important points. If you are finding any part of the description difficult to understand, please specify.

I don't think JAVA is supported on Arduino.

Paul

which language it is then? i have prepared a code:

int len=0;
char rtag[12];
char act1[12]={‘0’,‘8’,‘0’,‘0’,‘8’,‘8’,‘3’,‘1’,‘8’,‘6’,‘3’,‘7’};
char act2[12]={‘0’,‘8’,‘0’,‘0’,‘8’,‘8’,‘2’,‘7’,‘D’,‘8’,‘7’,‘F’};
char act3[12]={‘4’,‘3’,‘0’,‘0’,‘7’,‘7’,‘9’,‘1’,‘2’,‘9’,‘8’,‘C’};
void setup()
{
Serial.begin(9600);
}

void loop()
{
int tag1=12;
len=0;
while(Serial.available() && len<12)
{
rtag[len]=Serial.read();
len++;
delay(1000);
}
Serial.print(rtag);
for(len=0; len<=12; len++)
{
if(memcmp(rtag,act1,tag1)==0)
{
Serial.print(“Shelf 1”);
}
else
if(memcmp(rtag,act2,tag1)==0)
{
Serial.print(“Shelf 2”);
}
else
if(memcmp(rtag,act3,tag1)==0)
{
Serial.print(“Shelf 3”);
}
len++;
delay(5);
}
}

it would be nice, if i could find what the problem is? there are no errors after compilation but no output as well. I have made this pgm using the basic code for reading tags.
Any help will be appreciated.

Add some Serial.print's to see what values these variable have:
if(memcmp(rtag,act1,tag1)==0) - should probably use rtag[len], act1[len] here to step thru the arrays

if(memcmp(rtag,act2,tag1)==0) - and rtag[len], act2[len] here

if(memcmp(rtag,act3,tag1)==0) - and rtag[len], act3[len] here

Also make sure your serial monitor is set for 9600.

Maybe they're not equaling what you think they are.

int len=0;
char rtag[12];
char act1[12]={‘0’,‘8’,‘0’,‘0’,‘8’,‘8’,‘3’,‘1’,‘8’,‘6’,‘3’,‘7’};
char act2[12]={‘0’,‘8’,‘0’,‘0’,‘8’,‘8’,‘2’,‘7’,‘D’,‘8’,‘7’,‘F’};
char act3[12]={‘4’,‘3’,‘0’,‘0’,‘7’,‘7’,‘9’,‘1’,‘2’,‘9’,‘8’,‘C’};
void setup()
{
Serial.begin(9600);
}

void loop()
{
int tag1=12;
len=0;
while(Serial.available() && len<12)
{
rtag[len]=Serial.read();
len++;
delay(1000);
}
Serial.print(rtag);
for(len=0; len<=12; len++)
{
if(memcmp(rtag[len],act1[len],tag1)==0)
{
Serial.print(“Shelf 1”);
}
else
if(memcmp(rtag[len],act2[len],tag1)==0)
{
Serial.print(“Shelf 2”);
}
else
if(memcmp(rtag[len],act3[len],tag1)==0)
{
Serial.print(“Shelf 3”);
}
len++;
delay(5);
}
}

Still many errors. what does it mean by invalid conversion from char to const void*(-fpermissive).
Thank you