ST Expansion SW Team / RFAL

Dependents:   mbed-os-nfc05a1

Embed: (wiki syntax)

« Back to documentation index

rfal_nfcDep.h File Reference

rfal_nfcDep.h File Reference

Implementation of NFC-DEP protocol. More...

Go to the source code of this file.

Data Structures

struct  rfalNfcDepConfigs
struct  rfalNfcDepAtrReq
struct  rfalNfcDepAtrRes
struct  rfalNfcDepBufFormat
union  rfalNfcDepActivation
struct  rfalNfcDepInfo
struct  rfalNfcDepDevice
struct  rfalNfcDepAtrParam
struct  rfalNfcDepListenActvParam
struct  rfalNfcDepTargetParam
struct  rfalNfcDepTxRxParam

Typedefs

typedef bool(* rfalNfcDepDeactCallback )(void)

Enumerations

enum  {
  RFAL_NFCDEP_Bx_NO_HIGH_BR = 0x00, RFAL_NFCDEP_Bx_08_848 = 0x01, RFAL_NFCDEP_Bx_16_1695 = 0x02, RFAL_NFCDEP_Bx_32_3390 = 0x04,
  RFAL_NFCDEP_Bx_64_6780 = 0x08
}
enum  {
  RFAL_NFCDEP_Dx_01_106 = RFAL_BR_106, RFAL_NFCDEP_Dx_02_212 = RFAL_BR_212, RFAL_NFCDEP_Dx_04_424 = RFAL_BR_424, RFAL_NFCDEP_Dx_08_848 = RFAL_BR_848,
  RFAL_NFCDEP_Dx_16_1695 = RFAL_BR_1695, RFAL_NFCDEP_Dx_32_3390 = RFAL_BR_3390, RFAL_NFCDEP_Dx_64_6780 = RFAL_BR_6780
}
enum  { RFAL_NFCDEP_LR_64 = 0x00, RFAL_NFCDEP_LR_128 = 0x01, RFAL_NFCDEP_LR_192 = 0x02, RFAL_NFCDEP_LR_254 = 0x03 }
enum  rfalNfcDepCommMode { RFAL_NFCDEP_COMM_PASSIVE, RFAL_NFCDEP_COMM_ACTIVE }
enum  rfalNfcDepRole { RFAL_NFCDEP_ROLE_INITIATOR, RFAL_NFCDEP_ROLE_TARGET }

Functions

void rfalNfcDepInitialize (void)
 NFCIP Initialize.
void rfalNfcDepSetDeactivatingCallback (rfalNfcDepDeactCallback pFunc)
 Set deactivating callback.
uint32_t rfalNfcDepCalculateRWT (uint8_t wt)
 Calculate Response Waiting Time.
ReturnCode rfalNfcDepATR (rfalNfcDepAtrParam *param, rfalNfcDepAtrRes *atrRes, uint8_t *atrResLen, SPI *mspiChannel, ST25R3911 *mST25, DigitalOut *gpio_cs, InterruptIn *IRQ, DigitalOut *fieldLED_01, DigitalOut *fieldLED_02, DigitalOut *fieldLED_03, DigitalOut *fieldLED_04, DigitalOut *fieldLED_05, DigitalOut *fieldLED_06)
 NFC-DEP Initiator ATR (Attribute Request)
ReturnCode rfalNfcDepPSL (uint8_t BRS, uint8_t FSL, SPI *mspiChannel, ST25R3911 *mST25, DigitalOut *gpio_cs, InterruptIn *IRQ, DigitalOut *fieldLED_01, DigitalOut *fieldLED_02, DigitalOut *fieldLED_03, DigitalOut *fieldLED_04, DigitalOut *fieldLED_05, DigitalOut *fieldLED_06)
 NFC-DEP Initiator PSL (Parameter Selection)
ReturnCode rfalNfcDepDSL (SPI *mspiChannel, ST25R3911 *mST25, DigitalOut *gpio_cs, InterruptIn *IRQ, DigitalOut *fieldLED_01, DigitalOut *fieldLED_02, DigitalOut *fieldLED_03, DigitalOut *fieldLED_04, DigitalOut *fieldLED_05, DigitalOut *fieldLED_06)
 NFC-DEP Initiator DSL (Deselect)
ReturnCode rfalNfcDepRLS (SPI *mspiChannel, ST25R3911 *mST25, DigitalOut *gpio_cs, InterruptIn *IRQ, DigitalOut *fieldLED_01, DigitalOut *fieldLED_02, DigitalOut *fieldLED_03, DigitalOut *fieldLED_04, DigitalOut *fieldLED_05, DigitalOut *fieldLED_06)
 NFC-DEP Initiator RLS (Release)
ReturnCode rfalNfcDepInitiatorHandleActivation (rfalNfcDepAtrParam *param, rfalBitRate desiredBR, rfalNfcDepDevice *nfcDepDev, SPI *mspiChannel, ST25R3911 *mST25, DigitalOut *gpio_cs, InterruptIn *IRQ, DigitalOut *fieldLED_01, DigitalOut *fieldLED_02, DigitalOut *fieldLED_03, DigitalOut *fieldLED_04, DigitalOut *fieldLED_05, DigitalOut *fieldLED_06)
 NFC-DEP Initiator Handle Activation.
bool rfalNfcDepIsAtrReq (uint8_t *buf, uint16_t bufLen, uint8_t *nfcid3)
 Check if buffer contains valid ATR_REQ.
bool rfalNfcDepTargetRcvdATR (void)
 Check is Target has received ATR.
ReturnCode rfalNfcDepListenStartActivation (rfalNfcDepTargetParam *param, uint8_t *atrReq, uint16_t atrReqLength, rfalNfcDepListenActvParam rxParam, SPI *mspiChannel, ST25R3911 *mST25, DigitalOut *gpio_cs, InterruptIn *IRQ, DigitalOut *fieldLED_01, DigitalOut *fieldLED_02, DigitalOut *fieldLED_03, DigitalOut *fieldLED_04, DigitalOut *fieldLED_05, DigitalOut *fieldLED_06)
 NFCDEP Start Listen Activation Handling.
ReturnCode rfalNfcDepListenGetActivationStatus (SPI *mspiChannel, ST25R3911 *mST25, DigitalOut *gpio_cs, InterruptIn *IRQ, DigitalOut *fieldLED_01, DigitalOut *fieldLED_02, DigitalOut *fieldLED_03, DigitalOut *fieldLED_04, DigitalOut *fieldLED_05, DigitalOut *fieldLED_06)
 Get the current NFC-DEP Activation Status.
ReturnCode rfalNfcDepStartTransceive (rfalNfcDepTxRxParam *param)
 Start Transceive.
ReturnCode rfalNfcDepGetTransceiveStatus (SPI *mspiChannel, ST25R3911 *mST25, DigitalOut *gpio_cs, InterruptIn *IRQ, DigitalOut *fieldLED_01, DigitalOut *fieldLED_02, DigitalOut *fieldLED_03, DigitalOut *fieldLED_04, DigitalOut *fieldLED_05, DigitalOut *fieldLED_06)
 Return the Transceive status.

Detailed Description

Implementation of NFC-DEP protocol.

Author:
Gustavo Patricio

NFC-DEP is also known as NFCIP - Near Field Communication Interface and Protocol

This implementation was based on the following specs:

  • NFC Forum Digital 1.1
  • ECMA 340 3rd Edition 2013

Definition in file rfal_nfcDep.h.