These Components implement the ISO/IEC 14443-3 Type-A contactless protocol.
More...
|
| phStatus_t | phpalI14443p3a_RequestA (void *pDataParams, uint8_t *pAtqa) |
| | Perform a ISO14443-3A Request A command. More...
|
| |
| phStatus_t | phpalI14443p3a_WakeUpA (void *pDataParams, uint8_t *pAtqa) |
| | Perform a ISO14443-3A Wakeup A command. More...
|
| |
| phStatus_t | phpalI14443p3a_HaltA (void *pDataParams) |
| | Perform a ISO14443-3A Halt command. More...
|
| |
| phStatus_t | phpalI14443p3a_Anticollision (void *pDataParams, uint8_t bCascadeLevel, uint8_t *pUidIn, uint8_t bNvbUidIn, uint8_t *pUidOut, uint8_t *pNvbUidOut) |
| | Perform a ISO14443-3A Anticollision or Select command. More...
|
| |
| phStatus_t | phpalI14443p3a_Select (void *pDataParams, uint8_t bCascadeLevel, uint8_t *pUidIn, uint8_t *pSak) |
| | Perform a ISO14443-3A Select command. More...
|
| |
| phStatus_t | phpalI14443p3a_ActivateCard (void *pDataParams, uint8_t *pUidIn, uint8_t bLenUidIn, uint8_t *pUidOut, uint8_t *pLenUidOut, uint8_t *pSak, uint8_t *pMoreCardsAvailable) |
| | Perform ISO14443-3A ReqA/WupA or ReqS/WupS and Anticollision/Select commands for all cascade levels. More...
|
| |
| phStatus_t | phpalI14443p3a_Exchange (void *pDataParams, uint16_t wOption, uint8_t *pTxBuffer, uint16_t wTxLength, uint8_t **ppRxBuffer, uint16_t *pRxLength) |
| | Perform ISO14443-3A Data Exchange with Picc. More...
|
| |
| phStatus_t | phpalI14443p3a_GetSerialNo (void *pDataParams, uint8_t *pUidOut, uint8_t *pLenUidOut) |
| | Retrieve the serial number. More...
|
| |
These Components implement the ISO/IEC 14443-3 Type-A contactless protocol.
◆ phpalI14443p3a_RequestA()
Perform a ISO14443-3A Request A command.
Note: The "Request Guard Time" (see 6.2.2, ISO/IEC 14443-3:2009(E)) is mandatory and is neither implemented here nor implemented in every Hardware Abstraction Layer layer.
Make sure that either the used HAL or the used application does comply to this rule.
- Returns
- Status code
- Return values
-
- Parameters
-
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [out] | pAtqa | [Out] Response of RequestA command. The buffer cannot be null and size should be 2 bytes long. |
◆ phpalI14443p3a_WakeUpA()
Perform a ISO14443-3A Wakeup A command.
Note: The "Request Guard Time" (see 6.2.2, ISO/IEC 14443-3:2009(E)) is mandatory and is neither implemented here nor implemented in every Hardware Abstraction Layer layer.
Make sure that either the used HAL or the used application does comply to this rule.
- Returns
- Status code
- Return values
-
- Parameters
-
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [out] | pAtqa | [Out] Response of WakeUpA command. The buffer cannot be null and size should be 2 bytes long. |
◆ phpalI14443p3a_HaltA()
| phStatus_t phpalI14443p3a_HaltA |
( |
void * |
pDataParams | ) |
|
Perform a ISO14443-3A Halt command.
- Returns
- Status code
- Return values
-
- Parameters
-
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
◆ phpalI14443p3a_Anticollision()
Perform a ISO14443-3A Anticollision or Select command.
bNvbUidIn != 0x40: Perform Anticollision command.
bNvbUidIn = 0x40: Perform Select command.
- Returns
- Status code
- Return values
-
- Parameters
-
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | bCascadeLevel | [In] Cascade level code.
|
| [in] | pUidIn | [In] Known Uid, can be NULL; uint8_t[0-4]. |
| [in] | bNvbUidIn | [In] Number of valid bits of UidIn. MSB codes the valid bytes, LSB codes the valid bits. |
| [out] | pUidOut | [Out] Complete Uid; uint8_t[4]. |
| [out] | pNvbUidOut | [Out] Number of valid bits of UidOut. MSB codes the valid bytes, LSB codes the valid bits. |
◆ phpalI14443p3a_Select()
Perform a ISO14443-3A Select command.
- Returns
- Status code
- Return values
-
- Parameters
-
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | bCascadeLevel | [In] Cascade level code.
|
| [in] | pUidIn | [In] Uid; uint8_t[4]. |
| [out] | pSak | [Out] Select Acknowledge; uint8_t. |
◆ phpalI14443p3a_ActivateCard()
Perform ISO14443-3A ReqA/WupA or ReqS/WupS and Anticollision/Select commands for all cascade levels.
- Returns
- Status code
- Return values
-
- Parameters
-
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | pUidIn | [In] Known Uid, can be NULL if bLenUidIn is 0; uint8_t[4/7/10]. |
| [in] | bLenUidIn | [In] Length of known Uid; 0/4/7/10. |
| [out] | pUidOut | [Out] Complete Uid; uint8_t[10]. |
| [out] | pLenUidOut | [Out] Length of Uid; 4/7/10. |
| [out] | pSak | [Out] Select Acknowledge; uint8_t. |
| [out] | pMoreCardsAvailable | [Out] Whether there are more cards in the field or not; uint8_t. |
◆ phpalI14443p3a_Exchange()
Perform ISO14443-3A Data Exchange with Picc.
wOption can be one of:
Alternatively, the following bits can be combined:
- Returns
- Status code
- Return values
-
| PH_ERR_SUCCESS | Operation successful. |
| Other | Depending on implementation and underlaying component. |
- Parameters
-
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [in] | wOption | [In] Option parameter. |
| [in] | pTxBuffer | [In] Data to transmit. |
| [in] | wTxLength | [In] Length of data to transmit. |
| [out] | ppRxBuffer | [Out] Pointer to received data. |
| [out] | pRxLength | [Out] number of received data bytes. |
◆ phpalI14443p3a_GetSerialNo()
Retrieve the serial number.
- Returns
- Status code
- Return values
-
- Parameters
-
| [in] | pDataParams | [In] Pointer to this layer's parameter structure. |
| [out] | pUidOut | [Out] Last Complete Uid; uint8_t[10]. |
| [out] | pLenUidOut | [Out] Length of Uid; 4/7/10. |