Hardware access layer (HAL) for the Near Field Communication Tag (NFCT) peripheral. More...
Macros | |
#define | NRF_NFCT_CRC_SIZE 2 |
#define | NRF_NFCT_DISABLE_ALL_INT 0xFFFFFFFF |
#define | NRF_NFCT_MOD_CTRL_PIN_NOT_CONNECTED 0xFFFFFFFF |
This value can be used as a parameter for the nrf_nfct_mod_ctrl_pin_set function to specify that a given NFCT signal (MODULATION CONTROL) must not be connected to a physical pin. | |
Enumerations | |
enum | nrf_nfct_task_t { NRF_NFCT_TASK_ACTIVATE = offsetof(NRF_NFCT_Type, TASKS_ACTIVATE), NRF_NFCT_TASK_DISABLE = offsetof(NRF_NFCT_Type, TASKS_DISABLE), NRF_NFCT_TASK_SENSE = offsetof(NRF_NFCT_Type, TASKS_SENSE), NRF_NFCT_TASK_STARTTX = offsetof(NRF_NFCT_Type, TASKS_STARTTX), NRF_NFCT_TASK_ENABLERXDATA = offsetof(NRF_NFCT_Type, TASKS_ENABLERXDATA), NRF_NFCT_TASK_GOIDLE = offsetof(NRF_NFCT_Type, TASKS_GOIDLE), NRF_NFCT_TASK_GOSLEEP = offsetof(NRF_NFCT_Type, TASKS_GOSLEEP) } |
NFCT tasks. More... | |
enum | nrf_nfct_event_t { NRF_NFCT_EVENT_READY = offsetof(NRF_NFCT_Type, EVENTS_READY), NRF_NFCT_EVENT_FIELDDETECTED = offsetof(NRF_NFCT_Type, EVENTS_FIELDDETECTED), NRF_NFCT_EVENT_FIELDLOST = offsetof(NRF_NFCT_Type, EVENTS_FIELDLOST), NRF_NFCT_EVENT_TXFRAMESTART = offsetof(NRF_NFCT_Type, EVENTS_TXFRAMESTART), NRF_NFCT_EVENT_TXFRAMEEND = offsetof(NRF_NFCT_Type, EVENTS_TXFRAMEEND), NRF_NFCT_EVENT_RXFRAMESTART = offsetof(NRF_NFCT_Type, EVENTS_RXFRAMESTART), NRF_NFCT_EVENT_RXFRAMEEND = offsetof(NRF_NFCT_Type, EVENTS_RXFRAMEEND), NRF_NFCT_EVENT_ERROR = offsetof(NRF_NFCT_Type, EVENTS_ERROR), NRF_NFCT_EVENT_RXERROR = offsetof(NRF_NFCT_Type, EVENTS_RXERROR), NRF_NFCT_EVENT_ENDRX = offsetof(NRF_NFCT_Type, EVENTS_ENDRX), NRF_NFCT_EVENT_ENDTX = offsetof(NRF_NFCT_Type, EVENTS_ENDTX), NRF_NFCT_EVENT_AUTOCOLRESSTARTED = offsetof(NRF_NFCT_Type, EVENTS_AUTOCOLRESSTARTED), NRF_NFCT_EVENT_COLLISION = offsetof(NRF_NFCT_Type, EVENTS_COLLISION), NRF_NFCT_EVENT_SELECTED = offsetof(NRF_NFCT_Type, EVENTS_SELECTED), NRF_NFCT_EVENT_STARTED = offsetof(NRF_NFCT_Type, EVENTS_STARTED) } |
NFCT events. More... | |
enum | nrf_nfct_short_mask_t { NRF_NFCT_SHORT_FIELDDETECTED_ACTIVATE_MASK = NFCT_SHORTS_FIELDDETECTED_ACTIVATE_Msk, NRF_NFCT_SHORT_FIELDLOST_SENSE_MASK = NFCT_SHORTS_FIELDLOST_SENSE_Msk, NRF_NFCT_SHORT_TXFRAMEEND_ENABLERXDATA_MASK = NFCT_SHORTS_TXFRAMEEND_ENABLERXDATA_Msk } |
NFCT shortcuts. More... | |
enum | nrf_nfct_int_mask_t { NRF_NFCT_INT_READY_MASK = NFCT_INTEN_READY_Msk, NRF_NFCT_INT_FIELDDETECTED_MASK = NFCT_INTEN_FIELDDETECTED_Msk, NRF_NFCT_INT_FIELDLOST_MASK = NFCT_INTEN_FIELDLOST_Msk, NRF_NFCT_INT_TXFRAMESTART_MASK = NFCT_INTEN_TXFRAMESTART_Msk, NRF_NFCT_INT_TXFRAMEEND_MASK = NFCT_INTEN_TXFRAMEEND_Msk, NRF_NFCT_INT_RXFRAMESTART_MASK = NFCT_INTEN_RXFRAMESTART_Msk, NRF_NFCT_INT_RXFRAMEEND_MASK = NFCT_INTEN_RXFRAMEEND_Msk, NRF_NFCT_INT_ERROR_MASK = NFCT_INTEN_ERROR_Msk, NRF_NFCT_INT_RXERROR_MASK = NFCT_INTEN_RXERROR_Msk, NRF_NFCT_INT_ENDRX_MASK = NFCT_INTEN_ENDRX_Msk, NRF_NFCT_INT_ENDTX_MASK = NFCT_INTEN_ENDTX_Msk, NRF_NFCT_INT_AUTOCOLRESSTARTED_MASK = NFCT_INTEN_AUTOCOLRESSTARTED_Msk, NRF_NFCT_INT_COLLISION_MASK = NFCT_INTEN_COLLISION_Msk, NRF_NFCT_INT_SELECTED_MASK = NFCT_INTEN_SELECTED_Msk, NRF_NFCT_INT_STARTED_MASK = NFCT_INTEN_STARTED_Msk } |
NFCT interrupts. More... | |
enum | nrf_nfct_error_status_t { NRF_NFCT_ERROR_FRAMEDELAYTIMEOUT_MASK = NFCT_ERRORSTATUS_FRAMEDELAYTIMEOUT_Msk, NRF_NFCT_ERROR_NFCFIELDTOOSTRONG_MASK = NFCT_ERRORSTATUS_NFCFIELDTOOSTRONG_Msk, NRF_NFCT_ERROR_NFCFIELDTOOWEAK_MASK = NFCT_ERRORSTATUS_NFCFIELDTOOWEAK_Msk } |
NFC error status bit masks. More... | |
enum | nrf_nfct_rx_frame_status_t { NRF_NFCT_RX_FRAME_STATUS_CRC_MASK = NFCT_FRAMESTATUS_RX_CRCERROR_Msk, NRF_NFCT_RX_FRAME_STATUS_PARITY_MASK = NFCT_FRAMESTATUS_RX_PARITYSTATUS_Msk, NRF_NFCT_RX_FRAME_STATUS_OVERRUN_MASK = NFCT_FRAMESTATUS_RX_OVERRUN_Msk } |
NFC received frame status bit masks. More... | |
enum | nrf_nfct_tag_state_t { NRF_NFCT_TAG_STATE_DISABLED = NFCT_NFCTAGSTATE_NFCTAGSTATE_Disabled, NRF_NFCT_TAG_STATE_RAMP_UP = NFCT_NFCTAGSTATE_NFCTAGSTATE_RampUp, NRF_NFCT_TAG_STATE_IDLE = NFCT_NFCTAGSTATE_NFCTAGSTATE_Idle, NRF_NFCT_TAG_STATE_RECEIVE = NFCT_NFCTAGSTATE_NFCTAGSTATE_Receive, NRF_NFCT_TAG_STATE_FRAME_DELAY = NFCT_NFCTAGSTATE_NFCTAGSTATE_FrameDelay, NRF_NFCT_TAG_STATE_TRANSMIT = NFCT_NFCTAGSTATE_NFCTAGSTATE_Transmit } |
NFC tag state. More... | |
enum | nrf_nfct_sleep_state_t { NRF_NFCT_SLEEP_STATE_IDLE = NFCT_SLEEPSTATE_SLEEPSTATE_Idle, NRF_NFCT_SLEEP_STATE_SLEEP_A = NFCT_SLEEPSTATE_SLEEPSTATE_SleepA } |
NFC tag sleep state. More... | |
enum | nrf_nfct_field_state_t { NRF_NFCT_FIELD_STATE_PRESENT_MASK = NFCT_FIELDPRESENT_FIELDPRESENT_Msk, NRF_NFCT_FIELD_STATE_LOCK_MASK = NFCT_FIELDPRESENT_LOCKDETECT_Msk } |
NFC field state bit masks. More... | |
enum | nrf_nfct_frame_delay_mode_t { NRF_NFCT_FRAME_DELAY_MODE_FREERUN = NFCT_FRAMEDELAYMODE_FRAMEDELAYMODE_FreeRun, NRF_NFCT_FRAME_DELAY_MODE_WINDOW = NFCT_FRAMEDELAYMODE_FRAMEDELAYMODE_Window, NRF_NFCT_FRAME_DELAY_MODE_EXACTVAL = NFCT_FRAMEDELAYMODE_FRAMEDELAYMODE_ExactVal, NRF_NFCT_FRAME_DELAY_MODE_WINDOWGRID = NFCT_FRAMEDELAYMODE_FRAMEDELAYMODE_WindowGrid } |
NFC frame delay mode for data transmission. More... | |
enum | nrf_nfct_tx_frame_config_t { NRF_NFCT_TX_FRAME_CONFIG_PARITY = NFCT_TXD_FRAMECONFIG_PARITY_Msk, NRF_NFCT_TX_FRAME_CONFIG_DISCARD_START = NFCT_TXD_FRAMECONFIG_DISCARDMODE_Msk, NRF_NFCT_TX_FRAME_CONFIG_SOF = NFCT_TXD_FRAMECONFIG_SOF_Msk, NRF_NFCT_TX_FRAME_CONFIG_CRC16 = NFCT_TXD_FRAMECONFIG_CRCMODETX_Msk } |
Bit masks for NFC transmission frame configuration. More... | |
enum | nrf_nfct_rx_frame_config_t { NRF_NFCT_RX_FRAME_CONFIG_PARITY = NFCT_RXD_FRAMECONFIG_PARITY_Msk, NRF_NFCT_RX_FRAME_CONFIG_SOF = NFCT_RXD_FRAMECONFIG_SOF_Msk, NRF_NFCT_RX_FRAME_CONFIG_CRC16 = NFCT_RXD_FRAMECONFIG_CRCMODERX_Msk } |
Bit masks for NFC reception frame configuration. More... | |
enum | nrf_nfct_sensres_nfcid1_size_t { NRF_NFCT_SENSRES_NFCID1_SIZE_SINGLE, NRF_NFCT_SENSRES_NFCID1_SIZE_DOUBLE, NRF_NFCT_SENSRES_NFCID1_SIZE_TRIPLE, NRF_NFCT_SENSRES_NFCID1_SIZE_DEFAULT } |
'NFCI1 size' NFC field configuration for the SENS_RES frame according to the NFC Forum Digital Protocol Technical Specification. More... | |
enum | nrf_nfct_sensres_bit_frame_sdd_t { NRF_NFCT_SENSRES_BIT_FRAME_SDD_00000, NRF_NFCT_SENSRES_BIT_FRAME_SDD_00001, NRF_NFCT_SENSRES_BIT_FRAME_SDD_00010, NRF_NFCT_SENSRES_BIT_FRAME_SDD_00100, NRF_NFCT_SENSRES_BIT_FRAME_SDD_01000, NRF_NFCT_SENSRES_BIT_FRAME_SDD_10000 } |
'Bit frame SDD' NFC field configuration for the SENS_RES frame according to the NFC Forum Digital Protocol Technical Specification. More... | |
enum | nrf_nfct_sensres_platform_config_t { NRF_NFCT_SENSRES_PLATFORM_CONFIG_T1T = 6 << NFCT_SENSRES_PLATFCONFIG_Pos, NRF_NFCT_SENSRES_PLATFORM_CONFIG_OTHER = 0 << NFCT_SENSRES_PLATFCONFIG_Pos } |
'Platofrm Config' NFC field configuration for the SENS_RES frame according to the NFC Forum Digital Protocol Technical Specification. More... | |
enum | nrf_nfct_selres_t { NRF_NFCT_SELRES_CASCADE_MASK = NFCT_SELRES_CASCADE_Msk, NRF_NFCT_SELRES_PROTOCOL_MASK = NFCT_SELRES_PROTOCOL_Msk } |
Bit masks for SEL_RES NFC frame configuration. More... | |
enum | nrf_nfct_selres_protocol_t { NRF_NFCT_SELRES_PROTOCOL_T2T = 0, NRF_NFCT_SELRES_PROTOCOL_T4AT = 1, NRF_NFCT_SELRES_PROTOCOL_NFCDEP = 2, NRF_NFCT_SELRES_PROTOCOL_NFCDEP_T4AT = 3 } |
Protocol NFC field (bits b7 and b6) configuration for the SEL_RES frame according to the NFC Forum Digital Protocol Technical Specification. More... | |
enum | nrf_nfct_modulation_ctrl_t { NRF_NFCT_MODULATION_CTRL_INVALID = NFCT_MODULATIONCTRL_MODULATIONCTRL_Invalid, NRF_NFCT_MODULATION_CTRL_INTERNAL = NFCT_MODULATIONCTRL_MODULATIONCTRL_Internal, NRF_NFCT_MODULATION_CTRL_GPIO = NFCT_MODULATIONCTRL_MODULATIONCTRL_ModToGpio, NRF_NFCT_MODULATION_CTRL_INTERNAL_GPIO = NFCT_MODULATIONCTRL_MODULATIONCTRL_InternalAndModToGpio } |
Modulation output configuration. More... | |
Functions | |
NRF_STATIC_INLINE void | nrf_nfct_task_trigger (NRF_NFCT_Type *p_reg, nrf_nfct_task_t task) |
Function for activating a specific NFCT task. More... | |
NRF_STATIC_INLINE uint32_t | nrf_nfct_task_address_get (NRF_NFCT_Type const *p_reg, nrf_nfct_task_t task) |
Function for returning the address of a specific NFCT task register. More... | |
NRF_STATIC_INLINE void | nrf_nfct_event_clear (NRF_NFCT_Type *p_reg, nrf_nfct_event_t event) |
Function for clearing a specific event. More... | |
NRF_STATIC_INLINE bool | nrf_nfct_event_check (NRF_NFCT_Type const *p_reg, nrf_nfct_event_t event) |
Function for retrieving the state of the NFCT event. More... | |
NRF_STATIC_INLINE uint32_t | nrf_nfct_event_address_get (NRF_NFCT_Type const *p_reg, nrf_nfct_event_t event) |
Function for returning the address of a specific NFCT event register. More... | |
NRF_STATIC_INLINE void | nrf_nfct_shorts_enable (NRF_NFCT_Type *p_reg, uint32_t short_mask) |
Function for enabling selected shortcuts. More... | |
NRF_STATIC_INLINE void | nrf_nfct_shorts_disable (NRF_NFCT_Type *p_reg, uint32_t short_mask) |
Function for disabling selected shortcuts. More... | |
NRF_STATIC_INLINE uint32_t | nrf_nfct_shorts_get (NRF_NFCT_Type const *p_reg) |
Function for retrieving the enabled shortcuts. More... | |
NRF_STATIC_INLINE void | nrf_nfct_shorts_set (NRF_NFCT_Type *p_reg, uint32_t short_mask) |
Function for setting shortcuts. More... | |
NRF_STATIC_INLINE void | nrf_nfct_int_enable (NRF_NFCT_Type *p_reg, uint32_t mask) |
Function for enabling the selected interrupts. More... | |
NRF_STATIC_INLINE uint32_t | nrf_nfct_int_enable_check (NRF_NFCT_Type const *p_reg, uint32_t mask) |
Function for checking if the specified interrupts are enabled. More... | |
NRF_STATIC_INLINE uint32_t | nrf_nfct_int_enable_get (NRF_NFCT_Type const *p_reg) |
Function for retrieving the information about enabled interrupts. More... | |
NRF_STATIC_INLINE void | nrf_nfct_int_disable (NRF_NFCT_Type *p_reg, uint32_t mask) |
Function for disabling the selected interrupts. More... | |
NRF_STATIC_INLINE void | nrf_nfct_mod_ctrl_pin_set (NRF_NFCT_Type *p_reg, uint32_t mod_ctrl_pin) |
Function for configuring the NFCT modulation control pin. More... | |
NRF_STATIC_INLINE uint32_t | nrf_nfct_mod_ctrl_pin_get (NRF_NFCT_Type const *p_reg) |
Function for getting the modulation control pin selection. More... | |
NRF_STATIC_INLINE void | nrf_nfct_modulation_output_set (NRF_NFCT_Type *p_reg, nrf_nfct_modulation_ctrl_t mod_ctrl) |
Function for setting the modulation output. It enables the output to a GPIO pin which can be connected to a second external. More... | |
NRF_STATIC_INLINE nrf_nfct_modulation_ctrl_t | nrf_nfct_modulation_output_get (NRF_NFCT_Type const *p_reg) |
Function for getting the modulation output configuration. More... | |
NRF_STATIC_INLINE uint32_t | nrf_nfct_error_status_get (NRF_NFCT_Type const *p_reg) |
Function for getting the NFCT error status. More... | |
NRF_STATIC_INLINE void | nrf_nfct_error_status_clear (NRF_NFCT_Type *p_reg, uint32_t error_flag) |
Function for clearing the NFCT error status. More... | |
NRF_STATIC_INLINE uint32_t | nrf_nfct_rx_frame_status_get (NRF_NFCT_Type const *p_reg) |
Function for getting the NFC frame reception status. More... | |
NRF_STATIC_INLINE void | nrf_nfct_rx_frame_status_clear (NRF_NFCT_Type *p_reg, uint32_t framestatus_flags) |
Function for clearing the NFC frame reception status. More... | |
NRF_STATIC_INLINE nrf_nfct_tag_state_t | nrf_nfct_tag_state_get (NRF_NFCT_Type const *p_reg) |
Function for getting the NFC tag state. More... | |
NRF_STATIC_INLINE nrf_nfct_sleep_state_t | nrf_nfct_sleep_state_get (NRF_NFCT_Type const *p_reg) |
Function for getting the NFC tag sleep state during the automatic collision resolution. More... | |
NRF_STATIC_INLINE uint8_t | nrf_nfct_field_status_get (NRF_NFCT_Type const *p_reg) |
Function for getting the status of the external NFC field detection. More... | |
NRF_STATIC_INLINE uint16_t | nrf_nfct_frame_delay_min_get (NRF_NFCT_Type const *p_reg) |
Function for getting the minimum Frame Delay Time value. More... | |
NRF_STATIC_INLINE void | nrf_nfct_frame_delay_min_set (NRF_NFCT_Type *p_reg, uint16_t frame_delay_min) |
Function for setting the minimum Frame Delay Time value. More... | |
NRF_STATIC_INLINE uint32_t | nrf_nfct_frame_delay_max_get (NRF_NFCT_Type const *p_reg) |
Function for getting the maximum Frame Delay Time value. More... | |
NRF_STATIC_INLINE void | nrf_nfct_frame_delay_max_set (NRF_NFCT_Type *p_reg, uint32_t frame_delay_max) |
Function for setting the maximum Frame Delay Time value. More... | |
NRF_STATIC_INLINE nrf_nfct_frame_delay_mode_t | nrf_nfct_frame_delay_mode_get (NRF_NFCT_Type const *p_reg) |
Function for getting the Frame Delay Mode configuration. More... | |
NRF_STATIC_INLINE void | nrf_nfct_frame_delay_mode_set (NRF_NFCT_Type *p_reg, nrf_nfct_frame_delay_mode_t frame_delay_mode) |
Function for setting the NFC Frame Delay Mode configuration. More... | |
NRF_STATIC_INLINE uint8_t * | nrf_nfct_rxtx_buffer_get (NRF_NFCT_Type const *p_reg) |
Function for getting the pointer to the NFCT RX/TX buffer. More... | |
NRF_STATIC_INLINE void | nrf_nfct_rxtx_buffer_set (NRF_NFCT_Type *p_reg, uint8_t *p_rxtx_buf, uint16_t max_txrx_len) |
Function for setting the the NFCT RX/TX buffer (address and maximum length). More... | |
NRF_STATIC_INLINE uint16_t | nrf_nfct_max_rxtx_length_get (NRF_NFCT_Type const *p_reg) |
Function for getting the NFCT RX/TX maximum buffer length. More... | |
NRF_STATIC_INLINE uint8_t | nrf_nfct_tx_frame_config_get (NRF_NFCT_Type const *p_reg) |
Function for getting the flags for NFC frame transmission configuration. More... | |
NRF_STATIC_INLINE void | nrf_nfct_tx_frame_config_set (NRF_NFCT_Type *p_reg, uint8_t flags) |
Function for setting up the flags of the NFC frame transmission configuration. More... | |
NRF_STATIC_INLINE uint16_t | nrf_nfct_tx_bits_get (NRF_NFCT_Type const *p_reg) |
Function for getting the length of the configured transmission frame. More... | |
NRF_STATIC_INLINE void | nrf_nfct_tx_bits_set (NRF_NFCT_Type *p_reg, uint16_t tx_bits) |
Function for setting up the NFC frame transmission. More... | |
NRF_STATIC_INLINE uint8_t | nrf_nfct_rx_frame_config_get (NRF_NFCT_Type const *p_reg) |
Function for getting the flags of the NFC frame reception configuration. More... | |
NRF_STATIC_INLINE void | nrf_nfct_rx_frame_config_set (NRF_NFCT_Type *p_reg, uint8_t flags) |
Function for setting up the NFC frame reception. More... | |
NRF_STATIC_INLINE uint16_t | nrf_nfct_rx_bits_get (NRF_NFCT_Type const *p_reg, bool crc_excluded) |
Function for getting the number of bits received from the NFC poller. More... | |
NRF_STATIC_INLINE nrf_nfct_sensres_nfcid1_size_t | nrf_nfct_nfcid1_get (NRF_NFCT_Type const *p_reg, uint8_t *p_nfcid1_buf) |
Function for getting the NFCID1 (NFC tag identifier). More... | |
NRF_STATIC_INLINE void | nrf_nfct_nfcid1_set (NRF_NFCT_Type *p_reg, uint8_t const *p_nfcid1_buf, nrf_nfct_sensres_nfcid1_size_t nfcid1_size) |
Function for setting the NFCID1 (NFC tag identifier). More... | |
NRF_STATIC_INLINE bool | nrf_nfct_autocolres_is_enabled (NRF_NFCT_Type const *p_reg) |
Function for getting the setting for the automatic collision resolution. More... | |
NRF_STATIC_INLINE void | nrf_nfct_autocolres_enable (NRF_NFCT_Type *p_reg) |
Function for enabling the automatic collision resolution. More... | |
NRF_STATIC_INLINE void | nrf_nfct_autocolres_disable (NRF_NFCT_Type *p_reg) |
Function for disabling the automatic collision resolution. More... | |
NRF_STATIC_INLINE nrf_nfct_sensres_nfcid1_size_t | nrf_nfct_sensres_nfcid1_size_get (NRF_NFCT_Type const *p_reg) |
Function for getting the NFCID1 size from the SENS_RES frame configuration. More... | |
NRF_STATIC_INLINE void | nrf_nfct_sensres_nfcid1_size_set (NRF_NFCT_Type *p_reg, nrf_nfct_sensres_nfcid1_size_t nfcid1_size) |
Function for setting the NFCID1 (tag identifier) size.field in the SENS_RES frame configuration. More... | |
NRF_STATIC_INLINE nrf_nfct_sensres_bit_frame_sdd_t | nrf_nfct_sensres_bit_frame_sdd_get (NRF_NFCT_Type const *p_reg) |
Function for getting the Bit Frame SDD field from the SENS_RES frame configuration. More... | |
NRF_STATIC_INLINE void | nrf_nfct_sensres_bit_frame_sdd_set (NRF_NFCT_Type *p_reg, nrf_nfct_sensres_bit_frame_sdd_t bit_frame_sdd) |
Function for setting the Bit Frame SDD field in the SENS_RES frame configuration. More... | |
NRF_STATIC_INLINE nrf_nfct_sensres_platform_config_t | nrf_nfct_sensres_platform_config_get (NRF_NFCT_Type const *p_reg) |
Function for getting the Platform Config field from the SENS_RES frame configuration. More... | |
NRF_STATIC_INLINE void | nrf_nfct_sensres_platform_config_set (NRF_NFCT_Type *p_reg, nrf_nfct_sensres_platform_config_t platform_config) |
Function for setting the Platform Config field in the SENS_RES frame configuration. More... | |
NRF_STATIC_INLINE bool | nrf_nfct_selres_cascade_check (NRF_NFCT_Type const *p_reg) |
Function for checking the CASCADE bit of the SEL_RES frame. More... | |
NRF_STATIC_INLINE nrf_nfct_selres_protocol_t | nrf_nfct_selres_protocol_get (NRF_NFCT_Type const *p_reg) |
Function for getting the Protocol field in the SEL_RES frame. More... | |
NRF_STATIC_INLINE void | nrf_nfct_selres_protocol_set (NRF_NFCT_Type *p_reg, nrf_nfct_selres_protocol_t sel_res_protocol) |
Function for setting the Protocol field in the SEL_RES frame configuration. More... | |
Hardware access layer (HAL) for the Near Field Communication Tag (NFCT) peripheral.
#define NRF_NFCT_CRC_SIZE 2 |
CRC size in bytes.
#define NRF_NFCT_DISABLE_ALL_INT 0xFFFFFFFF |
Value to disable all interrupts.
NFC error status bit masks.
enum nrf_nfct_event_t |
NFCT events.
NFC frame delay mode for data transmission.
Enumerator | |
---|---|
NRF_NFCT_FRAME_DELAY_MODE_FREERUN | Frame transmission starts when NRF_NFCT_TASK_STARTTX is set (delay timer is not used). |
NRF_NFCT_FRAME_DELAY_MODE_WINDOW | Frame transmission starts in a window between FRAMEDELAYMIN and FRAMEDELAYMAX. |
NRF_NFCT_FRAME_DELAY_MODE_EXACTVAL | Frame transmission starts when the delay timer reaches FRAMEDELAYMAX. |
NRF_NFCT_FRAME_DELAY_MODE_WINDOWGRID | Frame transmission starts in a bit grid between FRAMEDELAYMIN and FRAMEDELAYMAX. |
enum nrf_nfct_int_mask_t |
NFCT interrupts.
Modulation output configuration.
Bit masks for NFC reception frame configuration.
Protocol NFC field (bits b7 and b6) configuration for the SEL_RES frame according to the NFC Forum Digital Protocol Technical Specification.
enum nrf_nfct_selres_t |
'Bit frame SDD' NFC field configuration for the SENS_RES frame according to the NFC Forum Digital Protocol Technical Specification.
'NFCI1 size' NFC field configuration for the SENS_RES frame according to the NFC Forum Digital Protocol Technical Specification.
'Platofrm Config' NFC field configuration for the SENS_RES frame according to the NFC Forum Digital Protocol Technical Specification.
NFCT shortcuts.
enum nrf_nfct_tag_state_t |
NFC tag state.
enum nrf_nfct_task_t |
NFCT tasks.
Bit masks for NFC transmission frame configuration.
NRF_STATIC_INLINE void nrf_nfct_autocolres_disable | ( | NRF_NFCT_Type * | p_reg | ) |
Function for disabling the automatic collision resolution.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
The automatic collision resolution mechanism as defined in ISO 14443-3 and NFC Forum Digital Protocol Technical Specification 2.0, section 6.
NRF_STATIC_INLINE void nrf_nfct_autocolres_enable | ( | NRF_NFCT_Type * | p_reg | ) |
Function for enabling the automatic collision resolution.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
The automatic collision resolution mechanism as defined in ISO 14443-3 and NFC Forum Digital Protocol Technical Specification 2.0, section 6.
NRF_STATIC_INLINE bool nrf_nfct_autocolres_is_enabled | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the setting for the automatic collision resolution.
The automatic collision resolution mechanism as defined in ISO 14443-3 and NFC Forum Digital Protocol Technical Specification 2.0, section 6.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
true | If automatic collision resolution is enabled. |
false | If automatic collision resolution is disabled. |
NRF_STATIC_INLINE void nrf_nfct_error_status_clear | ( | NRF_NFCT_Type * | p_reg, |
uint32_t | error_flag | ||
) |
Function for clearing the NFCT error status.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | error_flag | Error flags to be cleared, defined in nrf_nfct_error_status_t. |
NRF_STATIC_INLINE uint32_t nrf_nfct_error_status_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the NFCT error status.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_nfct_event_address_get | ( | NRF_NFCT_Type const * | p_reg, |
nrf_nfct_event_t | event | ||
) |
Function for returning the address of a specific NFCT event register.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event. |
NRF_STATIC_INLINE bool nrf_nfct_event_check | ( | NRF_NFCT_Type const * | p_reg, |
nrf_nfct_event_t | event | ||
) |
Function for retrieving the state of the NFCT event.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event to be checked. |
true | The event has been generated. |
false | The event has not been generated. |
NRF_STATIC_INLINE void nrf_nfct_event_clear | ( | NRF_NFCT_Type * | p_reg, |
nrf_nfct_event_t | event | ||
) |
Function for clearing a specific event.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event. |
NRF_STATIC_INLINE uint8_t nrf_nfct_field_status_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the status of the external NFC field detection.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_nfct_frame_delay_max_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the maximum Frame Delay Time value.
This is the maximum value for Frame Delay Timer. It controls the longest time between the last symbol of the last received frame and the start of the transmission of a new TX frame. If no transmission starts before the Frame Delay Timer timeout, NRF_NFCT_ERROR_FRAMEDELAYTIMEOUT_MASK is set.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_frame_delay_max_set | ( | NRF_NFCT_Type * | p_reg, |
uint32_t | frame_delay_max | ||
) |
Function for setting the maximum Frame Delay Time value.
This is the maximum value for Frame Delay Timer. It controls the longest time between the last symbol of the last received frame and the start of the transmission of a new TX frame. If no transmission starts before the Frame Delay Timer timeout, NRF_NFCT_ERROR_FRAMEDELAYTIMEOUT_MASK is set.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | frame_delay_max | Maximum Frame Delay Time value in 13.56-MHz clock ticks. |
NRF_STATIC_INLINE uint16_t nrf_nfct_frame_delay_min_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the minimum Frame Delay Time value.
This is the minimum value for Frame Delay Timer. It controls the shortest time between the last symbol of the last received frame and the start of the transmission of a new TX frame.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_frame_delay_min_set | ( | NRF_NFCT_Type * | p_reg, |
uint16_t | frame_delay_min | ||
) |
Function for setting the minimum Frame Delay Time value.
This is the minimum value for Frame Delay Timer. It controls the shortest time between the last symbol of the last received frame and the start of the transmission of a new TX frame.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | frame_delay_min | Minimum Frame Delay Time value in 13.56-MHz clock ticks. |
NRF_STATIC_INLINE nrf_nfct_frame_delay_mode_t nrf_nfct_frame_delay_mode_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the Frame Delay Mode configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_frame_delay_mode_set | ( | NRF_NFCT_Type * | p_reg, |
nrf_nfct_frame_delay_mode_t | frame_delay_mode | ||
) |
Function for setting the NFC Frame Delay Mode configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | frame_delay_mode | Frame Delay Mode configuration. |
NRF_STATIC_INLINE void nrf_nfct_int_disable | ( | NRF_NFCT_Type * | p_reg, |
uint32_t | mask | ||
) |
Function for disabling the selected interrupts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Mask of interrupts to be disabled. |
NRF_STATIC_INLINE void nrf_nfct_int_enable | ( | NRF_NFCT_Type * | p_reg, |
uint32_t | mask | ||
) |
Function for enabling the selected interrupts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Mask of interrupts to be enabled. |
NRF_STATIC_INLINE uint32_t nrf_nfct_int_enable_check | ( | NRF_NFCT_Type const * | p_reg, |
uint32_t | mask | ||
) |
Function for checking if the specified interrupts are enabled.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Mask of interrupts to be checked. |
NRF_STATIC_INLINE uint32_t nrf_nfct_int_enable_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for retrieving the information about enabled interrupts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint16_t nrf_nfct_max_rxtx_length_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the NFCT RX/TX maximum buffer length.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_nfct_mod_ctrl_pin_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the modulation control pin selection.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_mod_ctrl_pin_set | ( | NRF_NFCT_Type * | p_reg, |
uint32_t | mod_ctrl_pin | ||
) |
Function for configuring the NFCT modulation control pin.
If a given signal is not needed, pass the NRF_NFCT_MOD_CTRL_PIN_NOT_CONNECTED value instead of its pin number.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mod_ctrl_pin | Modulation control pin. |
NRF_STATIC_INLINE nrf_nfct_modulation_ctrl_t nrf_nfct_modulation_output_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the modulation output configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_modulation_output_set | ( | NRF_NFCT_Type * | p_reg, |
nrf_nfct_modulation_ctrl_t | mod_ctrl | ||
) |
Function for setting the modulation output. It enables the output to a GPIO pin which can be connected to a second external.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mod_ctrl | Modulation control field configuration. |
NRF_STATIC_INLINE nrf_nfct_sensres_nfcid1_size_t nrf_nfct_nfcid1_get | ( | NRF_NFCT_Type const * | p_reg, |
uint8_t * | p_nfcid1_buf | ||
) |
Function for getting the NFCID1 (NFC tag identifier).
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[out] | p_nfcid1_buf | Pointer to a buffer for the NDFCID1 parameter. The NFCID1 values are in little endian order, that is: |NFCID1_3RD_LAST|NFCID1_2ND_LAST|NFCID1_LAST|. |
NRF_STATIC_INLINE void nrf_nfct_nfcid1_set | ( | NRF_NFCT_Type * | p_reg, |
uint8_t const * | p_nfcid1_buf, | ||
nrf_nfct_sensres_nfcid1_size_t | nfcid1_size | ||
) |
Function for setting the NFCID1 (NFC tag identifier).
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_nfcid1_buf | Pointer to the buffer with NDFCID1 bytes. |
[in] | nfcid1_size | Size of the NFCID1 in bytes. |
NRF_STATIC_INLINE uint16_t nrf_nfct_rx_bits_get | ( | NRF_NFCT_Type const * | p_reg, |
bool | crc_excluded | ||
) |
Function for getting the number of bits received from the NFC poller.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | crc_excluded | Flag for excluding CRC size from calculation. |
< CRC size in bytes.
NRF_STATIC_INLINE uint8_t nrf_nfct_rx_frame_config_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the flags of the NFC frame reception configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_rx_frame_config_set | ( | NRF_NFCT_Type * | p_reg, |
uint8_t | flags | ||
) |
Function for setting up the NFC frame reception.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | flags | NFCT RX configuration flags. Use nrf_nfct_rx_frame_config_t for setting the desired configuration. |
NRF_STATIC_INLINE void nrf_nfct_rx_frame_status_clear | ( | NRF_NFCT_Type * | p_reg, |
uint32_t | framestatus_flags | ||
) |
Function for clearing the NFC frame reception status.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | framestatus_flags | Status flags to be cleared, defined in nrf_nfct_rx_frame_status_t. |
NRF_STATIC_INLINE uint32_t nrf_nfct_rx_frame_status_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the NFC frame reception status.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint8_t * nrf_nfct_rxtx_buffer_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the pointer to the NFCT RX/TX buffer.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_rxtx_buffer_set | ( | NRF_NFCT_Type * | p_reg, |
uint8_t * | p_rxtx_buf, | ||
uint16_t | max_txrx_len | ||
) |
Function for setting the the NFCT RX/TX buffer (address and maximum length).
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_rxtx_buf | Pointer to the receive or transmit buffer. |
[in] | max_txrx_len | Maximum receive or transmit length in bytes (size of the RAM buffer for EasyDMA). |
NRF_STATIC_INLINE bool nrf_nfct_selres_cascade_check | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for checking the CASCADE bit of the SEL_RES frame.
The CASCADE bit in the SEL_RES register is handled automatically by the NFCT hardware and indicates the status of the NFCID1 read operation to the NFC poller according to the NFC Forum Digital Protocol Speficiation 2.0, section 6.8.2.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
true | If NFCID1 read procedure is not complete. |
false | If NFCID1 read procedure is complete. |
NRF_STATIC_INLINE nrf_nfct_selres_protocol_t nrf_nfct_selres_protocol_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the Protocol field in the SEL_RES frame.
The SEL_RES frame is handled automatically by the NFCT hardware.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_selres_protocol_set | ( | NRF_NFCT_Type * | p_reg, |
nrf_nfct_selres_protocol_t | sel_res_protocol | ||
) |
Function for setting the Protocol field in the SEL_RES frame configuration.
The SEL_RES frame is handled automatically by the NFCT hardware.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | sel_res_protocol | Value of the Protocol field in the SEL_RES frame. |
NRF_STATIC_INLINE nrf_nfct_sensres_bit_frame_sdd_t nrf_nfct_sensres_bit_frame_sdd_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the Bit Frame SDD field from the SENS_RES frame configuration.
The SENS_RES frame is handled automatically by the NFCT hardware.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_sensres_bit_frame_sdd_set | ( | NRF_NFCT_Type * | p_reg, |
nrf_nfct_sensres_bit_frame_sdd_t | bit_frame_sdd | ||
) |
Function for setting the Bit Frame SDD field in the SENS_RES frame configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | bit_frame_sdd | The Bit Frame SDD field configuration. |
NRF_STATIC_INLINE nrf_nfct_sensres_nfcid1_size_t nrf_nfct_sensres_nfcid1_size_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the NFCID1 size from the SENS_RES frame configuration.
The SENS_RES frame is handled automatically by the NFCT hardware.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_sensres_nfcid1_size_set | ( | NRF_NFCT_Type * | p_reg, |
nrf_nfct_sensres_nfcid1_size_t | nfcid1_size | ||
) |
Function for setting the NFCID1 (tag identifier) size.field in the SENS_RES frame configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | nfcid1_size | NFCID1 (tag identifier) size. |
NRF_STATIC_INLINE nrf_nfct_sensres_platform_config_t nrf_nfct_sensres_platform_config_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the Platform Config field from the SENS_RES frame configuration.
The SENS_RES frame is handled automatically by the NFCT hardware.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_sensres_platform_config_set | ( | NRF_NFCT_Type * | p_reg, |
nrf_nfct_sensres_platform_config_t | platform_config | ||
) |
Function for setting the Platform Config field in the SENS_RES frame configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | platform_config | The Platform Config field configuration. |
NRF_STATIC_INLINE void nrf_nfct_shorts_disable | ( | NRF_NFCT_Type * | p_reg, |
uint32_t | short_mask | ||
) |
Function for disabling selected shortcuts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | short_mask | Mask of shortcuts. |
NRF_STATIC_INLINE void nrf_nfct_shorts_enable | ( | NRF_NFCT_Type * | p_reg, |
uint32_t | short_mask | ||
) |
Function for enabling selected shortcuts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | short_mask | Mask of shortcuts. |
NRF_STATIC_INLINE uint32_t nrf_nfct_shorts_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for retrieving the enabled shortcuts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_shorts_set | ( | NRF_NFCT_Type * | p_reg, |
uint32_t | short_mask | ||
) |
Function for setting shortcuts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | short_mask | Shortcut mask. |
NRF_STATIC_INLINE nrf_nfct_sleep_state_t nrf_nfct_sleep_state_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the NFC tag sleep state during the automatic collision resolution.
The returned value is the last state before the autimatic collision resolution started.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_NFCT_SLEEP_STATE_IDLE | NFC tag was in IDLE state before the automatic collision resolution started. |
NRF_NFCT_SLEEP_STATE_SLEEP_A | NFC tag was in SLEEP_A state before the automatic collision resolution started. |
NRF_STATIC_INLINE nrf_nfct_tag_state_t nrf_nfct_tag_state_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the NFC tag state.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_NFCT_TAG_STATE_DISABLED | NFC tag is disabled. |
NRF_NFCT_TAG_STATE_RAMP_UP | NFC tag is ramping up. |
NRF_NFCT_TAG_STATE_IDLE | NFC tag is activated and idle. |
NRF_NFCT_TAG_STATE_RECEIVE | NFC tag is receiving data. |
NRF_NFCT_TAG_STATE_FRAME_DELAY | Frame Delay Timer of the NFC tag is counting ticks since the last symbol of the last received frame. |
NRF_NFCT_TAG_STATE_TRANSMIT | NFC tag is transmitting data. |
NRF_STATIC_INLINE uint32_t nrf_nfct_task_address_get | ( | NRF_NFCT_Type const * | p_reg, |
nrf_nfct_task_t | task | ||
) |
Function for returning the address of a specific NFCT task register.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | Task. |
NRF_STATIC_INLINE void nrf_nfct_task_trigger | ( | NRF_NFCT_Type * | p_reg, |
nrf_nfct_task_t | task | ||
) |
Function for activating a specific NFCT task.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | Task to be activated. |
NRF_STATIC_INLINE uint16_t nrf_nfct_tx_bits_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the length of the configured transmission frame.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_tx_bits_set | ( | NRF_NFCT_Type * | p_reg, |
uint16_t | tx_bits | ||
) |
Function for setting up the NFC frame transmission.
Set the number of TX bits excluding CRC, parity, SoF, and EoF.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | tx_bits | Overall number of bits to be sent. |
NRF_STATIC_INLINE uint8_t nrf_nfct_tx_frame_config_get | ( | NRF_NFCT_Type const * | p_reg | ) |
Function for getting the flags for NFC frame transmission configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_nfct_tx_frame_config_set | ( | NRF_NFCT_Type * | p_reg, |
uint8_t | flags | ||
) |
Function for setting up the flags of the NFC frame transmission configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | flags | Flags for NFCT TX configuration. Use nrf_nfct_tx_frame_config_t for setting. |