Pessoal, esse é o código postado pela equipe do Laboratório de Garagem. Mas quando tento realizar o cadastro de uma nova tag, não consigo. Alguém poderia gentilmente me ajudar? Obrigado!
Tentei cadastrar dessa forma minha tag, da seguinte forma: {0x65, 0x5F, 0x90, 0x5D};

#include <SoftwareSerial.h> 
SoftwareSerial mySerial(2, 3);

char lerID[] = {
  0xAA , 0x00, 0x03, 0x25, 0x26, 0x00, 0x00, 0xBB }; 

int leitura[12];

int tagValida [5] = {
  0x5E , 0x16, 0x8F, 0x52};//Altere aqui de acordo com a sua TAG
//tagBilhete {0x5E , 0x16, 0x8F, 0x52};
//tagAzul {0x42 , 0xBC, 0x91, 0x5D};
//sem TAG AA0218380BB

void setup()
{
  pinMode(13, OUTPUT);

  Serial.begin(57600);
  Serial.println("Lab de Garagem - RFID");
  Serial.println("Exemplo de Leitura de tags: ");

  mySerial.begin(9600);
}

void loop()

  delay (500);
  int IDbyte=0;
  int j = 0;
  Serial.print("Leitura do ID ");

  while (mySerial.available())
  {
    leitura[j]= mySerial.read(); //buffer para armazenar o 
    //Serial.print(leitura[j],HEX);
    j++;
  }
  //Serial.println("");
  for (j=5 ; j<9 ; j++)// Retira apenas os Bytes com o ID dos tag
  {
    Serial.print(leitura[j],HEX);
    if (leitura[j]==tagValida[j-5])
      IDbyte++;
  }

  if (IDbyte ==4)
  {
    Serial.println("");
    Serial.println("ID Valido. Pisca LED!!!");
    digitalWrite(13,!digitalRead(13)); //Inverte o valor do LED do pino 13
  }
  else
  {
    Serial.println("");
    Serial.println("ID Invalido");
  }

  for (j =0 ; j < 8 ; j++) //Envia comando para leitura do tag
    mySerial.write(lerID[j]);

  for (j =0 ; j < 12 ; j++) //Limpa o Buffer de leitura dos tags
    leitura[j] = 0;

  Serial.println("");
}

Exibições: 324

Responder esta

Respostas a este tópico

altera o for:      for (j=5 ; j<9 ; j++)  para pegar apenas um bit por vez,assim:

  for (j=5 ; j<6 ; j++)

  for (j=6 ; j<7 ; j++)

  for (j=7 ; j<8 ; j++)

  for (j=8 ; j<9 ; j++)

e vai anotando o resultado no final vc volta ao normal, os números nos bit's as vezes não estão de dois em dois.

Ok, vou fazer isso!

deu certo?

Também estou com problemas... Tentei  alterar o for mas não tive exito...
Estou usando o Arduino 1.0.5 software com a placa garagino... Será que isto pode estar influenciando!?

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço