![]() |
Synergy Software Package User's Manual
|
#include <sf_external_irq_api.h>
Data Fields | |
| ssp_err_t(* | open )(sf_external_irq_ctrl_t *const p_ctrl, sf_external_irq_cfg_t const *const p_cfg) |
| ssp_err_t(* | wait )(sf_external_irq_ctrl_t *const p_ctrl, ULONG const timeout) |
| ssp_err_t(* | versionGet )(ssp_version_t *const p_version) |
| ssp_err_t(* | close )(sf_external_irq_ctrl_t *const p_ctrl) |
External IRQ framework API structure. External IRQ implementations use the following API.
| ssp_err_t(* sf_external_irq_api_t::close) (sf_external_irq_ctrl_t *const p_ctrl) |
Close channel at HAL layer and release the RTOS services.
| [in] | p_ctrl | Pointer to device control block initialized in Open call for this external interrupt. |
| ssp_err_t(* sf_external_irq_api_t::open) (sf_external_irq_ctrl_t *const p_ctrl, sf_external_irq_cfg_t const *const p_cfg) |
Create the semaphore, then handle driver initialization at the HAL layer.
| [in,out] | p_ctrl | Pointer to a structure allocated by user. The device control structure is initialized in this function. |
| [in] | p_cfg | Pointer to configuration structure. All elements of the structure must be set by user. |
| ssp_err_t(* sf_external_irq_api_t::versionGet) (ssp_version_t *const p_version) |
Get version and store it in provided pointer p_version.
| [out] | p_version | Code and API version used stored here. |
| ssp_err_t(* sf_external_irq_api_t::wait) (sf_external_irq_ctrl_t *const p_ctrl, ULONG const timeout) |
Wait for the next external interrupt expiration, then return.
| [in] | p_ctrl | Handle set in SF_EXTERNAL_IRQ_Open. |
| [in] | timeout | ThreadX timeout. Select TX_NO_WAIT, a value in system clock counts between 1 and 0xFFFFFFFF, or TX_WAIT_FOREVER. |