Etape 2: Connexion à nuage
Vous pouvez utiliser Openshift pour application en nuage basé. J’ai fait une application Python basée sur la fiole.
et pour la solution de base de données, j’ai utilisé Firebase
J’ai utilisé MFRC522 pour tag RFID pour edison
#include
#include
#define SS_PIN 10 #define RST_PIN 9 MFRC522 rfid (SS_PIN, RST_PIN) ; Instance de la classe
Clé de MFRC522::MIFARE_Key ;
Init tableau qui va stocker le nouveau Mahou octets nuidPICC [3] ; SoftwareSerial portOne (10, 11) ;
void setup() {Serial.begin(9600) ; while (! Série) {; / / attente pour port série pour se connecter. Besoin pour port USB natif seulement}
Commencer chaque logiciel port série portOne.begin(9600) ; SPI.begin() ; Init SPI bus rfid. PCD_Init() ; Init MFRC522
pour (octet i = 0; i < 6; i ++) {key.keyByte[i] = 0xFF;}
Serial.println (F ("ce code scan la MIFARE Classsic NUID.")) ; Serial.Print (F ("à l’aide de la clé suivante:")) ; printHex (key.keyByte, MFRC522::MF_KEY_SIZE) ; } void loop() {}
Chercher de nouvelles cartes si (! rfid. PICC_IsNewCardPresent()) retour ;
Vérifiez si la NUID a été lues si (! rfid. PICC_ReadCardSerial()) retour ;
Serial.Print (F ("type PICC:")) ; MFRC522::PICC_Type piccType = rfid. PICC_GetType(RFID.uid.SAK) ; Serial.println (rfid. PICC_GetTypeName(piccType)) ;
Vérification est le type PICC de MIFARE Classic si (piccType! = MFRC522::PICC_TYPE_MIFARE_MINI & & piccType! = MFRC522::PICC_TYPE_MIFARE_1K & & piccType! = MFRC522::PICC_TYPE_MIFARE_4K) {//Serial.println (F ("votre tag n’est pas de type MIFARE Classic.")); return;}
Si (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 (« une nouvelle carte a été détectée.")) ;
Enregistre Mahou dans nuidPICC tableau pour (octet j’ai = 0; j’ai 4 <; i ++) {nuidPICC [i] = rfid.uid.uidByte[i;]} Serial.println (F ("The NUID balise est:")) ; Serial.Print (F ("en hexadécimal:")) ; printHex (rfid.uid.uidByte, rfid.uid.size) ; } else Serial.println (F ("carte lu précédemment.")) ;
Halt PICC rfid. PICC_HaltA() ;
Arrêtez le cryptage sur PCD rfid. PCD_StopCrypto1() ; }
Sub printHex (byte * buffer, bufferSize octets) {pour (octet j’ai = 0; j’ai < bufferSize; i ++) {Serial.print (tampon [i] < 0 x 10 ? " 0" : " "); Serial.Print (buffer [i], HEX) ; portOne.write(2) ; Serial.Write (tampon [i] < 0 x 10 ? " 0" : " "); Serial.Write (buffer [i], HEX) ; } }