Hardware access layer for managing the Universal Serial Bus Device (USBD) peripheral. More...
Macros | |
#define | NRF_USBD_FRAMECNTR_SIZE ( (USBD_FRAMECNTR_FRAMECNTR_Msk >> USBD_FRAMECNTR_FRAMECNTR_Pos) + 1UL ) |
Frame counter size. More... | |
#define | NRF_USBD_EPISO_FIRST 8 |
First isochronous endpoint number. More... | |
#define | NRF_USBD_EPIN_CNT 9 |
Total number of IN endpoints. More... | |
#define | NRF_USBD_EPOUT_CNT 9 |
Total number of OUT endpoints. More... | |
#define | NRF_USBD_EP_DIR_Msk (1U << 7) |
Mask of the direction bit in an endpoint number. | |
#define | NRF_USBD_EP_DIR_IN (1U << 7) |
The value of direction bit for the IN endpoint direction. | |
#define | NRF_USBD_EP_DIR_OUT (0U << 7) |
The value of direction bit for the OUT endpoint direction. | |
#define | NRF_USBD_EPIN(epnr) (((uint8_t)(epnr)) | NRF_USBD_EP_DIR_IN) |
Macro for making the IN endpoint identifier from endpoint number. More... | |
#define | NRF_USBD_EPOUT(epnr) (((uint8_t)(epnr)) | NRF_USBD_EP_DIR_OUT) |
Macro for making the OUT endpoint identifier from endpoint number. More... | |
#define | NRF_USBD_EP_NR_GET(ep) ((uint8_t)(((uint8_t)(ep)) & 0xFU)) |
Macro for extracting the endpoint number from the specified endpoint identifier. More... | |
#define | NRF_USBD_EPIN_CHECK(ep) ( (((uint8_t)(ep)) & NRF_USBD_EP_DIR_Msk) == NRF_USBD_EP_DIR_IN ) |
Macro for checking the endpoint direction. More... | |
#define | NRF_USBD_EPOUT_CHECK(ep) ( (((uint8_t)(ep)) & NRF_USBD_EP_DIR_Msk) == NRF_USBD_EP_DIR_OUT ) |
Macro for checking endpoint direction. More... | |
#define | NRF_USBD_EPISO_CHECK(ep) (NRF_USBD_EP_NR_GET(ep) >= NRF_USBD_EPISO_FIRST) |
Macro for checking if endpoint is isochronous. More... | |
#define | NRF_USBD_EP_VALIDATE(ep) |
Macro for checking if given number is valid endpoint number. More... | |
#define | NRF_USBD_EPISOOUT_NO_DATA ((size_t)(-1)) |
Not isochronous data frame received. More... | |
Enumerations | |
enum | nrf_usbd_task_t { NRF_USBD_TASK_STARTEPIN0 = offsetof(NRF_USBD_Type, TASKS_STARTEPIN[0] ), NRF_USBD_TASK_STARTEPIN1 = offsetof(NRF_USBD_Type, TASKS_STARTEPIN[1] ), NRF_USBD_TASK_STARTEPIN2 = offsetof(NRF_USBD_Type, TASKS_STARTEPIN[2] ), NRF_USBD_TASK_STARTEPIN3 = offsetof(NRF_USBD_Type, TASKS_STARTEPIN[3] ), NRF_USBD_TASK_STARTEPIN4 = offsetof(NRF_USBD_Type, TASKS_STARTEPIN[4] ), NRF_USBD_TASK_STARTEPIN5 = offsetof(NRF_USBD_Type, TASKS_STARTEPIN[5] ), NRF_USBD_TASK_STARTEPIN6 = offsetof(NRF_USBD_Type, TASKS_STARTEPIN[6] ), NRF_USBD_TASK_STARTEPIN7 = offsetof(NRF_USBD_Type, TASKS_STARTEPIN[7] ), NRF_USBD_TASK_STARTISOIN = offsetof(NRF_USBD_Type, TASKS_STARTISOIN ), NRF_USBD_TASK_STARTEPOUT0 = offsetof(NRF_USBD_Type, TASKS_STARTEPOUT[0]), NRF_USBD_TASK_STARTEPOUT1 = offsetof(NRF_USBD_Type, TASKS_STARTEPOUT[1]), NRF_USBD_TASK_STARTEPOUT2 = offsetof(NRF_USBD_Type, TASKS_STARTEPOUT[2]), NRF_USBD_TASK_STARTEPOUT3 = offsetof(NRF_USBD_Type, TASKS_STARTEPOUT[3]), NRF_USBD_TASK_STARTEPOUT4 = offsetof(NRF_USBD_Type, TASKS_STARTEPOUT[4]), NRF_USBD_TASK_STARTEPOUT5 = offsetof(NRF_USBD_Type, TASKS_STARTEPOUT[5]), NRF_USBD_TASK_STARTEPOUT6 = offsetof(NRF_USBD_Type, TASKS_STARTEPOUT[6]), NRF_USBD_TASK_STARTEPOUT7 = offsetof(NRF_USBD_Type, TASKS_STARTEPOUT[7]), NRF_USBD_TASK_STARTISOOUT = offsetof(NRF_USBD_Type, TASKS_STARTISOOUT ), NRF_USBD_TASK_EP0RCVOUT = offsetof(NRF_USBD_Type, TASKS_EP0RCVOUT ), NRF_USBD_TASK_EP0STATUS = offsetof(NRF_USBD_Type, TASKS_EP0STATUS ), NRF_USBD_TASK_EP0STALL = offsetof(NRF_USBD_Type, TASKS_EP0STALL ), NRF_USBD_TASK_DRIVEDPDM = offsetof(NRF_USBD_Type, TASKS_DPDMDRIVE ), NRF_USBD_TASK_NODRIVEDPDM = offsetof(NRF_USBD_Type, TASKS_DPDMNODRIVE ) } |
USBD tasks. More... | |
enum | nrf_usbd_event_t { NRF_USBD_EVENT_USBRESET = offsetof(NRF_USBD_Type, EVENTS_USBRESET ), NRF_USBD_EVENT_STARTED = offsetof(NRF_USBD_Type, EVENTS_STARTED ), NRF_USBD_EVENT_ENDEPIN0 = offsetof(NRF_USBD_Type, EVENTS_ENDEPIN[0] ), NRF_USBD_EVENT_ENDEPIN1 = offsetof(NRF_USBD_Type, EVENTS_ENDEPIN[1] ), NRF_USBD_EVENT_ENDEPIN2 = offsetof(NRF_USBD_Type, EVENTS_ENDEPIN[2] ), NRF_USBD_EVENT_ENDEPIN3 = offsetof(NRF_USBD_Type, EVENTS_ENDEPIN[3] ), NRF_USBD_EVENT_ENDEPIN4 = offsetof(NRF_USBD_Type, EVENTS_ENDEPIN[4] ), NRF_USBD_EVENT_ENDEPIN5 = offsetof(NRF_USBD_Type, EVENTS_ENDEPIN[5] ), NRF_USBD_EVENT_ENDEPIN6 = offsetof(NRF_USBD_Type, EVENTS_ENDEPIN[6] ), NRF_USBD_EVENT_ENDEPIN7 = offsetof(NRF_USBD_Type, EVENTS_ENDEPIN[7] ), NRF_USBD_EVENT_EP0DATADONE = offsetof(NRF_USBD_Type, EVENTS_EP0DATADONE), NRF_USBD_EVENT_ENDISOIN0 = offsetof(NRF_USBD_Type, EVENTS_ENDISOIN ), NRF_USBD_EVENT_ENDEPOUT0 = offsetof(NRF_USBD_Type, EVENTS_ENDEPOUT[0]), NRF_USBD_EVENT_ENDEPOUT1 = offsetof(NRF_USBD_Type, EVENTS_ENDEPOUT[1]), NRF_USBD_EVENT_ENDEPOUT2 = offsetof(NRF_USBD_Type, EVENTS_ENDEPOUT[2]), NRF_USBD_EVENT_ENDEPOUT3 = offsetof(NRF_USBD_Type, EVENTS_ENDEPOUT[3]), NRF_USBD_EVENT_ENDEPOUT4 = offsetof(NRF_USBD_Type, EVENTS_ENDEPOUT[4]), NRF_USBD_EVENT_ENDEPOUT5 = offsetof(NRF_USBD_Type, EVENTS_ENDEPOUT[5]), NRF_USBD_EVENT_ENDEPOUT6 = offsetof(NRF_USBD_Type, EVENTS_ENDEPOUT[6]), NRF_USBD_EVENT_ENDEPOUT7 = offsetof(NRF_USBD_Type, EVENTS_ENDEPOUT[7]), NRF_USBD_EVENT_ENDISOOUT0 = offsetof(NRF_USBD_Type, EVENTS_ENDISOOUT ), NRF_USBD_EVENT_SOF = offsetof(NRF_USBD_Type, EVENTS_SOF ), NRF_USBD_EVENT_USBEVENT = offsetof(NRF_USBD_Type, EVENTS_USBEVENT ), NRF_USBD_EVENT_EP0SETUP = offsetof(NRF_USBD_Type, EVENTS_EP0SETUP ), NRF_USBD_EVENT_DATAEP = offsetof(NRF_USBD_Type, EVENTS_EPDATA ) } |
USBD events. More... | |
enum | nrf_usbd_short_mask_t { NRF_USBD_SHORT_EP0DATADONE_STARTEPIN0_MASK = USBD_SHORTS_EP0DATADONE_STARTEPIN0_Msk, NRF_USBD_SHORT_EP0DATADONE_STARTEPOUT0_MASK = USBD_SHORTS_EP0DATADONE_STARTEPOUT0_Msk, NRF_USBD_SHORT_EP0DATADONE_EP0STATUS_MASK = USBD_SHORTS_EP0DATADONE_EP0STATUS_Msk, NRF_USBD_SHORT_ENDEPOUT0_EP0STATUS_MASK = USBD_SHORTS_ENDEPOUT0_EP0STATUS_Msk, NRF_USBD_SHORT_ENDEPOUT0_EP0RCVOUT_MASK = USBD_SHORTS_ENDEPOUT0_EP0RCVOUT_Msk } |
USBD shorts. More... | |
enum | nrf_usbd_int_mask_t { NRF_USBD_INT_USBRESET_MASK = USBD_INTEN_USBRESET_Msk, NRF_USBD_INT_STARTED_MASK = USBD_INTEN_STARTED_Msk, NRF_USBD_INT_ENDEPIN0_MASK = USBD_INTEN_ENDEPIN0_Msk, NRF_USBD_INT_ENDEPIN1_MASK = USBD_INTEN_ENDEPIN1_Msk, NRF_USBD_INT_ENDEPIN2_MASK = USBD_INTEN_ENDEPIN2_Msk, NRF_USBD_INT_ENDEPIN3_MASK = USBD_INTEN_ENDEPIN3_Msk, NRF_USBD_INT_ENDEPIN4_MASK = USBD_INTEN_ENDEPIN4_Msk, NRF_USBD_INT_ENDEPIN5_MASK = USBD_INTEN_ENDEPIN5_Msk, NRF_USBD_INT_ENDEPIN6_MASK = USBD_INTEN_ENDEPIN6_Msk, NRF_USBD_INT_ENDEPIN7_MASK = USBD_INTEN_ENDEPIN7_Msk, NRF_USBD_INT_EP0DATADONE_MASK = USBD_INTEN_EP0DATADONE_Msk, NRF_USBD_INT_ENDISOIN0_MASK = USBD_INTEN_ENDISOIN_Msk, NRF_USBD_INT_ENDEPOUT0_MASK = USBD_INTEN_ENDEPOUT0_Msk, NRF_USBD_INT_ENDEPOUT1_MASK = USBD_INTEN_ENDEPOUT1_Msk, NRF_USBD_INT_ENDEPOUT2_MASK = USBD_INTEN_ENDEPOUT2_Msk, NRF_USBD_INT_ENDEPOUT3_MASK = USBD_INTEN_ENDEPOUT3_Msk, NRF_USBD_INT_ENDEPOUT4_MASK = USBD_INTEN_ENDEPOUT4_Msk, NRF_USBD_INT_ENDEPOUT5_MASK = USBD_INTEN_ENDEPOUT5_Msk, NRF_USBD_INT_ENDEPOUT6_MASK = USBD_INTEN_ENDEPOUT6_Msk, NRF_USBD_INT_ENDEPOUT7_MASK = USBD_INTEN_ENDEPOUT7_Msk, NRF_USBD_INT_ENDISOOUT0_MASK = USBD_INTEN_ENDISOOUT_Msk, NRF_USBD_INT_SOF_MASK = USBD_INTEN_SOF_Msk, NRF_USBD_INT_USBEVENT_MASK = USBD_INTEN_USBEVENT_Msk, NRF_USBD_INT_EP0SETUP_MASK = USBD_INTEN_EP0SETUP_Msk, NRF_USBD_INT_DATAEP_MASK = USBD_INTEN_EPDATA_Msk } |
USBD interrupts. More... | |
enum | nrf_usbd_eventcause_mask_t { NRF_USBD_EVENTCAUSE_ISOOUTCRC_MASK = USBD_EVENTCAUSE_ISOOUTCRC_Msk, NRF_USBD_EVENTCAUSE_SUSPEND_MASK = USBD_EVENTCAUSE_SUSPEND_Msk, NRF_USBD_EVENTCAUSE_RESUME_MASK = USBD_EVENTCAUSE_RESUME_Msk, NRF_USBD_EVENTCAUSE_WUREQ_MASK = USBD_EVENTCAUSE_USBWUALLOWED_Msk, NRF_USBD_EVENTCAUSE_READY_MASK = USBD_EVENTCAUSE_READY_Msk } |
EVENTCAUSE register bit masks. More... | |
enum | nrf_usbd_dpdmvalue_t { NRF_USBD_DPDMVALUE_RESUME = USBD_DPDMVALUE_STATE_Resume, NRF_USBD_DPDMVALUE_J = USBD_DPDMVALUE_STATE_J, NRF_USBD_DPMVALUE_K = USBD_DPDMVALUE_STATE_K } |
DPDMVALUE register. More... | |
enum | nrf_usbd_dtoggle_t { NRF_USBD_DTOGGLE_NOP = USBD_DTOGGLE_VALUE_Nop, NRF_USBD_DTOGGLE_DATA0 = USBD_DTOGGLE_VALUE_Data0, NRF_USBD_DTOGGLE_DATA1 = USBD_DTOGGLE_VALUE_Data1 } |
Data toggle value or operation. More... | |
enum | nrf_usbd_epstatus_mask_t { NRF_USBD_EPSTATUS_EPIN0_MASK = USBD_EPSTATUS_EPIN0_Msk, NRF_USBD_EPSTATUS_EPIN1_MASK = USBD_EPSTATUS_EPIN1_Msk, NRF_USBD_EPSTATUS_EPIN2_MASK = USBD_EPSTATUS_EPIN2_Msk, NRF_USBD_EPSTATUS_EPIN3_MASK = USBD_EPSTATUS_EPIN3_Msk, NRF_USBD_EPSTATUS_EPIN4_MASK = USBD_EPSTATUS_EPIN4_Msk, NRF_USBD_EPSTATUS_EPIN5_MASK = USBD_EPSTATUS_EPIN5_Msk, NRF_USBD_EPSTATUS_EPIN6_MASK = USBD_EPSTATUS_EPIN6_Msk, NRF_USBD_EPSTATUS_EPIN7_MASK = USBD_EPSTATUS_EPIN7_Msk, NRF_USBD_EPSTATUS_EPOUT0_MASK = USBD_EPSTATUS_EPOUT0_Msk, NRF_USBD_EPSTATUS_EPOUT1_MASK = USBD_EPSTATUS_EPOUT1_Msk, NRF_USBD_EPSTATUS_EPOUT2_MASK = USBD_EPSTATUS_EPOUT2_Msk, NRF_USBD_EPSTATUS_EPOUT3_MASK = USBD_EPSTATUS_EPOUT3_Msk, NRF_USBD_EPSTATUS_EPOUT4_MASK = USBD_EPSTATUS_EPOUT4_Msk, NRF_USBD_EPSTATUS_EPOUT5_MASK = USBD_EPSTATUS_EPOUT5_Msk, NRF_USBD_EPSTATUS_EPOUT6_MASK = USBD_EPSTATUS_EPOUT6_Msk, NRF_USBD_EPSTATUS_EPOUT7_MASK = USBD_EPSTATUS_EPOUT7_Msk } |
EPSTATUS bit masks. | |
enum | nrf_usbd_dataepstatus_mask_t { NRF_USBD_EPDATASTATUS_EPIN1_MASK = USBD_EPDATASTATUS_EPIN1_Msk, NRF_USBD_EPDATASTATUS_EPIN2_MASK = USBD_EPDATASTATUS_EPIN2_Msk, NRF_USBD_EPDATASTATUS_EPIN3_MASK = USBD_EPDATASTATUS_EPIN3_Msk, NRF_USBD_EPDATASTATUS_EPIN4_MASK = USBD_EPDATASTATUS_EPIN4_Msk, NRF_USBD_EPDATASTATUS_EPIN5_MASK = USBD_EPDATASTATUS_EPIN5_Msk, NRF_USBD_EPDATASTATUS_EPIN6_MASK = USBD_EPDATASTATUS_EPIN6_Msk, NRF_USBD_EPDATASTATUS_EPIN7_MASK = USBD_EPDATASTATUS_EPIN7_Msk, NRF_USBD_EPDATASTATUS_EPOUT1_MASK = USBD_EPDATASTATUS_EPOUT1_Msk, NRF_USBD_EPDATASTATUS_EPOUT2_MASK = USBD_EPDATASTATUS_EPOUT2_Msk, NRF_USBD_EPDATASTATUS_EPOUT3_MASK = USBD_EPDATASTATUS_EPOUT3_Msk, NRF_USBD_EPDATASTATUS_EPOUT4_MASK = USBD_EPDATASTATUS_EPOUT4_Msk, NRF_USBD_EPDATASTATUS_EPOUT5_MASK = USBD_EPDATASTATUS_EPOUT5_Msk, NRF_USBD_EPDATASTATUS_EPOUT6_MASK = USBD_EPDATASTATUS_EPOUT6_Msk, NRF_USBD_EPDATASTATUS_EPOUT7_MASK = USBD_EPDATASTATUS_EPOUT7_Msk } |
DATAEPSTATUS bit masks. | |
enum | nrf_usbd_isosplit_t { NRF_USBD_ISOSPLIT_ONEDIR = USBD_ISOSPLIT_SPLIT_OneDir, NRF_USBD_ISOSPLIT_HALF = USBD_ISOSPLIT_SPLIT_HalfIN } |
ISOSPLIT configurations. More... | |
enum | nrf_usbd_isoinconfig_t { NRF_USBD_ISOINCONFIG_NORESP = USBD_ISOINCONFIG_RESPONSE_NoResp, NRF_USBD_ISOINCONFIG_ZERODATA = USBD_ISOINCONFIG_RESPONSE_ZeroData } |
ISOINCONFIG configurations. More... | |
Functions | |
NRF_STATIC_INLINE void | nrf_usbd_task_trigger (NRF_USBD_Type *p_reg, nrf_usbd_task_t task) |
Function for activating the specified USBD task. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_task_address_get (NRF_USBD_Type const *p_reg, nrf_usbd_task_t task) |
Function for returning the address of the specified USBD task register. More... | |
NRF_STATIC_INLINE void | nrf_usbd_event_clear (NRF_USBD_Type *p_reg, nrf_usbd_event_t event) |
Function for clearing the specified event. More... | |
NRF_STATIC_INLINE bool | nrf_usbd_event_check (NRF_USBD_Type const *p_reg, nrf_usbd_event_t event) |
Function for retrieving the state of the USBD event. More... | |
NRF_STATIC_INLINE bool | nrf_usbd_event_get_and_clear (NRF_USBD_Type *p_reg, nrf_usbd_event_t event) |
Function for getting and clearing the state of the specified event. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_event_address_get (NRF_USBD_Type const *p_reg, nrf_usbd_event_t event) |
Function for returning the address of the specified USBD event register. More... | |
NRF_STATIC_INLINE void | nrf_usbd_shorts_enable (NRF_USBD_Type *p_reg, uint32_t mask) |
Function for setting shortcuts. More... | |
NRF_STATIC_INLINE void | nrf_usbd_shorts_disable (NRF_USBD_Type *p_reg, uint32_t mask) |
Function for clearing shortcuts. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_shorts_get (NRF_USBD_Type const *p_reg) |
Function for getting the shortcut mask. More... | |
NRF_STATIC_INLINE void | nrf_usbd_int_enable (NRF_USBD_Type *p_reg, uint32_t mask) |
Function for enabling the selected interrupts. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_int_enable_check (NRF_USBD_Type const *p_reg, uint32_t mask) |
Function for checking if the specified interrupts are enabled. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_int_enable_get (NRF_USBD_Type const *p_reg) |
Function for retrieving the information about the enabled interrupts. More... | |
NRF_STATIC_INLINE void | nrf_usbd_int_disable (NRF_USBD_Type *p_reg, uint32_t mask) |
Function for disabling the selected interrupts. More... | |
NRF_STATIC_INLINE void | nrf_usbd_enable (NRF_USBD_Type *p_reg) |
Function for enabling the USBD. More... | |
NRF_STATIC_INLINE void | nrf_usbd_disable (NRF_USBD_Type *p_reg) |
Function for disabling the USBD. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_eventcause_get (NRF_USBD_Type const *p_reg) |
Function for getting the EVENTCAUSE register. More... | |
NRF_STATIC_INLINE void | nrf_usbd_eventcause_clear (NRF_USBD_Type *p_reg, uint32_t flags) |
Function for clearing the EVENTCAUSE flags. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_eventcause_get_and_clear (NRF_USBD_Type *p_reg) |
Function for getting the EVENTCAUSE register and clearing flags that are set. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_halted_get (NRF_USBD_Type const *p_reg, uint8_t ep) |
Function for getting the HALTEDEPIN register value. More... | |
NRF_STATIC_INLINE bool | nrf_usbd_ep_is_stall (NRF_USBD_Type const *p_reg, uint8_t ep) |
Function for checking whether the selected endpoint is stalled. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_epstatus_get (NRF_USBD_Type const *p_reg) |
Function for getting EPSTATUS register value. More... | |
NRF_STATIC_INLINE void | nrf_usbd_epstatus_clear (NRF_USBD_Type *p_reg, uint32_t flags) |
Function for clearing EPSTATUS register value. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_epstatus_get_and_clear (NRF_USBD_Type *p_reg) |
Function for getting and clearing EPSTATUS register value. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_epdatastatus_get (NRF_USBD_Type const *p_reg) |
Function for getting DATAEPSTATUS register value. More... | |
NRF_STATIC_INLINE void | nrf_usbd_epdatastatus_clear (NRF_USBD_Type *p_reg, uint32_t flags) |
Function for clearing DATAEPSTATUS register value. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_epdatastatus_get_and_clear (NRF_USBD_Type *p_reg) |
Function for getting and clearing DATAEPSTATUS register value. More... | |
NRF_STATIC_INLINE size_t | nrf_usbd_epout_size_get (NRF_USBD_Type const *p_reg, uint8_t ep) |
Function for getting the number of received bytes on the selected endpoint. More... | |
NRF_STATIC_INLINE size_t | nrf_usbd_episoout_size_get (NRF_USBD_Type const *p_reg, uint8_t ep) |
Function for getting number of the received bytes on isochronous endpoint. More... | |
NRF_STATIC_INLINE void | nrf_usbd_epout_clear (NRF_USBD_Type *p_reg, uint8_t ep) |
Function for clearing OUT endpoint to accept any new incoming traffic. More... | |
NRF_STATIC_INLINE void | nrf_usbd_pullup_enable (NRF_USBD_Type *p_reg) |
Function for enabling the USB pullup. More... | |
NRF_STATIC_INLINE void | nrf_usbd_pullup_disable (NRF_USBD_Type *p_reg) |
Function for disabling the USB pullup. More... | |
NRF_STATIC_INLINE bool | nrf_usbd_pullup_check (NRF_USBD_Type const *p_reg) |
Function for returning the current the USB pullup state. More... | |
NRF_STATIC_INLINE void | nrf_usbd_dpdmvalue_set (NRF_USBD_Type *p_reg, nrf_usbd_dpdmvalue_t val) |
Function for configuring the value to be forced on the bus on the DRIVEDPDM task. More... | |
NRF_STATIC_INLINE void | nrf_usbd_dtoggle_set (NRF_USBD_Type *p_reg, uint8_t ep, nrf_usbd_dtoggle_t op) |
Function for setting the data toggle. More... | |
NRF_STATIC_INLINE nrf_usbd_dtoggle_t | nrf_usbd_dtoggle_get (NRF_USBD_Type *p_reg, uint8_t ep) |
Function for getting the data toggle. More... | |
NRF_STATIC_INLINE bool | nrf_usbd_ep_enable_check (NRF_USBD_Type const *p_reg, uint8_t ep) |
Function for checking whether the endpoint is enabled. More... | |
NRF_STATIC_INLINE void | nrf_usbd_ep_enable (NRF_USBD_Type *p_reg, uint8_t ep) |
Function for enabling the selected endpoint. More... | |
NRF_STATIC_INLINE void | nrf_usbd_ep_disable (NRF_USBD_Type *p_reg, uint8_t ep) |
Function for disabling the selected endpoint. More... | |
NRF_STATIC_INLINE void | nrf_usbd_ep_all_disable (NRF_USBD_Type *p_reg) |
Function for disabling all endpoints. More... | |
NRF_STATIC_INLINE void | nrf_usbd_ep_default_config (NRF_USBD_Type *p_reg) |
Function for setting the default endpoint configuration. More... | |
NRF_STATIC_INLINE void | nrf_usbd_ep_stall (NRF_USBD_Type *p_reg, uint8_t ep) |
Function for stalling the selected endpoint. More... | |
NRF_STATIC_INLINE void | nrf_usbd_ep_unstall (NRF_USBD_Type *p_reg, uint8_t ep) |
Function for unstalling the selected endpoint. More... | |
NRF_STATIC_INLINE void | nrf_usbd_isosplit_set (NRF_USBD_Type *p_reg, nrf_usbd_isosplit_t split) |
Function for configuring the isochronous buffer splitting. More... | |
NRF_STATIC_INLINE nrf_usbd_isosplit_t | nrf_usbd_isosplit_get (NRF_USBD_Type const *p_reg) |
Function for getting the isochronous buffer splitting configuration. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_framecntr_get (NRF_USBD_Type const *p_reg) |
Function for getting current frame counter. More... | |
NRF_STATIC_INLINE void | nrf_usbd_lowpower_enable (NRF_USBD_Type *p_reg) |
Function for entering into the USB low power mode. More... | |
NRF_STATIC_INLINE void | nrf_usbd_lowpower_disable (NRF_USBD_Type *p_reg) |
Function for exiting from the USB low power mode. More... | |
NRF_STATIC_INLINE bool | nrf_usbd_lowpower_check (NRF_USBD_Type const *p_reg) |
Function for checking the state of the low power mode. More... | |
NRF_STATIC_INLINE void | nrf_usbd_isoinconfig_set (NRF_USBD_Type *p_reg, nrf_usbd_isoinconfig_t config) |
Function for configuring ISO IN endpoint response to an IN token when no data is ready to be sent. More... | |
NRF_STATIC_INLINE nrf_usbd_isoinconfig_t | nrf_usbd_isoinconfig_get (NRF_USBD_Type const *p_reg) |
Function for getting the cofiguration of ISO IN endpoint response to an IN token when no data is ready to be sent. More... | |
NRF_STATIC_INLINE void | nrf_usbd_ep_easydma_set (NRF_USBD_Type *p_reg, uint8_t ep, uint32_t ptr, uint32_t maxcnt) |
Function for configuring the EasyDMA channel. More... | |
NRF_STATIC_INLINE uint32_t | nrf_usbd_ep_amount_get (NRF_USBD_Type const *p_reg, uint8_t ep) |
Function for getting number of transferred bytes. More... | |
Setup command frame functions. | |
NRF_STATIC_INLINE uint8_t | nrf_usbd_setup_bmrequesttype_get (NRF_USBD_Type const *p_reg) |
Function for reading BMREQUESTTYPE - part of the SETUP packet. More... | |
NRF_STATIC_INLINE uint8_t | nrf_usbd_setup_brequest_get (NRF_USBD_Type const *p_reg) |
Function for reading BMREQUEST - part of the SETUP packet. More... | |
NRF_STATIC_INLINE uint16_t | nrf_usbd_setup_wvalue_get (NRF_USBD_Type const *p_reg) |
Function for reading WVALUE - part of the SETUP packet. More... | |
NRF_STATIC_INLINE uint16_t | nrf_usbd_setup_windex_get (NRF_USBD_Type const *p_reg) |
Function for reading WINDEX - part of the SETUP packet. More... | |
NRF_STATIC_INLINE uint16_t | nrf_usbd_setup_wlength_get (NRF_USBD_Type const *p_reg) |
Function for reading WLENGTH - part of the SETUP packet. More... | |
Hardware access layer for managing the Universal Serial Bus Device (USBD) peripheral.
#define NRF_USBD_EP_NR_GET | ( | ep | ) | ((uint8_t)(((uint8_t)(ep)) & 0xFU)) |
Macro for extracting the endpoint number from the specified endpoint identifier.
Macro that strips out the information about endpoint direction.
[in] | ep | Endpoint identifier. |
#define NRF_USBD_EP_VALIDATE | ( | ep | ) |
Macro for checking if given number is valid endpoint number.
[in] | ep | Endpoint number to be checked. |
true | The endpoint is valid. |
false | The endpoint is not valid. |
#define NRF_USBD_EPIN | ( | epnr | ) | (((uint8_t)(epnr)) | NRF_USBD_EP_DIR_IN) |
Macro for making the IN endpoint identifier from endpoint number.
Macro that sets direction bit to make IN endpoint.
[in] | epnr | Endpoint number. |
#define NRF_USBD_EPIN_CHECK | ( | ep | ) | ( (((uint8_t)(ep)) & NRF_USBD_EP_DIR_Msk) == NRF_USBD_EP_DIR_IN ) |
Macro for checking the endpoint direction.
This macro checks if the specified endpoint has the IN direction.
[in] | ep | Endpoint identifier. |
true | The endpoint direction is IN. |
false | The endpoint direction is OUT. |
#define NRF_USBD_EPIN_CNT 9 |
Total number of IN endpoints.
Total number of IN endpoint (including ISOCHRONOUS).
#define NRF_USBD_EPISO_CHECK | ( | ep | ) | (NRF_USBD_EP_NR_GET(ep) >= NRF_USBD_EPISO_FIRST) |
Macro for checking if endpoint is isochronous.
[in] | ep | It can be endpoint identifier or just endpoint number to be checked. |
true | The endpoint is isochronous type. |
false | The endpoint is bulk of interrupt type. |
#define NRF_USBD_EPISO_FIRST 8 |
First isochronous endpoint number.
The number of the first isochronous endpoint.
#define NRF_USBD_EPISOOUT_NO_DATA ((size_t)(-1)) |
Not isochronous data frame received.
Special value returned by nrf_usbd_episoout_size_get function that means that data frame was not received at all. This allows differentiate between situations when zero size data comes or no data comes at all on isochronous endpoint.
#define NRF_USBD_EPOUT | ( | epnr | ) | (((uint8_t)(epnr)) | NRF_USBD_EP_DIR_OUT) |
Macro for making the OUT endpoint identifier from endpoint number.
Macro that sets direction bit to make OUT endpoint.
[in] | epnr | Endpoint number. |
#define NRF_USBD_EPOUT_CHECK | ( | ep | ) | ( (((uint8_t)(ep)) & NRF_USBD_EP_DIR_Msk) == NRF_USBD_EP_DIR_OUT ) |
Macro for checking endpoint direction.
This macro checks if given endpoint has OUT direction.
[in] | ep | Endpoint identifier |
true | The endpoint direction is OUT |
false | The endpoint direction is IN |
#define NRF_USBD_EPOUT_CNT 9 |
Total number of OUT endpoints.
Total number of OUT endpoint (including ISOCHRONOUS).
#define NRF_USBD_FRAMECNTR_SIZE ( (USBD_FRAMECNTR_FRAMECNTR_Msk >> USBD_FRAMECNTR_FRAMECNTR_Pos) + 1UL ) |
Frame counter size.
The number of counts that can be fitted into frame counter.
enum nrf_usbd_dpdmvalue_t |
enum nrf_usbd_dtoggle_t |
enum nrf_usbd_event_t |
USBD events.
EVENTCAUSE register bit masks.
enum nrf_usbd_int_mask_t |
USBD interrupts.
enum nrf_usbd_isosplit_t |
USBD shorts.
enum nrf_usbd_task_t |
USBD tasks.
NRF_STATIC_INLINE void nrf_usbd_disable | ( | NRF_USBD_Type * | p_reg | ) |
Function for disabling the USBD.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_usbd_dpdmvalue_set | ( | NRF_USBD_Type * | p_reg, |
nrf_usbd_dpdmvalue_t | val | ||
) |
Function for configuring the value to be forced on the bus on the DRIVEDPDM task.
The selected state will be forced on the bus when NRF_USBD_TASK_DRIVEDPDM is set. The state will be removed from the bus on NRF_USBD_TASK_NODRIVEDPDM and the control will be returned to the USBD peripheral.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | val | State to be set. |
NRF_STATIC_INLINE nrf_usbd_dtoggle_t nrf_usbd_dtoggle_get | ( | NRF_USBD_Type * | p_reg, |
uint8_t | ep | ||
) |
Function for getting the data toggle.
Get the current state of data toggling.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint number to return the information about current data toggling. |
NRF_USBD_DTOGGLE_DATA0 | Data toggle is DATA0 on selected endpoint. |
NRF_USBD_DTOGGLE_DATA1 | Data toggle is DATA1 on selected endpoint. |
NRF_STATIC_INLINE void nrf_usbd_dtoggle_set | ( | NRF_USBD_Type * | p_reg, |
uint8_t | ep, | ||
nrf_usbd_dtoggle_t | op | ||
) |
Function for setting the data toggle.
Configuration of the current state of data toggling.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint number with the information about its direction. |
[in] | op | Operation to execute. |
NRF_STATIC_INLINE void nrf_usbd_enable | ( | NRF_USBD_Type * | p_reg | ) |
Function for enabling the USBD.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_usbd_ep_all_disable | ( | NRF_USBD_Type * | p_reg | ) |
Function for disabling all endpoints.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_usbd_ep_amount_get | ( | NRF_USBD_Type const * | p_reg, |
uint8_t | ep | ||
) |
Function for getting number of transferred bytes.
This function gets the number of transferred bytes in the last transaction.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint identifier. |
void nrf_usbd_ep_default_config | ( | NRF_USBD_Type * | p_reg | ) |
Function for setting the default endpoint configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_usbd_ep_disable | ( | NRF_USBD_Type * | p_reg, |
uint8_t | ep | ||
) |
Function for disabling the selected endpoint.
The disabled endpoint does not respond for the tokens on the USB bus.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint ID to be disabled. |
NRF_STATIC_INLINE void nrf_usbd_ep_easydma_set | ( | NRF_USBD_Type * | p_reg, |
uint8_t | ep, | ||
uint32_t | ptr, | ||
uint32_t | maxcnt | ||
) |
Function for configuring the EasyDMA channel.
Configures EasyDMA for the transfer.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint identifier (with direction). |
[in] | ptr | Pointer to the data. |
[in] | maxcnt | Number of bytes to transfer. |
NRF_STATIC_INLINE void nrf_usbd_ep_enable | ( | NRF_USBD_Type * | p_reg, |
uint8_t | ep | ||
) |
Function for enabling the selected endpoint.
The enabled endpoint responds for the tokens on the USB bus.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint ID to be enabled. |
NRF_STATIC_INLINE bool nrf_usbd_ep_enable_check | ( | NRF_USBD_Type const * | p_reg, |
uint8_t | ep | ||
) |
Function for checking whether the endpoint is enabled.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint ID to be checked. |
true | Endpoint is enabled. |
false | Endpoint is disabled. |
NRF_STATIC_INLINE bool nrf_usbd_ep_is_stall | ( | NRF_USBD_Type const * | p_reg, |
uint8_t | ep | ||
) |
Function for checking whether the selected endpoint is stalled.
Function to be used as a syntax sweeter for nrf_usbd_halted_get.
Also as the isochronous endpoint cannot be halted - it returns always false if isochronous endpoint is checked.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint number with IN or OUT flag. |
true | The endpoint is halted. |
false | The endpoint is not halted. |
NRF_STATIC_INLINE void nrf_usbd_ep_stall | ( | NRF_USBD_Type * | p_reg, |
uint8_t | ep | ||
) |
Function for stalling the selected endpoint.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint identifier. |
NRF_STATIC_INLINE void nrf_usbd_ep_unstall | ( | NRF_USBD_Type * | p_reg, |
uint8_t | ep | ||
) |
Function for unstalling the selected endpoint.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint identifier |
NRF_STATIC_INLINE void nrf_usbd_epdatastatus_clear | ( | NRF_USBD_Type * | p_reg, |
uint32_t | flags | ||
) |
Function for clearing DATAEPSTATUS register value.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | flags | Flags defined in nrf_usbd_dataepstatus_mask_t. |
NRF_STATIC_INLINE uint32_t nrf_usbd_epdatastatus_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for getting DATAEPSTATUS register value.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_usbd_epdatastatus_get_and_clear | ( | NRF_USBD_Type * | p_reg | ) |
Function for getting and clearing DATAEPSTATUS register value.
Function clears all flags in register set before returning its value.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE size_t nrf_usbd_episoout_size_get | ( | NRF_USBD_Type const * | p_reg, |
uint8_t | ep | ||
) |
Function for getting number of the received bytes on isochronous endpoint.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint identifier, must be an isochronous OUT endpoint. |
NRF_STATIC_INLINE void nrf_usbd_epout_clear | ( | NRF_USBD_Type * | p_reg, |
uint8_t | ep | ||
) |
Function for clearing OUT endpoint to accept any new incoming traffic.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint identifier. Only OUT interrupt/bulk endpoints are accepted. |
NRF_STATIC_INLINE size_t nrf_usbd_epout_size_get | ( | NRF_USBD_Type const * | p_reg, |
uint8_t | ep | ||
) |
Function for getting the number of received bytes on the selected endpoint.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint identifier. |
NRF_STATIC_INLINE void nrf_usbd_epstatus_clear | ( | NRF_USBD_Type * | p_reg, |
uint32_t | flags | ||
) |
Function for clearing EPSTATUS register value.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | flags | Flags defined in nrf_usbd_epstatus_mask_t. |
NRF_STATIC_INLINE uint32_t nrf_usbd_epstatus_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for getting EPSTATUS register value.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_usbd_epstatus_get_and_clear | ( | NRF_USBD_Type * | p_reg | ) |
Function for getting and clearing EPSTATUS register value.
Function clears all flags in register set before returning its value.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_usbd_event_address_get | ( | NRF_USBD_Type const * | p_reg, |
nrf_usbd_event_t | event | ||
) |
Function for returning the address of the specified USBD event register.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event. |
NRF_STATIC_INLINE bool nrf_usbd_event_check | ( | NRF_USBD_Type const * | p_reg, |
nrf_usbd_event_t | event | ||
) |
Function for retrieving the state of the USBD 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_usbd_event_clear | ( | NRF_USBD_Type * | p_reg, |
nrf_usbd_event_t | event | ||
) |
Function for clearing the specified event.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event. |
NRF_STATIC_INLINE bool nrf_usbd_event_get_and_clear | ( | NRF_USBD_Type * | p_reg, |
nrf_usbd_event_t | event | ||
) |
Function for getting and clearing the state of the specified event.
This function checks the state of the event and clears it.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event. |
true | The event was set. |
false | The event was not set. |
NRF_STATIC_INLINE void nrf_usbd_eventcause_clear | ( | NRF_USBD_Type * | p_reg, |
uint32_t | flags | ||
) |
Function for clearing the EVENTCAUSE flags.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | flags | Flags defined in nrf_usbd_eventcause_mask_t. |
NRF_STATIC_INLINE uint32_t nrf_usbd_eventcause_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for getting the EVENTCAUSE register.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_usbd_eventcause_get_and_clear | ( | NRF_USBD_Type * | p_reg | ) |
Function for getting the EVENTCAUSE register and clearing flags that are set.
The safest way to return current EVENTCAUSE register. All the flags that are returned would be cleared inside EVENTCAUSE register.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_usbd_framecntr_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for getting current frame counter.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_usbd_halted_get | ( | NRF_USBD_Type const * | p_reg, |
uint8_t | ep | ||
) |
Function for getting the HALTEDEPIN register value.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | ep | Endpoint number with IN or OUT flag. |
NRF_STATIC_INLINE void nrf_usbd_int_disable | ( | NRF_USBD_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_usbd_int_enable | ( | NRF_USBD_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_usbd_int_enable_check | ( | NRF_USBD_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_usbd_int_enable_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for retrieving the information about the enabled interrupts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE nrf_usbd_isoinconfig_t nrf_usbd_isoinconfig_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for getting the cofiguration of ISO IN endpoint response to an IN token when no data is ready to be sent.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_usbd_isoinconfig_set | ( | NRF_USBD_Type * | p_reg, |
nrf_usbd_isoinconfig_t | config | ||
) |
Function for configuring ISO IN endpoint response to an IN token when no data is ready to be sent.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | config | Required configuration. |
NRF_STATIC_INLINE nrf_usbd_isosplit_t nrf_usbd_isosplit_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for getting the isochronous buffer splitting configuration.
This function gets the current isochronous buffer splitting configuration.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_usbd_isosplit_set | ( | NRF_USBD_Type * | p_reg, |
nrf_usbd_isosplit_t | split | ||
) |
Function for configuring the isochronous buffer splitting.
This function configures isochronous buffer splitting between IN and OUT endpoints.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | split | Required configuration. |
NRF_STATIC_INLINE bool nrf_usbd_lowpower_check | ( | NRF_USBD_Type const * | p_reg | ) |
Function for checking the state of the low power mode.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
true | The USBD is in low power mode. |
false | The USBD is not in low power mode. |
NRF_STATIC_INLINE void nrf_usbd_lowpower_disable | ( | NRF_USBD_Type * | p_reg | ) |
Function for exiting from the USB low power mode.
After this function is called, the clock source for the USBD is connected internally. The NRF_USBD_EVENTCAUSE_WUREQ_MASK event will be generated and then the USBD registers can be accessed.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_usbd_lowpower_enable | ( | NRF_USBD_Type * | p_reg | ) |
Function for entering into the USB low power mode.
After this function is called, the clock source from the USBD is disconnected internally. After this function is called, most of the USBD registers cannot be accessed anymore.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE bool nrf_usbd_pullup_check | ( | NRF_USBD_Type const * | p_reg | ) |
Function for returning the current the USB pullup state.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
true | The USB pullup is enabled. |
false | The USB pullup is disabled. |
NRF_STATIC_INLINE void nrf_usbd_pullup_disable | ( | NRF_USBD_Type * | p_reg | ) |
Function for disabling the USB pullup.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_usbd_pullup_enable | ( | NRF_USBD_Type * | p_reg | ) |
Function for enabling the USB pullup.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint8_t nrf_usbd_setup_bmrequesttype_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for reading BMREQUESTTYPE - part of the SETUP packet.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint8_t nrf_usbd_setup_brequest_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for reading BMREQUEST - part of the SETUP packet.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint16_t nrf_usbd_setup_windex_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for reading WINDEX - part of the SETUP packet.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint16_t nrf_usbd_setup_wlength_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for reading WLENGTH - part of the SETUP packet.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint16_t nrf_usbd_setup_wvalue_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for reading WVALUE - part of the SETUP packet.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE void nrf_usbd_shorts_disable | ( | NRF_USBD_Type * | p_reg, |
uint32_t | mask | ||
) |
Function for clearing shortcuts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Shortcut mask. |
NRF_STATIC_INLINE void nrf_usbd_shorts_enable | ( | NRF_USBD_Type * | p_reg, |
uint32_t | mask | ||
) |
Function for setting shortcuts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Shortcut mask. |
NRF_STATIC_INLINE uint32_t nrf_usbd_shorts_get | ( | NRF_USBD_Type const * | p_reg | ) |
Function for getting the shortcut mask.
Function returns shortcut register.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRF_STATIC_INLINE uint32_t nrf_usbd_task_address_get | ( | NRF_USBD_Type const * | p_reg, |
nrf_usbd_task_t | task | ||
) |
Function for returning the address of the specified USBD task register.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | Task. |
NRF_STATIC_INLINE void nrf_usbd_task_trigger | ( | NRF_USBD_Type * | p_reg, |
nrf_usbd_task_t | task | ||
) |
Function for activating the specified USBD task.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | Task to be activated. |