RFID-RC522 example. The platform board changes into Using WIZwiki-W7500.
Fork of RFID-RC522 by
main.cpp@3:78eca7f5176a, 2017-07-21 (annotated)
- Committer:
- bangbh
- Date:
- Fri Jul 21 08:48:57 2017 +0000
- Revision:
- 3:78eca7f5176a
- Parent:
- 2:a0c7513fb634
Using WIZwiki-W7500 board
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bangbh | 3:78eca7f5176a | 1 | /************************************************/ |
bangbh | 3:78eca7f5176a | 2 | /*IRQ=pin5 -> Not used. Leave open */ |
bangbh | 3:78eca7f5176a | 3 | /*MISO=pin4 -> WIZwiki-W7500 SPI_MISO=D12 */ |
bangbh | 3:78eca7f5176a | 4 | /*MOSI=pin3 -> WIZwiki-W7500 SPI_MOSI=D11 */ |
bangbh | 3:78eca7f5176a | 5 | /*SCK=pin2 -> WIZwiki-W7500 SPI_SCK =D13 */ |
bangbh | 3:78eca7f5176a | 6 | /*SDA=pin1 -> WIZwiki-W7500 SPI_CS =D10 */ |
bangbh | 3:78eca7f5176a | 7 | /*RST=pin7 -> WIZwiki-W7500 =D8 */ |
bangbh | 3:78eca7f5176a | 8 | /************************************************/ |
kirchnet | 2:a0c7513fb634 | 9 | |
kirchnet | 2:a0c7513fb634 | 10 | #include "mbed.h" |
kirchnet | 2:a0c7513fb634 | 11 | #include "MFRC522.h" |
kirchnet | 2:a0c7513fb634 | 12 | |
kirchnet | 2:a0c7513fb634 | 13 | DigitalOut LedGreen(LED1); |
kirchnet | 2:a0c7513fb634 | 14 | |
bangbh | 3:78eca7f5176a | 15 | MFRC522 RfChip (D11, D12, D13, D10, D8); |
kirchnet | 2:a0c7513fb634 | 16 | |
kirchnet | 2:a0c7513fb634 | 17 | int main(void) { |
bangbh | 3:78eca7f5176a | 18 | printf("starting...\n"); |
kirchnet | 2:a0c7513fb634 | 19 | |
kirchnet | 2:a0c7513fb634 | 20 | // Init. RC522 Chip |
kirchnet | 2:a0c7513fb634 | 21 | RfChip.PCD_Init(); |
kirchnet | 2:a0c7513fb634 | 22 | |
bangbh | 3:78eca7f5176a | 23 | printf("initailzed\n"); |
bangbh | 3:78eca7f5176a | 24 | |
kirchnet | 2:a0c7513fb634 | 25 | while (true) { |
kirchnet | 2:a0c7513fb634 | 26 | LedGreen = 1; |
kirchnet | 2:a0c7513fb634 | 27 | |
kirchnet | 2:a0c7513fb634 | 28 | // Look for new cards |
kirchnet | 2:a0c7513fb634 | 29 | if ( ! RfChip.PICC_IsNewCardPresent()) |
kirchnet | 2:a0c7513fb634 | 30 | { |
kirchnet | 2:a0c7513fb634 | 31 | wait_ms(500); |
kirchnet | 2:a0c7513fb634 | 32 | continue; |
kirchnet | 2:a0c7513fb634 | 33 | } |
kirchnet | 2:a0c7513fb634 | 34 | // Select one of the cards |
kirchnet | 2:a0c7513fb634 | 35 | if ( ! RfChip.PICC_ReadCardSerial()) |
kirchnet | 2:a0c7513fb634 | 36 | { |
kirchnet | 2:a0c7513fb634 | 37 | wait_ms(500); |
kirchnet | 2:a0c7513fb634 | 38 | continue; |
kirchnet | 2:a0c7513fb634 | 39 | } |
bangbh | 3:78eca7f5176a | 40 | |
kirchnet | 2:a0c7513fb634 | 41 | LedGreen = 0; |
kirchnet | 2:a0c7513fb634 | 42 | |
kirchnet | 2:a0c7513fb634 | 43 | // Print Card UID |
bangbh | 3:78eca7f5176a | 44 | printf("Card UID: "); |
kirchnet | 2:a0c7513fb634 | 45 | for (uint8_t i = 0; i < RfChip.uid.size; i++) |
kirchnet | 2:a0c7513fb634 | 46 | { |
bangbh | 3:78eca7f5176a | 47 | printf(" %X02", RfChip.uid.uidByte[i]); |
kirchnet | 2:a0c7513fb634 | 48 | } |
bangbh | 3:78eca7f5176a | 49 | printf("\n\r"); |
kirchnet | 2:a0c7513fb634 | 50 | |
kirchnet | 2:a0c7513fb634 | 51 | // Print Card type |
kirchnet | 2:a0c7513fb634 | 52 | uint8_t piccType = RfChip.PICC_GetType(RfChip.uid.sak); |
bangbh | 3:78eca7f5176a | 53 | printf("PICC Type: %s \n\r", RfChip.PICC_GetTypeName(piccType)); |
kirchnet | 2:a0c7513fb634 | 54 | wait_ms(1000); |
kirchnet | 2:a0c7513fb634 | 55 | } |
kirchnet | 2:a0c7513fb634 | 56 | } |