NXP Reader Library  v17.1.0.2535

Reader Operation Command of HAL DUT Command dispatcher frame. More...

Collaboration diagram for Command_ReaderOps:

Modules

 Command_Codes
 Reader Operation Command Codes of HAL DUT Command dispatcher frame.
 

Functions

phStatus_t phhalHw_DUT_Cmd_RdOps_GetReaderStatus (phhalHw_DUT_DataParams_t *pDataParams, uint8_t **ppReaderStatus, uint16_t *pReaderStatusLen)
 Gets the Status and Firmware Version of the Reader. More...
 
phStatus_t phhalHw_DUT_Cmd_RdOps_Read_Register (phhalHw_DUT_DataParams_t *pDataParams, uint32_t dwRegAddr, uint32_t *pRegData)
 Reads the Register information. More...
 
phStatus_t phhalHw_DUT_Cmd_RdOps_Write_Register (phhalHw_DUT_DataParams_t *pDataParams, uint32_t dwRegAddr, uint32_t dwRegData)
 Reads the Register information. More...
 
phStatus_t phhalHw_DUT_Cmd_RdOps_FieldOn (phhalHw_DUT_DataParams_t *pDataParams)
 Switches ON the RF Field. More...
 
phStatus_t phhalHw_DUT_Cmd_RdOps_FieldOff (phhalHw_DUT_DataParams_t *pDataParams)
 Switches OFF the RF Field. More...
 
phStatus_t phhalHw_DUT_Cmd_RdOps_FieldReset (phhalHw_DUT_DataParams_t *pDataParams)
 Resets the RF Field. More...
 
phStatus_t phhalHw_DUT_Cmd_RdOps_Read_EEPROM (phhalHw_DUT_DataParams_t *pDataParams, uint16_t wOption, uint32_t dwAddr_ProtIndex, uint32_t dwNoOfBytesToRead, uint8_t **ppResponse, uint16_t *pRespLen)
 Reads the EEPROM information. More...
 
phStatus_t phhalHw_DUT_Cmd_RdOps_Write_EEPROM (phhalHw_DUT_DataParams_t *pDataParams, uint16_t wOption, uint32_t dwStartAddr, uint8_t *pData, uint16_t wDataLen)
 Writes the EEPROM information. More...
 

Detailed Description

Reader Operation Command of HAL DUT Command dispatcher frame.

Function Documentation

◆ phhalHw_DUT_Cmd_RdOps_GetReaderStatus()

phStatus_t phhalHw_DUT_Cmd_RdOps_GetReaderStatus ( phhalHw_DUT_DataParams_t pDataParams,
uint8_t **  ppReaderStatus,
uint16_t pReaderStatusLen 
)

Gets the Status and Firmware Version of the Reader.

  • A total of 9 bytes will be returned or lesser. Below is the description of bytes.
    • Byte[0]: ReaderIC.
      • 0x01: RC523
      • 0x02: SAM
      • 0x03: RC663
      • 0x04: PN7642
    • Byte[1]: Configuration
    • Byte[2]: PCSC Mode
    • Byte[3]: Pegoda Reader's Firmware Major Version
    • Byte[4]: Pegoda Reader's Firmware Minor Version
    • Byte[5]: Pegoda Reader's Firmware Build Version
    • Byte[6]: Unknown
    • Byte[7]: Unknown
    • Byte[8]: Unknown
Returns
Status code
Return values
PH_ERR_SUCCESSCommand successfully executed.
PH_ERR_INTERFACE_ERRORCommunication error.
PH_ERR_PROTOCOL_ERRORInvalid frame or unexpected receive data length or command code mismatch.
Parameters
[in]pDataParams[IN] Pointer to this layer parameter structure.
[out]ppReaderStatus[OUT] The Status and Firmware Version information returned by the reader.
[out]pReaderStatusLen[OUT] Length of bytes available in ppReaderStatus buffer.

◆ phhalHw_DUT_Cmd_RdOps_Read_Register()

phStatus_t phhalHw_DUT_Cmd_RdOps_Read_Register ( phhalHw_DUT_DataParams_t pDataParams,
uint32_t  dwRegAddr,
uint32_t pRegData 
)

Reads the Register information.

Returns
Status code
Return values
PH_ERR_SUCCESSCommand successfully executed.
PH_ERR_INTERFACE_ERRORCommunication error.
PH_ERR_PROTOCOL_ERRORInvalid frame or unexpected receive data length or command code mismatch.
Parameters
[in]pDataParams[IN] Pointer to this layer parameter structure.
[in]dwRegAddr[IN] The Register address from where the information should be read.
[out]pRegData[OUT] The Register data for the provided Address.

◆ phhalHw_DUT_Cmd_RdOps_Write_Register()

phStatus_t phhalHw_DUT_Cmd_RdOps_Write_Register ( phhalHw_DUT_DataParams_t pDataParams,
uint32_t  dwRegAddr,
uint32_t  dwRegData 
)

Reads the Register information.

Returns
Status code
Return values
PH_ERR_SUCCESSCommand successfully executed.
PH_ERR_INTERFACE_ERRORCommunication error.
PH_ERR_PROTOCOL_ERRORInvalid frame or unexpected receive data length or command code mismatch.
Parameters
[in]pDataParams[IN] Pointer to this layer parameter structure.
[in]dwRegAddr[IN] The Register address to which the information should be written.
[in]dwRegData[IN] The Register data for the provided Address.

◆ phhalHw_DUT_Cmd_RdOps_FieldOn()

phStatus_t phhalHw_DUT_Cmd_RdOps_FieldOn ( phhalHw_DUT_DataParams_t pDataParams)

Switches ON the RF Field.

Returns
Status code
Return values
PH_ERR_SUCCESSCommand successfully executed.
PH_ERR_INTERFACE_ERRORCommunication error.
PH_ERR_PROTOCOL_ERRORInvalid frame or unexpected receive data length or command code mismatch.
Parameters
[in]pDataParams[IN] Pointer to this layer parameter structure.

◆ phhalHw_DUT_Cmd_RdOps_FieldOff()

phStatus_t phhalHw_DUT_Cmd_RdOps_FieldOff ( phhalHw_DUT_DataParams_t pDataParams)

Switches OFF the RF Field.

Returns
Status code
Return values
PH_ERR_SUCCESSCommand successfully executed.
PH_ERR_INTERFACE_ERRORCommunication error.
PH_ERR_PROTOCOL_ERRORInvalid frame or unexpected receive data length or command code mismatch.
Parameters
[in]pDataParams[IN] Pointer to this layer parameter structure.

◆ phhalHw_DUT_Cmd_RdOps_FieldReset()

phStatus_t phhalHw_DUT_Cmd_RdOps_FieldReset ( phhalHw_DUT_DataParams_t pDataParams)

Resets the RF Field.

Returns
Status code
Return values
PH_ERR_SUCCESSCommand successfully executed.
PH_ERR_INTERFACE_ERRORCommunication error.
PH_ERR_PROTOCOL_ERRORInvalid frame or unexpected receive data length or command code mismatch.
Parameters
[in]pDataParams[IN] Pointer to this layer parameter structure.

◆ phhalHw_DUT_Cmd_RdOps_Read_EEPROM()

phStatus_t phhalHw_DUT_Cmd_RdOps_Read_EEPROM ( phhalHw_DUT_DataParams_t pDataParams,
uint16_t  wOption,
uint32_t  dwAddr_ProtIndex,
uint32_t  dwNoOfBytesToRead,
uint8_t **  ppResponse,
uint16_t pRespLen 
)

Reads the EEPROM information.

Returns
Status code
Return values
PH_ERR_SUCCESSCommand successfully executed.
PH_ERR_INTERFACE_ERRORCommunication error.
PH_ERR_PROTOCOL_ERRORInvalid frame or unexpected receive data length or command code mismatch.
Parameters
[in]pDataParams[IN] Pointer to this layer parameter structure.
[in]wOption[IN] Options to be used for EEPROM Reading.
  • 0x0000: Only dwStartAddr and dwLength information will be exchagned to Reader.
  • dwStartAddr and dwLength along with the specified information to this paramter will be exchagned to Reader. These values are specific to Pegoda - 3 Reader.
    • 0x0010: Read information from User area
    • 0x0011: Read information from Secure Lib area
    • 0x0012: Read information from IC Configuration area
    • 0x0020: Read information from RF Configuration area
  • Values other that above specified ones.
[in]dwAddr_ProtIndex[IN] The EEPROM address or Protocol Index from where the information should be read. One of the following,
  • If wOption = 0x0010, 0x0011 or 0x0012, then 2 byte EEPROM address. This is supported by Pegoda - 3 Reader only.
  • If wOption = 0x0020, then 1 byte Protocol index of the RF Configuration. This is supported by Pegoda - 3 Reader only.
  • If wOption = 0x0000, then 4 byte EEPROM address. Reader other than Pegoda 3 reader.
[in]dwNoOfBytesToRead[IN] Number of bytes to be read from EEPROM starting from address specified. If Reader is Pegoda -3 and wOption = 0x0020, then zero should be provided.
[out]ppResponse[OUT] EEPROM information from the mentioned start address (dwStartAddr) until the requested length. Make sure the buffer is allocated for the requested number of bytes (dwLength).
[out]pRespLen[OUT] Length of bytes available in pResponse buffer

◆ phhalHw_DUT_Cmd_RdOps_Write_EEPROM()

phStatus_t phhalHw_DUT_Cmd_RdOps_Write_EEPROM ( phhalHw_DUT_DataParams_t pDataParams,
uint16_t  wOption,
uint32_t  dwStartAddr,
uint8_t pData,
uint16_t  wDataLen 
)

Writes the EEPROM information.

Returns
Status code
Return values
PH_ERR_SUCCESSCommand successfully executed.
PH_ERR_INTERFACE_ERRORCommunication error.
PH_ERR_PROTOCOL_ERRORInvalid frame or unexpected receive data length or command code mismatch.
Parameters
[in]pDataParams[IN] Pointer to this layer parameter structure.
[in]wOption[IN] Options to be used for EEPROM Writing.
  • 0x0000: Only dwStartAddr and dwLength information will be exchagned to Reader.
  • dwStartAddr and dwLength along with the specified information will be exchagned to Reader. These values are specific to Pegoda - 3 Reader.
    • 0x0010: Read information from User area
    • 0x0011: Read information from Secure Lib area
    • 0x0012: Read information from IC Configuration area
    • 0x0020: Read information from RF Configuration area
[in]dwStartAddr[IN] The EEPROM address information to be written. One of the following,
  • If wOption = 0x0010, 0x0011 or 0x0012, then 2 byte EEPROM address. This is supported by Pegoda - 3 Reader only.
  • If wOption = 0x0020, zero should be provided.
  • If wOption = 0x0000, then 4 byte EEPROM address. Reader other than Pegoda 3 reader.
[in]pData[IN] Information to be written to EERPOM. One of the following,
  • If wOption = 0x0000, 0x0010, 0x0011 or 0x0012, then EEPROM value should be provided.
  • If wOption = 0x0020, then 1 byte Protocol index followed 1 byte Register address followed by 4 byte Register Value. This is supported by Pegoda - 3 Reader only.
    Protocol Index1 ( 1 Byte) || Reg Addr1 ( 1 Byte) || Reg Value1 ( 4 Bytes) || Reg Addr2 ( 1 Byte) || Reg Value2 ( 4 Bytes) || ... Reg AddrN ( 1 Byte) || Reg ValueN ( 4 Bytes)
[in]wDataLen[IN] Length of bytes available in pData buffer.