cd

Dependencies:   mbed

Fork of test_rc522 by Brahim KHARRAB

Committer:
ndine985
Date:
Mon Jun 04 07:53:30 2018 +0000
Revision:
1:0ed1c151ad16
Parent:
0:161f7fa5a879
Pr

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mavix14 0:161f7fa5a879 1
mavix14 0:161f7fa5a879 2 //----------------------------------------
ndine985 1:0ed1c151ad16 3 // RFID IRQ = pin8 -> Non utilisé. Laissez ouvert
ndine985 1:0ed1c151ad16 4 // RFID MISO = pin6 -> Nucleo SPI_MISO = PA_6 = D12
ndine985 1:0ed1c151ad16 5 // RFID MOSI = pin5 -> Nucleo SPI_MOSI = PA_7 = D11
ndine985 1:0ed1c151ad16 6 // RFID SCK = pin7 -> Nucleo SPI_SCK = PA_5 = D13
ndine985 1:0ed1c151ad16 7 // RFID SDA = pin18 -> Nucleo SPI_CS = PB_6 = D10
ndine985 1:0ed1c151ad16 8 // RFID RST = pin16 -> Nucleo = PA_9 = D8
ndine985 1:0ed1c151ad16 9
mavix14 0:161f7fa5a879 10
mavix14 0:161f7fa5a879 11 #include "mbed.h"
mavix14 0:161f7fa5a879 12 #include "MFRC522.h"
mavix14 0:161f7fa5a879 13
ndine985 1:0ed1c151ad16 14 // Nucleo Pin pour réinitialisation MFRC522 (D8 autre D si utiliser)
ndine985 1:0ed1c151ad16 15
ndine985 1:0ed1c151ad16 16 #define SPI_MOSI p5
ndine985 1:0ed1c151ad16 17 #define SPI_MISO p6
ndine985 1:0ed1c151ad16 18 #define SPI_SCK p7
ndine985 1:0ed1c151ad16 19 #define SPI_CS p18
ndine985 1:0ed1c151ad16 20 #define MF_RESET p16
ndine985 1:0ed1c151ad16 21
mavix14 0:161f7fa5a879 22
mavix14 0:161f7fa5a879 23 DigitalOut LedGreen(LED1);
mavix14 0:161f7fa5a879 24
ndine985 1:0ed1c151ad16 25 //Connexion série au PC pour la sortie
ndine985 1:0ed1c151ad16 26 Serial pc(USBTX, USBRX);
mavix14 0:161f7fa5a879 27
mavix14 0:161f7fa5a879 28 MFRC522 RfChip (SPI_MOSI, SPI_MISO, SPI_SCK, SPI_CS, MF_RESET);
mavix14 0:161f7fa5a879 29
mavix14 0:161f7fa5a879 30 int main(void) {
mavix14 0:161f7fa5a879 31 pc.printf("starting...\n");
mavix14 0:161f7fa5a879 32
mavix14 0:161f7fa5a879 33 // Init. RC522 Chip
mavix14 0:161f7fa5a879 34 RfChip.PCD_Init();
mavix14 0:161f7fa5a879 35
mavix14 0:161f7fa5a879 36 while (true) {
mavix14 0:161f7fa5a879 37 LedGreen = 1;
mavix14 0:161f7fa5a879 38 // Look for new cards
mavix14 0:161f7fa5a879 39 if ( ! RfChip.PICC_IsNewCardPresent())
mavix14 0:161f7fa5a879 40 {
mavix14 0:161f7fa5a879 41
mavix14 0:161f7fa5a879 42 wait_ms(500);
mavix14 0:161f7fa5a879 43 continue;
mavix14 0:161f7fa5a879 44 }
mavix14 0:161f7fa5a879 45
mavix14 0:161f7fa5a879 46 // Select one of the cards
mavix14 0:161f7fa5a879 47 if ( ! RfChip.PICC_ReadCardSerial())
mavix14 0:161f7fa5a879 48 {
mavix14 0:161f7fa5a879 49 pc.printf("Rien");
mavix14 0:161f7fa5a879 50 wait_ms(500);
mavix14 0:161f7fa5a879 51 continue;
mavix14 0:161f7fa5a879 52 }
mavix14 0:161f7fa5a879 53
mavix14 0:161f7fa5a879 54 LedGreen = 0;
mavix14 0:161f7fa5a879 55
ndine985 1:0ed1c151ad16 56 // Print ID de la Card
ndine985 1:0ed1c151ad16 57 pc.printf("Card ID: ");
mavix14 0:161f7fa5a879 58 for (uint8_t i = 0; i < RfChip.uid.size; i++)
mavix14 0:161f7fa5a879 59 {
mavix14 0:161f7fa5a879 60 pc.printf(" %X02", RfChip.uid.uidByte[i]);
mavix14 0:161f7fa5a879 61 }
mavix14 0:161f7fa5a879 62 pc.printf("\n\r");
mavix14 0:161f7fa5a879 63
ndine985 1:0ed1c151ad16 64 // Print type de Card
mavix14 0:161f7fa5a879 65 uint8_t piccType = RfChip.PICC_GetType(RfChip.uid.sak);
mavix14 0:161f7fa5a879 66 pc.printf("PICC Type: %s \n\r", RfChip.PICC_GetTypeName(piccType));
mavix14 0:161f7fa5a879 67 wait_ms(1000);
mavix14 0:161f7fa5a879 68 }
mavix14 0:161f7fa5a879 69 }