giovedì 5 settembre 2013

Ethernet Shield e SPI

Cercando di accoppiare il lettore di Rfid presentato qui con una Arduino Uno dotata di Shield Ethernet, lo sketch gia' visto in precedenza ha smesso di funzionare


Il fatto e' dovuto (come spiegato qui) che lo shield utilizza il protoccolo SPI ed il PIN D10 risulta essere non disponibile per altri usi differenti da quelli della scheda di rete.
Per questo motivo lo sketch e' stato modificato come segue modificando la posizione dei Pin 9-10 in 6-7

------------------------------------------
#include <SPI.h>
#include <RFID.h>

#define SS_PIN 6
#define RST_PIN 7

RFID rfid(SS_PIN, RST_PIN); 

// Setup variables:
    int serNum0;
    int serNum1;
    int serNum2;
    int serNum3;
    int serNum4;

void setup()

  Serial.begin(9600);
  SPI.begin(); 
  rfid.init();
  
}

void loop()
{
    
    if (rfid.isCard()) {
        if (rfid.readCardSerial()) {
                serNum0 = rfid.serNum[0];
                serNum1 = rfid.serNum[1];
                serNum2 = rfid.serNum[2];
                serNum3 = rfid.serNum[3];
                serNum4 = rfid.serNum[4];
                String Id = String(rfid.serNum[0],HEX)+String(rfid.serNum[1],HEX)+String(rfid.serNum[2],HEX)+String(rfid.serNum[3],HEX)+ String(rfid.serNum[4],HEX);
                Serial.println(Id);
             } 
          }
        
    rfid.halt();
}

Nessun commento:

Posta un commento

Arduino logger low power

Alla fine ci sono riuscito La arduino MKR zero e' ormai da un mese che e' rimasta accesa sul tavolo...o meglio si attiva ogni minuto...