This application provides a set of demos with X-NUCLEO-NFC01A1 expansion board.
Dependencies: NDefLib X_NUCLEO_NFC01A1 mbed
Fork of X-MBED-NFC1 by
This application provides a set of demos with X-NUCLEO-NFC01A1 expansion board.
The available demos are:
- SAMPLE_WRITE_URL: write a tag with the ST home page URL
- SAMPLE_COUNT_CLICK: create a custom tag to count and report the user button clicks.
- SAMPLE_WRITE_AND_CHANGE_ALL: write a tag with all the supported records and update the tag contents when the user button is pressed.
- SAMPLE_LOCK_TAG_CONTENT: use the M24SR component API to set the NFC tag as read-only.
To enable the different demos comment/uncomment the SAMPLE_* macros provided in main.cpp .
X_NUCLEO_NFC01A1.cpp
- Committer:
- giovannivisentini
- Date:
- 2015-12-01
- Revision:
- 3:f7f818ee694e
- Parent:
- 2:0648c1561eb2
File content as of revision 3:f7f818ee694e:
/*
* X_NUCLEO_NFC01A1.cpp
*
* Created on: Nov 5, 2015
* Author: giovanni visentini
*/
#include <X_NUCLEO_NFC01A1.h>
const uint8_t X_NUCLEO_NFC01A1::M24SR_ADDR=0xAC;
const PinName X_NUCLEO_NFC01A1::DEFAULT_SDA_PIN=D14;
const PinName X_NUCLEO_NFC01A1::DEFAULT_SDL_PIN=D15;
const PinName X_NUCLEO_NFC01A1::GPO_PIN=D12;
const PinName X_NUCLEO_NFC01A1::RF_DISABLE_PIN=D11;
const PinName X_NUCLEO_NFC01A1::LED1_PIN=D5;
const PinName X_NUCLEO_NFC01A1::LED2_PIN=D4;
const PinName X_NUCLEO_NFC01A1::LED3_PIN=D2;
X_NUCLEO_NFC01A1 *X_NUCLEO_NFC01A1::mInstance = NULL;
X_NUCLEO_NFC01A1* X_NUCLEO_NFC01A1::Instance(I2C &devI2C) {
if (mInstance == NULL) { // the first time
mInstance = new X_NUCLEO_NFC01A1(devI2C);
if (mInstance != NULL) { //allocation ok
const int status = mInstance->mM24SR.Init(NULL);
if (status != NFC_SUCCESS) { //initialization failed
delete mInstance;
error(
"Failed to init X_NUCLEO_NFC01A1 expansion board!\r\nError:0x%X\r\n",
status);
} //if init
} //if instance !=NULL
} //if instance
return mInstance;
}
