+ Collaboration diagram for Functions:

Functions

uint16_t app_iso7816_init (app_iso7816_params_t *p_params, app_iso7816_evt_handler_t evt_handler)
 Initialize the APP ISO7816 DRIVER according to the specified parameters in the app_iso7816_params_t and app_iso7816_evt_handler_t. More...
 
uint16_t app_iso7816_deinit (void)
 De-initialize the APP ISO7816 DRIVER peripheral. More...
 
uint16_t app_iso7816_receive_sync (uint16_t size, uint32_t timeout)
 Receive an amount of data in blocking mode. More...
 
uint16_t app_iso7816_receive_async (uint16_t size)
 Receive an amount of data in non-blocking mode with Interrupt/DMA. More...
 
uint16_t app_iso7816_transmit_sync (uint16_t size, uint32_t timeout)
 Transmits an amount of data in blocking mode. More...
 
uint16_t app_iso7816_transmit_async (uint16_t size)
 Transmits an amount of data in non-blocking mode with Interrupt/DMA. More...
 
uint16_t app_iso7816_transmit_receive_sync (uint16_t tx_size, uint16_t rx_size, uint32_t timeout)
 Transmit and receive in master mode an amount of data in blocking mode. More...
 
uint16_t app_iso7816_transmit_receive_async (uint16_t tx_size, uint16_t rx_size)
 Transmit and receive in master mode an amount of data in non-blocking mode. More...
 
uint16_t app_iso7816_set_action (uint32_t action)
 Request ISO7816 to go to the next action. More...
 
uint32_t app_iso7816_get_power_states (void)
 Get ISO7816 Power States. More...
 
uint16_t app_iso7816_set_etudiv (uint32_t divide)
 Set divide ISO7816 clock. More...
 
iso7816_handle_tapp_iso7816_get_handle (void)
 Return the ISO7816 handle. More...
 

Detailed Description

Function Documentation

◆ app_iso7816_deinit()

uint16_t app_iso7816_deinit ( void  )

De-initialize the APP ISO7816 DRIVER peripheral.

Returns
Result of De-initialization.

◆ app_iso7816_get_handle()

iso7816_handle_t* app_iso7816_get_handle ( void  )

Return the ISO7816 handle.

Returns
Pointer to the specified ID's ISO7816 handle.

◆ app_iso7816_get_power_states()

◆ app_iso7816_init()

uint16_t app_iso7816_init ( app_iso7816_params_t p_params,
app_iso7816_evt_handler_t  evt_handler 
)

Initialize the APP ISO7816 DRIVER according to the specified parameters in the app_iso7816_params_t and app_iso7816_evt_handler_t.

Note
If interrupt mode is set, you can use blocking mode. Conversely, if blocking mode is set, you can't use interrupt mode.
Parameters
[in]p_paramsPointer to app_iso7816_params_t parameter which contains the configuration information for the specified ISO7816 module.
[in]evt_handlerISO7816 user callback function.
Returns
Result of initialization.

◆ app_iso7816_receive_async()

uint16_t app_iso7816_receive_async ( uint16_t  size)

Receive an amount of data in non-blocking mode with Interrupt/DMA.

Parameters
[in]sizeAmount of data to be sent
Returns
Result of operation.

◆ app_iso7816_receive_sync()

uint16_t app_iso7816_receive_sync ( uint16_t  size,
uint32_t  timeout 
)

Receive an amount of data in blocking mode.

Parameters
[in]sizeAmount of data to be sent
[in]timeoutTimeout duration
Returns
Result of operation.

◆ app_iso7816_set_action()

uint16_t app_iso7816_set_action ( uint32_t  action)

Request ISO7816 to go to the next action.

Parameters
actionThis parameter can be one of the following values:
Returns
Result of operation.

◆ app_iso7816_set_etudiv()

uint16_t app_iso7816_set_etudiv ( uint32_t  divide)

Set divide ISO7816 clock.

Note
Divide SIM clock by this value+1 to define ETU length. The reset value is the one, needed for theATR.
Parameters
divideThis parameter should range between 0x0 and 0x3FF.
Returns
Result of operation.

◆ app_iso7816_transmit_async()

uint16_t app_iso7816_transmit_async ( uint16_t  size)

Transmits an amount of data in non-blocking mode with Interrupt/DMA.

Parameters
[in]sizeAmount of data to be sent
Returns
Result of operation.

◆ app_iso7816_transmit_receive_async()

uint16_t app_iso7816_transmit_receive_async ( uint16_t  tx_size,
uint16_t  rx_size 
)

Transmit and receive in master mode an amount of data in non-blocking mode.

Parameters
[in]tx_sizeAmount of data to be sent
[in]rx_sizeAmount of data to be receive
Returns
Result of operation.

◆ app_iso7816_transmit_receive_sync()

uint16_t app_iso7816_transmit_receive_sync ( uint16_t  tx_size,
uint16_t  rx_size,
uint32_t  timeout 
)

Transmit and receive in master mode an amount of data in blocking mode.

Parameters
[in]tx_sizeAmount of data to be sent
[in]rx_sizeAmount of data to be receive
[in]timeoutTimeout duration
Returns
Result of operation.

◆ app_iso7816_transmit_sync()

uint16_t app_iso7816_transmit_sync ( uint16_t  size,
uint32_t  timeout 
)

Transmits an amount of data in blocking mode.

Parameters
[in]sizeAmount of data to be sent
[in]timeoutTimeout duration
Returns
Result of operation.