mbed OS 5 example application using X-NUCLEO-NFC02A1

Dependencies:   NDefLib X_NUCLEO_NFC02A1

Fork of HelloWorld_NFC02A1 by ST

Revision:
2:6f1b1f7f8d12
Parent:
1:11ae12d41082
--- a/X_NUCLEO_NFC02A1/m24lr/NDefNfcTagM24LR.h	Tue Aug 30 09:18:50 2016 +0000
+++ b/X_NUCLEO_NFC02A1/m24lr/NDefNfcTagM24LR.h	Wed Sep 28 11:26:49 2016 +0000
@@ -42,23 +42,9 @@
 #include <stdint.h>
 
 #include "NDefNfcTag.h"
-#include "Nfc_class.h"
-
-//#include "m24lr.h"
+#include "Nfc.h"
 
-#define NFCT5_MAGICNUMBER_E1_CCFILE       0xE1
-#define NFCT5_MAGICNUMBER_E2_CCFILE       0xE2
-#define NFCT5_EXTENDED_CCFILE             0xFF
-#define NFCT5_VERSION_V1_0                0x40
-#define NFCT5_READ_ACCESS                 0x0C
-#define NFCT5_WRITE_ACCESS                0x03
-
-#define NFCT5_NDEF_MSG_TLV                0x03
-#define NFCT5_PROPRIETARY_TLV             0xFD
-#define NFCT5_TERMINATOR_TLV              0xFE
-#define NFCT5_3_BYTES_L_TLV               0xFF
-    
-#define NFC_OK                   0
+#define NFC_OK                      0
 #define NDEF_OK                     0
 #define NDEF_ERROR                  1
 #define NDEF_ERROR_MEMORY_TAG       2
@@ -66,52 +52,6 @@
 #define NDEF_ERROR_LOCKED           4
 #define NDEF_ERROR_NOT_FORMATED     5
 
-#define NDEF_MAX_SIZE               NFC_DEVICE_MAX_NDEFMEMORY
-
-#define NDEF_SIZE_OFFSET            0
-#define FIRST_RECORD_OFFSET         2
-
-#ifndef MIN
-#define MIN(x, y) (((x) < (y)) ? (x) : (y))
-#endif
-
-#define NFCTAG_4M_SIZE            0x200
-#define NFCTAG_16M_SIZE           0x800
-#define NFCTAG_64M_SIZE           0x2000
-
-    
-#define MAX_NDEF_MEM                 0x200
-#define M24LR_MAX_SIZE               NFCTAG_4M_SIZE
-#define M24LR_NDEF_MAX_SIZE          MIN(M24LR_MAX_SIZE,MAX_NDEF_MEM)
-#define NFC_DEVICE_MAX_NDEFMEMORY    M24LR_NDEF_MAX_SIZE
-    
-
-
-typedef enum
-{
-  TT5_NO_NDEF = 0,
-  TT5_INITIALIZED,
-  TT5_READ_WRITE,
-  TT5_READ
-} TT5_State;
-
-/**
-  * @brief  CCfile structure
-  */
-typedef struct
-{
-  uint8_t MagicNumber;  /* Magic Number should be E1h or E2h */
-  uint8_t Version;
-  uint8_t MemorySize;
-  uint8_t TT5Tag;
-  uint8_t rsved1;
-  uint8_t rsved2;
-  uint16_t ExtMemorySize;
-  TT5_State State;
-  uint32_t NDEF_offset;
-}sCCFileInfo;
-
-
 /**
  * Helper class to use the NDefLib
  */
@@ -137,12 +77,7 @@
     virtual bool isSessionOpen(){
         return mIsSessionOpen;
     }
-        uint16_t ReadData( uint16_t Offset , uint16_t DataSize , uint8_t* pData );
-        uint16_t WriteData( uint16_t Offset , uint32_t DataSize , uint8_t *pData );
-        uint16_t NfcType5_WriteCCFile( const uint8_t * const pCCBuffer );
-        uint16_t NfcType5_ReadCCFile( uint8_t * const pCCBuffer );
-        uint16_t NfcType5_TT5Init( void );
-        uint16_t NfcType5_NDEFDetection( void );
+        
     /**
     * Close the open session.
     */
@@ -161,10 +96,18 @@
                 bool NDefWriteByte(const uint8_t *buffer, uint16_t length,uint16_t offset);
 
 
-                bool NDefReadByte(const uint16_t byteOffset, const uint16_t length, uint8_t *buffer);
+        
 
     private:
+        bool NDefReadByte(const uint16_t byteOffset, const uint16_t length,
+             uint8_t *buffer);
 
+        uint16_t ReadData( uint16_t Offset , uint16_t DataSize , uint8_t* pData );
+        uint16_t WriteData( uint16_t Offset , uint32_t DataSize , uint8_t *pData );
+        uint16_t NfcType5_WriteCCFile( const uint8_t * const pCCBuffer );
+        uint16_t NfcType5_ReadCCFile( uint8_t * const pCCBuffer );
+        uint16_t NfcType5_TT5Init( void );
+        uint16_t NfcType5_NDEFDetection( void );
         Nfc &mDevice;
 
         /**
@@ -181,9 +124,35 @@
         * Max length for a write operation
         */
         uint16_t mMaxWriteBytes;
+        typedef enum
+        {
+          TT5_NO_NDEF = 0,
+          TT5_INITIALIZED,
+          TT5_READ_WRITE,
+          TT5_READ
+        } TT5_State;
+        
+        /**
+          * @brief  CCfile structure
+          */
+        typedef struct
+        {
+          uint8_t MagicNumber;  /* Magic Number should be E1h or E2h */
+          uint8_t Version;
+          uint8_t MemorySize;
+          uint8_t TT5Tag;
+          uint8_t rsved1;
+          uint8_t rsved2;
+          uint16_t ExtMemorySize;
+          TT5_State State;
+          uint32_t NDEF_offset;
+        }sCCFileInfo;
                 
                 sCCFileInfo CCFileStruct;
 
     };
 
 #endif /* X_NUCLEO_NFC02A1_M24LR_NDEFNFCTAGM24LR_H_ */
+
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/