SerialRFID \ Learning \ Wiring ALPHA 1.0
Author: Hernando Barragán
Description: Wiring is an electronic sketchbook and hardware electronics for developing ideas. It is a context for learning fundamentals of computer programming and prototyping with electronics within the context of the electronic arts.
Keywords: Wiring, Processing, Interactive Media, Electronic Arts, Programming, C, C++, Hernando Barragán

Search wiring.org.co:

This example is for Wiring version 0024+. If you have a previous version, use the examples included with your software. If you see any errors or have comments, please let us know.

RFID reading by BARRAGAN
Demonstrates how to read data from a Parallax RFID reader connected to the Serial1 serial port and print the tag number through the Serial serial port.

    byte val;
    char code[10];
    int bytesread = 0;

    void setup() {
     Serial1.begin(2400); // RFID reader SOUT pin connected to Serial1 RX pin at 2400bps
     Serial.begin(9600);  // Serial set to 9600
     pinMode(0,OUTPUT);   // Ser digital pin 0 as OUTPUT to connect it to the RFID /ENABLE pin
    }

    void loop() {
      digitalWrite(0, LOW);                  // Activate the RFID reader
      if(Serial1.available() > 0) {          // if data available from reader
        if((val = Serial1.read()) == 10) {   // check for header
          bytesread = 0;
          while(bytesread<10) {              // read 10 digit code
            if( Serial1.available() > 0) {
              val = Serial1.read();
              if((val == 10)||(val == 13)) { // if header or stop bytes before the 10 digit reading
                break;                       // stop reading
              }
              code[bytesread] = val;         // add the digit
              bytesread++;                   // ready to read next digit
            }
          }
          if(bytesread == 10) {              // if 10 digit read is complete
            Serial.print("TAG code is: ");   // possibly a good TAG
            Serial.println(code);            // print the TAG code
          }
          bytesread = 0;
          digitalWrite(0, HIGH);             // deactivate RFID reader
          delay(1000);                       // wait for a second
        }
      }
    }