MCUXpresso SDK API Reference Manual  Rev. 0
NXP Semiconductors
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Smart Card PHY EMVSIM Driver

Overview

The Smart Card interface EMVSIM driver handles the EMVSIM peripheral, which covers all necessary functions to control the ICC. These functions are ICC clock setup, ICC voltage turning on/off, ICC card detection, activation/deactivation, and ICC reset sequences. The EMVSIM peripheral covers all features of interface ICC chips.

Macros

#define SMARTCARD_ATR_DURATION_ADJUSTMENT   (360u)
 Smart card define which specifies the adjustment number of clock cycles during which an ATR string has to be received.
 
#define SMARTCARD_INIT_DELAY_CLOCK_CYCLES_ADJUSTMENT   (4200u)
 Smart card define which specifies the adjustment number of clock cycles until an initial 'TS' character has to be received. More...
 

Functions

void SMARTCARD_PHY_EMVSIM_GetDefaultConfig (smartcard_interface_config_t *config)
 Fills in the smartcardInterfaceConfig structure with default values. More...
 
status_t SMARTCARD_PHY_EMVSIM_Init (EMVSIM_Type *base, const smartcard_interface_config_t *config, uint32_t srcClock_Hz)
 Configures a Smart card interface. More...
 
void SMARTCARD_PHY_EMVSIM_Deinit (EMVSIM_Type *base, const smartcard_interface_config_t *config)
 De-initializes a Smart card interface, stops the Smart card clock, and disables the VCC. More...
 
status_t SMARTCARD_PHY_EMVSIM_Activate (EMVSIM_Type *base, smartcard_context_t *context, smartcard_reset_type_t resetType)
 Activates the Smart card IC. More...
 
status_t SMARTCARD_PHY_EMVSIM_Deactivate (EMVSIM_Type *base, smartcard_context_t *context)
 De-activates the Smart card IC. More...
 
status_t SMARTCARD_PHY_EMVSIM_Control (EMVSIM_Type *base, smartcard_context_t *context, smartcard_interface_control_t control, uint32_t param)
 Controls the Smart card interface IC. More...
 

Macro Definition Documentation

#define SMARTCARD_INIT_DELAY_CLOCK_CYCLES_ADJUSTMENT   (4200u)

Function Documentation

void SMARTCARD_PHY_EMVSIM_GetDefaultConfig ( smartcard_interface_config_t config)
Parameters
configThe user configuration structure of type smartcard_interface_config_t. Function fill in members: clockToResetDelay = 42000, vcc = kSmartcardVoltageClassB3_3V, with default values.
status_t SMARTCARD_PHY_EMVSIM_Init ( EMVSIM_Type *  base,
const smartcard_interface_config_t config,
uint32_t  srcClock_Hz 
)
Parameters
baseThe Smart card peripheral module base address.
configThe user configuration structure of type smartcard_interface_config_t. The user is responsible to fill out the members of this structure and to pass the pointer of this structure into this function or call SMARTCARD_PHY_EMVSIMInitUserConfigDefault to fill out structure with default values.
srcClock_HzSmart card clock generation module source clock.
Return values
kStatus_SMARTCARD_Successor kStatus_SMARTCARD_OtherError for an error.
void SMARTCARD_PHY_EMVSIM_Deinit ( EMVSIM_Type *  base,
const smartcard_interface_config_t config 
)
Parameters
baseSmart card peripheral module base address.
configSmart card configuration structure.
status_t SMARTCARD_PHY_EMVSIM_Activate ( EMVSIM_Type *  base,
smartcard_context_t context,
smartcard_reset_type_t  resetType 
)
Parameters
baseThe EMVSIM peripheral base address.
contextA pointer to a Smart card driver context structure.
resetTypetype of reset to be performed, possible values = kSmartcardColdReset, kSmartcardWarmReset
Return values
kStatus_SMARTCARD_Successor kStatus_SMARTCARD_OtherError for an error.
status_t SMARTCARD_PHY_EMVSIM_Deactivate ( EMVSIM_Type *  base,
smartcard_context_t context 
)
Parameters
baseThe EMVSIM peripheral base address.
contextA pointer to a Smart card driver context structure.
Return values
kStatus_SMARTCARD_Successor kStatus_SMARTCARD_OtherError for an error.
status_t SMARTCARD_PHY_EMVSIM_Control ( EMVSIM_Type *  base,
smartcard_context_t context,
smartcard_interface_control_t  control,
uint32_t  param 
)
Parameters
baseThe EMVSIM peripheral base address.
contextA pointer to a Smart card driver context structure.
controlA interface command type.
paramInteger value specific to control type
Return values
kStatus_SMARTCARD_Successor kStatus_SMARTCARD_OtherError for an error.