Stap 2: Aansluiten op wolk
U kunt Openshift gebruiken voor wolk gebaseerde toepassing. Ik maakte een Python toepassing gebaseerd op de kolf.
en voor de databaseoplossing gebruikte ik Firebase
Ik gebruikte MFRC522 voor RFID-tag voor voor edison
#include
#include
#define SS_PIN 10 #define RST_PIN 9 MFRC522 rfid (SS_PIN, RST_PIN); Instantie van de klasse
MFRC522::MIFARE_Key sleutel;
Init array die slaat nieuwe NUID byte nuidPICC [3]; SoftwareSerial portOne (10, 11);
void setup {Serial.begin(9600); tijdje (! Serieel) {; / / wait voor seriële poort aansluiten. Nodig voor inheemse USB poort alleen}
Start elke software seriële poort portOne.begin(9600); SPI.begin(); Init SPI bus rfid. PCD_Init(); Init MFRC522
voor (byte ik = 0; ik < 6; i ++) {key.keyByte[i] = 0xFF;}
Serial.println (F ("deze code scan de MIFARE Classsic NUID.")); Serial.Print (F ("met behulp van de volgende sleutel:")); printHex (key.keyByte, MFRC522::MF_KEY_SIZE); } void loop {}
Zoekt u nieuwe kaarten als (! rfid. PICC_IsNewCardPresent()) de terugkeer;
Controleer of als de NUID readed zijn als (! rfid. PICC_ReadCardSerial()) de terugkeer;
Serial.Print (F ("PICC type:")); MFRC522::PICC_Type piccType = rfid. PICC_GetType(RFID.UID.SAK); Serial.println (rfid. PICC_GetTypeName(piccType));
Controle is het type PICC van klassieke MIFARE als (piccType! = MFRC522::PICC_TYPE_MIFARE_MINI & & piccType! = MFRC522::PICC_TYPE_MIFARE_1K & & piccType! = MFRC522::PICC_TYPE_MIFARE_4K) {//Serial.println (F ("uw tag is niet van het type MIFARE Classic.")); terugkeer;}
Als (rfid.uid.uidByte[0]! = nuidPICC [0] || rfid.uid.uidByte[1]! = nuidPICC [1] || rfid.uid.uidByte[2]! = nuidPICC [2] || rfid.uid.uidByte[3]! = nuidPICC [3]) {//Serial.println (F ("een nieuwe kaart heeft vastgesteld."));
NUID in nuidPICC array voor opslaan (byte ik = 0; ik < 4; i ++) {nuidPICC [i] = rfid.uid.uidByte[i];} Serial.println (F ("The NUID code is:")); Serial.Print (F ("In hex:")); printHex (rfid.uid.uidByte, rfid.uid.size); } anders Serial.println (F ("kaart eerder lezen."));
Halt PICC rfid. PICC_HaltA();
Stop codering op PCD rfid. PCD_StopCrypto1(); }
VOID printHex (byte * buffer, byte schrijven) {voor (byte ik = 0; ik < schrijven; i ++) {Serial.print (buffer [i] < 0x10? " 0" : " "); Serial.Print (buffer [i], HEX); portOne.write(2); Serial.write (buffer [i] < 0x10? " 0" : " "); Serial.write (buffer [i], HEX); } }