NXP NFC Reader Library v4.040.05.011646

Modules | Functions
ISO/IEC 15693
Application Layer

These Components implement the ISO/IEC 15693 commands. More...

Collaboration diagram for ISO/IEC 15693:

## Modules
| Component : Software

## Functions
phStatus_t | phalI15693_ReadSingleBlock (void *pDataParams, uint8_t bOption, uint8_t bBlockNo, uint8_t **ppRxBuffer, uint16_t *pRxLength)
| When receiving the Read single block command, the VICC shall read the requested block and send back its value in pRxBuffer. More...
phStatus_t | phalI15693_ExtendedReadSingleBlock (void *pDataParams, uint8_t bOption, uint16_t wBlockNo, uint8_t **ppRxBuffer, uint16_t *pRxLength)
| When receiving the Extended read single block command, the VICC shall read the requested block and send back its value in pRxBuffer. More...
phStatus_t | phalI15693_ReadMultipleBlocks (void *pDataParams, uint8_t bOption, uint8_t bBlockNo, uint16_t wNumBlocks, uint8_t **ppRxBuffer, uint16_t *pRxLength)
| When receiving the Read multiple blocks command, the VICC shall read the requested block(s) and send back their value in pRxBuffer. More...
phStatus_t | phalI15693_ExtendedReadMultipleBlocks (void *pDataParams, uint8_t bOption, uint16_t wBlockNo, uint16_t wNumBlocks, uint8_t **ppRxBuffer, uint16_t *pRxLength)
| When receiving the Extended read multiple blocks command, the VICC shall read the requested block(s) and send back their value in pRxBuffer. More...
phStatus_t | phalI15693_WriteSingleBlock (void *pDataParams, uint8_t bOption, uint8_t bBlockNo, uint8_t *pTxBuffer, uint16_t wTxLength)
| When receiving the Write single block command, the VICC shall write the requested block with the data contained in the pTxBuffer. More...
phStatus_t | phalI15693_ExtendedWriteSingleBlock (void *pDataParams, uint8_t bOption, uint16_t wBlockNo, uint8_t *pTxBuffer, uint16_t wTxLength)
| When receiving the Extended write single block command, the VICC shall write the requested block with the data contained in the pTxBuffer. More...
phStatus_t | phalI15693_WriteMultipleBlocks (void *pDataParams, uint8_t bOption, uint8_t bBlockNo, uint16_t wNumBlocks, uint8_t *pTxBuffer, uint16_t wTxLength)
| When receiving the Write multiple blocks command, the VICC shall write the requested block(s) with the data contained in the pTxBuffer. More...
phStatus_t | phalI15693_ExtendedWriteMultipleBlocks (void *pDataParams, uint8_t bOption, uint16_t wBlockNo, uint16_t wNumBlocks, uint8_t *pTxBuffer, uint16_t wTxLength)
| When receiving the Extended write multiple blocks command, the VICC shall write the requested block(s) with the data contained in the pTxBuffer. More...
phStatus_t | phalI15693_LockBlock (void *pDataParams, uint8_t bOption, uint8_t bBlockNo)
| When receiving the Lock block command, the VICC shall lock permanently the requested block. More...
phStatus_t | phalI15693_ExtendedLockBlock (void *pDataParams, uint8_t bOption, uint16_t wBlockNo)
| When receiving the Extended lock block command, the VICC shall lock permanently the requested block for extended memory tags. More...
phStatus_t | phalI15693_WriteAFI (void *pDataParams, uint8_t bOption, uint8_t bAfi)
| When receiving the Write AFI request, the VICC shall write the AFI value into its memory. More...
phStatus_t | phalI15693_LockAFI (void *pDataParams, uint8_t bOption)
| When receiving the Lock AFI request, the VICC shall lock the AFI value permanently into its memory. More...
phStatus_t | phalI15693_WriteDSFID (void *pDataParams, uint8_t bOption, uint8_t bDsfid)
| When receiving the Write DSFID request, the VICC shall write the DSFID value into its memory. More...
phStatus_t | phalI15693_LockDSFID (void *pDataParams, uint8_t bOption)
| When receiving the Lock DSFID request, the VICC shall lock the DSFID value permanently into its memory. More...
phStatus_t | phalI15693_GetSystemInformation (void *pDataParams, uint8_t **ppRxBuffer, uint16_t *pRxLength)
| This command allows for retrieving the system information value from the VICC. More...
phStatus_t | phalI15693_ExtendedGetSystemInformation (void *pDataParams, uint8_t **ppRxBuffer, uint16_t *pRxLength)
| This command allows for retrieving the system information value from the VICC for extended memory tags. More...
phStatus_t | phalI15693_GetMultipleBlockSecurityStatus (void *pDataParams, uint8_t bBlockNo, uint16_t wNumBlocks, uint8_t **ppRxBuffer, uint16_t *pRxLength)
| When receiving the Get multiple block security status command, the VICC shall send back the block security status. More...
phStatus_t | phalI15693_ExtendedGetMultipleBlockSecurityStatus (void *pDataParams, uint16_t wBlockNo, uint16_t wNumBlocks, uint8_t **ppRxBuffer, uint16_t *pRxLength)
| When receiving the Extended get multiple block security status command, the VICC shall send back the block security status (for extended memory tags). More...

## Options
#define | PHAL_I15693_OPTION_OFF PH_OFF
| Option Bit is cleared. More...
#define | PHAL_I15693_OPTION_ON PH_ON
| Option Bit is set. More...
#define | PHAL_I15693_OPTION_DEFAULT PHAL_I15693_OPTION_OFF
| Default Option. More...

## Detailed Description

These Components implement the ISO/IEC 15693 commands.

## Macro Definition Documentation

## § PHAL_I15693_OPTION_OFF

#define PHAL_I15693_OPTION_OFF PH_OFF

Option Bit is cleared.

## § PHAL_I15693_OPTION_ON

#define PHAL_I15693_OPTION_ON PH_ON

Option Bit is set.

## § PHAL_I15693_OPTION_DEFAULT

#define PHAL_I15693_OPTION_DEFAULT PHAL_I15693_OPTION_OFF

Default Option.

## Function Documentation

## § phalI15693_ReadSingleBlock()

phStatus_t phalI15693_ReadSingleBlock | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint8_t | bBlockNo,
|  | uint8_t ** | ppRxBuffer,
|  | uint16_t * | pRxLength
| ) |  |

When receiving the Read single block command, the VICC shall read the requested block and send back its value in pRxBuffer.

Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | bBlockNo | Block number.
  [out] | ppRxBuffer | Pointer to received data.
  [out] | pRxLength | number of received data bytes.

## § phalI15693_ExtendedReadSingleBlock()

phStatus_t phalI15693_ExtendedReadSingleBlock | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint16_t | wBlockNo,
|  | uint8_t ** | ppRxBuffer,
|  | uint16_t * | pRxLength
| ) |  |

When receiving the Extended read single block command, the VICC shall read the requested block and send back its value in pRxBuffer.

This command shall be used for extended memory tags. Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | wBlockNo | Block number.
  [out] | ppRxBuffer | Pointer to received data.
  [out] | pRxLength | number of received data bytes.

## § phalI15693_ReadMultipleBlocks()

phStatus_t phalI15693_ReadMultipleBlocks | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint8_t | bBlockNo,
|  | uint16_t | wNumBlocks,
|  | uint8_t ** | ppRxBuffer,
|  | uint16_t * | pRxLength
| ) |  |

When receiving the Read multiple blocks command, the VICC shall read the requested block(s) and send back their value in pRxBuffer.

Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | bBlockNo | First Block number.
  [in] | wNumBlocks | Number of blocks.
  [out] | ppRxBuffer | Pointer to received data.
  [out] | pRxLength | number of received data bytes.

## § phalI15693_ExtendedReadMultipleBlocks()

phStatus_t phalI15693_ExtendedReadMultipleBlocks | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint16_t | wBlockNo,
|  | uint16_t | wNumBlocks,
|  | uint8_t ** | ppRxBuffer,
|  | uint16_t * | pRxLength
| ) |  |

When receiving the Extended read multiple blocks command, the VICC shall read the requested block(s) and send back their value in pRxBuffer.

This command shall be used for extended memory tags. Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | wBlockNo | First Block number.
  [in] | wNumBlocks | Number of blocks.
  [out] | ppRxBuffer | Pointer to received data.
  [out] | pRxLength | number of received data bytes.

## § phalI15693_WriteSingleBlock()

phStatus_t phalI15693_WriteSingleBlock | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint8_t | bBlockNo,
|  | uint8_t * | pTxBuffer,
|  | uint16_t | wTxLength
| ) |  |

When receiving the Write single block command, the VICC shall write the requested block with the data contained in the pTxBuffer.

Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | bBlockNo | Block number.
  [in] | pTxBuffer | Data to transmit.
  [in] | wTxLength | number of bytes to send

## § phalI15693_ExtendedWriteSingleBlock()

phStatus_t phalI15693_ExtendedWriteSingleBlock | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint16_t | wBlockNo,
|  | uint8_t * | pTxBuffer,
|  | uint16_t | wTxLength
| ) |  |

When receiving the Extended write single block command, the VICC shall write the requested block with the data contained in the pTxBuffer.

This command shall be used for extended memory tags. Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | wBlockNo | Block number.
  [in] | pTxBuffer | Data to transmit.
  [in] | wTxLength | number of bytes to send

## § phalI15693_WriteMultipleBlocks()

phStatus_t phalI15693_WriteMultipleBlocks | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint8_t | bBlockNo,
|  | uint16_t | wNumBlocks,
|  | uint8_t * | pTxBuffer,
|  | uint16_t | wTxLength
| ) |  |

When receiving the Write multiple blocks command, the VICC shall write the requested block(s) with the data contained in the pTxBuffer.

Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | bBlockNo | First Block number.
  [in] | wNumBlocks | Number of blocks (real number, is automatically decremented by one).
  [in] | pTxBuffer | Data to transmit.
  [in] | wTxLength | number of bytes to send

## § phalI15693_ExtendedWriteMultipleBlocks()

phStatus_t phalI15693_ExtendedWriteMultipleBlocks | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint16_t | wBlockNo,
|  | uint16_t | wNumBlocks,
|  | uint8_t * | pTxBuffer,
|  | uint16_t | wTxLength
| ) |  |

When receiving the Extended write multiple blocks command, the VICC shall write the requested block(s) with the data contained in the pTxBuffer.

This command shall be used for extended memory tags. Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | wBlockNo | First Block number.
  [in] | wNumBlocks | Number of blocks (real number, is automatically decremented by one).
  [in] | pTxBuffer | Data to transmit.
  [in] | wTxLength | number of bytes to send

## § phalI15693_LockBlock()

phStatus_t phalI15693_LockBlock | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint8_t | bBlockNo
| ) |  |

When receiving the Lock block command, the VICC shall lock permanently the requested block.

Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | bBlockNo | Block number.

## § phalI15693_ExtendedLockBlock()

phStatus_t phalI15693_ExtendedLockBlock | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint16_t | wBlockNo
| ) |  |

When receiving the Extended lock block command, the VICC shall lock permanently the requested block for extended memory tags.

This command shall be used for extended memory tags. Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | wBlockNo | Block number.

## § phalI15693_WriteAFI()

phStatus_t phalI15693_WriteAFI | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint8_t | bAfi
| ) |  |

When receiving the Write AFI request, the VICC shall write the AFI value into its memory.

Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | bAfi | Value of Application Family Identifier.

## § phalI15693_LockAFI()

phStatus_t phalI15693_LockAFI | ( | void * | pDataParams,
|  | uint8_t | bOption
| ) |  |

When receiving the Lock AFI request, the VICC shall lock the AFI value permanently into its memory.

Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.

## § phalI15693_WriteDSFID()

phStatus_t phalI15693_WriteDSFID | ( | void * | pDataParams,
|  | uint8_t | bOption,
|  | uint8_t | bDsfid
| ) |  |

When receiving the Write DSFID request, the VICC shall write the DSFID value into its memory.

Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlaying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.
  [in] | bDsfid | Value of DSFID(data storage format identifier).

## § phalI15693_LockDSFID()

phStatus_t phalI15693_LockDSFID | ( | void * | pDataParams,
|  | uint8_t | bOption
| ) |  |

When receiving the Lock DSFID request, the VICC shall lock the DSFID value permanently into its memory.

Option_flag can be set by using phpalSli15693_SetConfig command

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bOption | Option flag; `PHAL_I15693_OPTION_OFF:` disable; `PHAL_I15693_OPTION_ON:` enable.

## § phalI15693_GetSystemInformation()

phStatus_t phalI15693_GetSystemInformation | ( | void * | pDataParams,
|  | uint8_t ** | ppRxBuffer,
|  | uint16_t * | pRxLength
| ) |  |

This command allows for retrieving the system information value from the VICC.

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [out] | ppRxBuffer | Pointer to received data.
  [out] | pRxLength | number of received data bytes.

## § phalI15693_ExtendedGetSystemInformation()

phStatus_t phalI15693_ExtendedGetSystemInformation | ( | void * | pDataParams,
|  | uint8_t ** | ppRxBuffer,
|  | uint16_t * | pRxLength
| ) |  |

This command allows for retrieving the system information value from the VICC for extended memory tags.

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [out] | ppRxBuffer | Pointer to received data.
  [out] | pRxLength | number of received data bytes.

## § phalI15693_GetMultipleBlockSecurityStatus()

phStatus_t phalI15693_GetMultipleBlockSecurityStatus | ( | void * | pDataParams,
|  | uint8_t | bBlockNo,
|  | uint16_t | wNumBlocks,
|  | uint8_t ** | ppRxBuffer,
|  | uint16_t * | pRxLength
| ) |  |

When receiving the Get multiple block security status command, the VICC shall send back the block security status.

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | bBlockNo | Block number.
  [in] | wNumBlocks | Number of blocks.
  [out] | ppRxBuffer | Pointer to received data.
  [out] | pRxLength | number of received data bytes.

## § phalI15693_ExtendedGetMultipleBlockSecurityStatus()

phStatus_t phalI15693_ExtendedGetMultipleBlockSecurityStatus | ( | void * | pDataParams,
|  | uint16_t | wBlockNo,
|  | uint16_t | wNumBlocks,
|  | uint8_t ** | ppRxBuffer,
|  | uint16_t * | pRxLength
| ) |  |

When receiving the Extended get multiple block security status command, the VICC shall send back the block security status (for extended memory tags).

Returns
  Status code

Return values

  PH_ERR_SUCCESS | Operation successful.
  Other | Depending on implementation and underlying component.

Parameters

  [in] | pDataParams | Pointer to this layers parameter structure.
  [in] | wBlockNo | Block number.
  [in] | wNumBlocks | Number of blocks.
  [out] | ppRxBuffer | Pointer to received data.
  [out] | pRxLength | number of received data bytes.