NXP Reader Library  v17.1.0.2535

SAM commands used for ISO14443 layer 3 communication in X-Mode. More...

Collaboration diagram for ISO14443-3:

Functions

phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_RequestA_Wakeup (phhalHw_SamAV3_DataParams_t *pDataParams, uint8_t bCmdCode, uint8_t *pAtqa)
 Perform a request or wake-up command (type A). More...
 
phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_AnticollisionSelect (phhalHw_SamAV3_DataParams_t *pDataParams, uint8_t *pSelCodes, uint8_t bSelCodesLen, uint8_t *pSak, uint8_t *pUid, uint8_t *pUidLen)
 Perform a bit-wise anticollision and select. More...
 
phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_ActivateIdle (phhalHw_SamAV3_DataParams_t *pDataParams, uint8_t bOption, uint8_t bNumCards, uint16_t wTime, uint8_t *pAtqaIn, uint8_t *pSakIn, uint8_t **ppResponse, uint16_t *pRespLen)
 Perform one or several request - anticollision - select sequences (type A). More...
 
phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_ActivateWakeUp (phhalHw_SamAV3_DataParams_t *pDataParams, uint8_t *pUid, uint8_t bUidLen)
 Perform a reactivate and select for a card in halt state (type A). More...
 
phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_HaltA (phhalHw_SamAV3_DataParams_t *pDataParams)
 Perform a halt command (type A). More...
 
phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_TransparentExchange (phhalHw_SamAV3_DataParams_t *pDataParams, uint8_t *pTxBuf, uint8_t bTxLen, uint8_t bTxBitLen, uint8_t **ppRxBuf, uint16_t *pRxLen, uint8_t *pRxBitLen)
 Perform a transparent exchange command (type A). More...
 

Sam AV3 command code for Sam ISO1443-3 feature.

#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_REQUEST_WAKEUP_INS   0x25
 Sam AV3 Insturction code for Cmd.ISO14443-3_Request_Wakeup command.
 
#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_ANTICOLLSION_SELECT_INS   0x93
 Sam AV3 Insturction code for Cmd.ISO14443-3_Anticollision_Select command.
 
#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_ACTIVATE_IDLE_INS   0x26
 Sam AV3 Insturction code for Cmd.ISO14443-3_ActivateIdle command.
 
#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_ACTIVATE_WAKEUP_INS   0x52
 Sam AV3 Insturction code for Cmd.ISO14443-3_ActivateWakeup command.
 
#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_HALTA_INS   0x50
 Sam AV3 Insturction code for Cmd.ISO14443-3_HaltA command.
 
#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_TRANSPARENT_EXCHANGE_INS   0x7E
 Sam AV3 Insturction code for Cmd.ISO14443-3_TransparentExchange command.
 

Option for Cmd.ISO14443-3_Request_Wakeup command.

#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_REQUEST_WAKEUP_REQA   0x26
 Request command code.
 
#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_REQUEST_WAKEUP_WUPA   0x52
 Wakeup command code.
 

Option for Cmd.ISO14443-3_ActivateIdle command.

#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_ACTIVATEIDLE_DEFAULT   0x00
 Default option mask for ActivateIdle.
 
#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_ACTIVATEIDLE_APPLY_ATQA   0x01
 Option flag for applying the ATQA filter.
 
#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_ACTIVATEIDLE_APPLY_SAK   0x02
 Option flag for applying the SAK filter.
 
#define PHHAL_HW_SAMAV3_CMD_ISO14443_3_ACTIVATEIDLE_APPLY_TIME   0x04
 Option flag for setting the time to wait.
 

Detailed Description

SAM commands used for ISO14443 layer 3 communication in X-Mode.

Function Documentation

◆ phhalHw_SamAV3_Cmd_X_ISO14443_3_RequestA_Wakeup()

phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_RequestA_Wakeup ( phhalHw_SamAV3_DataParams_t pDataParams,
uint8_t  bCmdCode,
uint8_t pAtqa 
)

Perform a request or wake-up command (type A).

Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
OtherDepending on implementation and underlaying component.
Parameters
[in]pDataParams[In] Pointer to this layer's parameter structure.
[in]bCmdCode[In] Command code.
[out]pAtqa[Out] AtqA returned by the card. The buffer has to be 2 bytes long.

◆ phhalHw_SamAV3_Cmd_X_ISO14443_3_AnticollisionSelect()

phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_AnticollisionSelect ( phhalHw_SamAV3_DataParams_t pDataParams,
uint8_t pSelCodes,
uint8_t  bSelCodesLen,
uint8_t pSak,
uint8_t pUid,
uint8_t pUidLen 
)

Perform a bit-wise anticollision and select.

(type A).

Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
OtherDepending on implementation and underlaying component.
Parameters
[in]pDataParams[In] Pointer to this layer's parameter structure.
[in]pSelCodes[In] Buffer containing the SEL sequence bytes (93h, 95h and 97h).
[in]bSelCodesLen[In] Length of the SEL sequence buffer (01h to 03h).
[out]pSak[Out] Pointer to the 1 byte Select Acknowledge reveived from card.
[out]pUid[Out] Buffer containing the received UID. This buffer has to be 10 bytes long.
[out]pUidLen[Out] Amount of valid bytes in UID buffer.

◆ phhalHw_SamAV3_Cmd_X_ISO14443_3_ActivateIdle()

phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_ActivateIdle ( phhalHw_SamAV3_DataParams_t pDataParams,
uint8_t  bOption,
uint8_t  bNumCards,
uint16_t  wTime,
uint8_t pAtqaIn,
uint8_t pSakIn,
uint8_t **  ppResponse,
uint16_t pRespLen 
)

Perform one or several request - anticollision - select sequences (type A).

Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
OtherDepending on implementation and underlaying component.
Parameters
[in]pDataParams[In] Pointer to this layer's parameter structure.
[in]bOption[In] Option parameter:
[in]bNumCards[In] Holds the number of cards to activate.
[in]wTime[In] Time to wait for a card.
[in]pAtqaIn[In] Buffer containing the AtqA filter. This buffer has to be 4 bytes long.
[in]pSakIn[In] Buffer containing the Sak filter. This buffer has to be 2 bytes long.
[out]ppResponse[Out] Pointer to the buffer containing the received data.
[out]pRespLen[Out] Amount of valid bytes in Response buffer.

◆ phhalHw_SamAV3_Cmd_X_ISO14443_3_ActivateWakeUp()

phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_ActivateWakeUp ( phhalHw_SamAV3_DataParams_t pDataParams,
uint8_t pUid,
uint8_t  bUidLen 
)

Perform a reactivate and select for a card in halt state (type A).

Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
OtherDepending on implementation and underlaying component.
Parameters
[in]pDataParams[In] Pointer to this layer's parameter structure.
[in]pUid[In] UID of the card to reactivate.
[in]bUidLen[In] Length of UID (4, 7 or 10 bytes).

◆ phhalHw_SamAV3_Cmd_X_ISO14443_3_HaltA()

phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_HaltA ( phhalHw_SamAV3_DataParams_t pDataParams)

Perform a halt command (type A).

Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
OtherDepending on implementation and underlaying component.
Parameters
[in]pDataParams[In] Pointer to this layer's parameter structure.

◆ phhalHw_SamAV3_Cmd_X_ISO14443_3_TransparentExchange()

phStatus_t phhalHw_SamAV3_Cmd_X_ISO14443_3_TransparentExchange ( phhalHw_SamAV3_DataParams_t pDataParams,
uint8_t pTxBuf,
uint8_t  bTxLen,
uint8_t  bTxBitLen,
uint8_t **  ppRxBuf,
uint16_t pRxLen,
uint8_t pRxBitLen 
)

Perform a transparent exchange command (type A).

Returns
Status code
Return values
PH_ERR_SUCCESSOperation successful.
OtherDepending on implementation and underlaying component.
Parameters
[in]pDataParams[In] Pointer to this layer's parameter structure.
[in]pTxBuf[In] Buffer containing the data to be sent. The buffer has to be bTxLength bytes long.
[in]bTxLen[In] Number of bytes to be sent to the card.
[in]bTxBitLen[In] Number valid bits in the last byte of the bTxBuffer. If set to 00h all bits are valid.
[out]ppRxBuf[Out] Pointer to the buffer containing the received data.
[out]pRxLen[Out] Amount of valid bytes in RxBuffer.
[out]pRxBitLen[Out] Amount of valid bits in the last byte in case of an incomplete byte.