RZT Flexible Software Package Documentation
Release v2.2.0
|
|
Interface for the Port Output Enable 3.
Defines the API and data structures for the Port Output Enable 3 interface.
The POE3 disables timer output pins based on configurable events.
Data Structures | |
struct | poe3_pwm_pin_setting_t |
struct | poe3_complementary_pwm_pin_setting_t |
struct | poe3_complementary_pwm_setting_t |
struct | poe3_output_short_circuit_setting_t |
struct | poe3_status_t |
struct | poe3_callback_args_t |
struct | poe3_cfg_t |
struct | poe3_api_t |
struct | poe3_instance_t |
Typedefs | |
typedef void | poe3_ctrl_t |
Enumerations | |
enum | poe3_state_t |
enum | poe3_active_level_t |
enum | poe3_pin_select_t |
struct poe3_pwm_pin_setting_t |
Timer PWM Output pin control setting
Data Fields | ||
---|---|---|
poe3_pin_select_t | pwm_pin_select | PWM Pin Select. |
bool | hiz_output_enable | High-impedance output enable. |
struct poe3_complementary_pwm_pin_setting_t |
Timer Complementary PWM Output pin control setting
Data Fields | ||
---|---|---|
poe3_pin_select_t | positive_pwm_pin_select | Positive PWM Pin Select. |
poe3_pin_select_t | negative_pwm_pin_select | Negative PWM Pin Select. |
poe3_active_level_t | positive_pwm_pin_active_level | Active level Positive PWM pin for short circuit detection. |
poe3_active_level_t | negative_pwm_pin_active_level | Active level Negative PWM pin for short circuit detection. |
bool | hiz_output_enable | High-impedance output enable. |
struct poe3_complementary_pwm_setting_t |
Timer Complementary PWM control setting
Data Fields | ||
---|---|---|
poe3_complementary_pwm_pin_setting_t | pin_setting[3] | Complementary PWM pin setting. |
struct poe3_output_short_circuit_setting_t |
struct poe3_status_t |
POE3 status
Data Fields | ||
---|---|---|
poe3_state_t | state | Current state of POE3. |
struct poe3_callback_args_t |
Callback function parameter data.
Data Fields | ||
---|---|---|
void const * | p_context | Placeholder for user data, set in poe3_cfg_t. |
struct poe3_cfg_t |
User configuration structure, used in the open function.
Data Fields | |
uint32_t | pwm_pin |
Length of PWM pin settings. | |
poe3_pwm_pin_setting_t const * | p_pwm_pin_setting |
Settings for PWM pin. | |
uint32_t | complementary_pwm_pin |
Length of complementary PWM pin settings. | |
poe3_complementary_pwm_setting_t const * | p_complementary_pwm_pin_setting |
Settings for complementary PWM pin. | |
uint32_t | short_circuit |
Length of short circuit settings. | |
poe3_output_short_circuit_setting_t const * | p_short_circuit_setting |
High impedance output when the output short circuit. | |
bool | oscillation_stop_hiz_output_enable |
High-impedance output when the oscillator is stopped. | |
void(* | p_callback )(poe3_callback_args_t *p_args) |
void const * | p_context |
void const * | p_extend |
Extension parameter for hardware specific settings. | |
void(* poe3_cfg_t::p_callback) (poe3_callback_args_t *p_args) |
Callback called when a POE3 interrupt occurs.
void const* poe3_cfg_t::p_context |
Placeholder for user data. Passed to the user callback in poe3_callback_args_t.
struct poe3_api_t |
Port Output Enable 3 API structure. POE3 functions implemented at the HAL layer will follow this API.
Data Fields | |
fsp_err_t(* | open )(poe3_ctrl_t *const p_ctrl, poe3_cfg_t const *const p_cfg) |
fsp_err_t(* | statusGet )(poe3_ctrl_t *const p_ctrl, poe3_status_t *p_status) |
fsp_err_t(* | outputDisable )(poe3_ctrl_t *const p_ctrl) |
fsp_err_t(* | reset )(poe3_ctrl_t *const p_ctrl) |
fsp_err_t(* | close )(poe3_ctrl_t *const p_ctrl) |
fsp_err_t(* | callbackSet )(poe3_ctrl_t *const p_ctrl, void(*p_callback)(poe3_callback_args_t *), void const *const p_context, poe3_callback_args_t *const p_callback_memory) |
fsp_err_t(* poe3_api_t::open) (poe3_ctrl_t *const p_ctrl, poe3_cfg_t const *const p_cfg) |
Initial configuration.
[in] | p_ctrl | Pointer to control block. Must be declared by user. Elements set here. |
[in] | p_cfg | Pointer to configuration structure. All elements of this structure must be set by user. |
fsp_err_t(* poe3_api_t::statusGet) (poe3_ctrl_t *const p_ctrl, poe3_status_t *p_status) |
Gets the current driver state.
[in] | p_ctrl | Control block set in poe3_api_t::open call. |
[out] | p_status | Provides the current state of the POE3. |
fsp_err_t(* poe3_api_t::outputDisable) (poe3_ctrl_t *const p_ctrl) |
Disables timer output pins by software request.
[in] | p_ctrl | Control block set in poe3_api_t::open call. |
fsp_err_t(* poe3_api_t::reset) (poe3_ctrl_t *const p_ctrl) |
Attempts to clear status flags to reenable timer output pins. Confirm all status flags are cleared after calling this function by calling poe3_api_t::statusGet().
[in] | p_ctrl | Control block set in poe3_api_t::open call. |
fsp_err_t(* poe3_api_t::close) (poe3_ctrl_t *const p_ctrl) |
Disables POE3 interrupt.
[in] | p_ctrl | Control block set in poe3_api_t::open call. |
fsp_err_t(* poe3_api_t::callbackSet) (poe3_ctrl_t *const p_ctrl, void(*p_callback)(poe3_callback_args_t *), void const *const p_context, poe3_callback_args_t *const p_callback_memory) |
Specify callback function and optional context pointer and working memory pointer.
[in] | p_ctrl | Control block set in poe3_api_t::open call for this timer. |
[in] | p_callback | Callback function to register |
[in] | p_context | Pointer to send to callback function |
[in] | p_callback_memory | Pointer to volatile memory where callback structure can be allocated. Callback arguments allocated here are only valid during the callback. |
struct poe3_instance_t |
This structure encompasses everything that is needed to use an instance of this interface.
Data Fields | ||
---|---|---|
poe3_ctrl_t * | p_ctrl | Pointer to the control structure for this instance. |
poe3_cfg_t const * | p_cfg | Pointer to the configuration structure for this instance. |
poe3_api_t const * | p_api | Pointer to the API structure for this instance. |
typedef void poe3_ctrl_t |
POE3 control block. Allocate an instance specific control block to pass into the POE3 API calls.
enum poe3_state_t |
POE3 states.
Enumerator | |
---|---|
POE3_STATE_NO_DISABLE_REQUEST | Timer output is not disabled by POE3. |
POE3_STATE_POE0_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE0# pin. |
POE3_STATE_POE4_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE4# pin. |
POE3_STATE_POE8_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE8# pin. |
POE3_STATE_POE10_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE10# pin. |
POE3_STATE_POE11_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE11# pin. |
POE3_STATE_SOFTWARE_STOP_DISABLE_REQUEST | Timer output disabled due to poe3_api_t::outputDisable() |
POE3_STATE_OSCILLATION_STOP_DISABLE_REQUEST | Timer output disabled due to main oscillator stop. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_1_ERROR_REQUEST | Timer output disabled due to output short circuit 1. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_2_ERROR_REQUEST | Timer output disabled due to output short circuit 2. |
POE3_STATE_NO_DISABLE_REQUEST | Timer output is not disabled by POE3. |
POE3_STATE_POE0_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE0# pin. |
POE3_STATE_POE4_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE4# pin. |
POE3_STATE_POE8_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE8# pin. |
POE3_STATE_POE10_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE10# pin. |
POE3_STATE_POE11_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE11# pin. |
POE3_STATE_SOFTWARE_STOP_DISABLE_REQUEST | Timer output disabled due to poe3_api_t::outputDisable() |
POE3_STATE_OSCILLATION_STOP_DISABLE_REQUEST | Timer output disabled due to main oscillator stop. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_1_ERROR_REQUEST | Timer output disabled due to output short circuit 1. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_2_ERROR_REQUEST | Timer output disabled due to output short circuit 2. |
POE3_STATE_DSMIF0_ERROR_REQUEST | Timer output disabled due to DSMIF0 Error0. |
POE3_STATE_DSMIF1_ERROR_REQUEST | Timer output disabled due to DSMIF1 Error0. |
POE3_STATE_DSMIF2_ERROR_REQUEST | Timer output disabled due to DSMIF2 Error0. |
POE3_STATE_DSMIF3_ERROR_REQUEST | Timer output disabled due to DSMIF3 Error0. |
POE3_STATE_DSMIF4_ERROR_REQUEST | Timer output disabled due to DSMIF4 Error0. |
POE3_STATE_DSMIF5_ERROR_REQUEST | Timer output disabled due to DSMIF5 Error0. |
POE3_STATE_DSMIF6_ERROR_REQUEST | Timer output disabled due to DSMIF6 Error0. |
POE3_STATE_DSMIF7_ERROR_REQUEST | Timer output disabled due to DSMIF7 Error0. |
POE3_STATE_DSMIF8_ERROR_REQUEST | Timer output disabled due to DSMIF8 Error0. |
POE3_STATE_DSMIF9_ERROR_REQUEST | Timer output disabled due to DSMIF9 Error0. |
POE3_STATE_DSMIF0_1_ERROR_REQUEST | Timer output disabled due to DSMIF0 Error1. |
POE3_STATE_DSMIF1_1_ERROR_REQUEST | Timer output disabled due to DSMIF1 Error1. |
POE3_STATE_DSMIF2_1_ERROR_REQUEST | Timer output disabled due to DSMIF2 Error1. |
POE3_STATE_DSMIF3_1_ERROR_REQUEST | Timer output disabled due to DSMIF3 Error1. |
POE3_STATE_DSMIF4_1_ERROR_REQUEST | Timer output disabled due to DSMIF4 Error1. |
POE3_STATE_DSMIF5_1_ERROR_REQUEST | Timer output disabled due to DSMIF5 Error1. |
POE3_STATE_DSMIF6_1_ERROR_REQUEST | Timer output disabled due to DSMIF6 Error1. |
POE3_STATE_DSMIF7_1_ERROR_REQUEST | Timer output disabled due to DSMIF7 Error1. |
POE3_STATE_DSMIF8_1_ERROR_REQUEST | Timer output disabled due to DSMIF8 Error1. |
POE3_STATE_DSMIF9_1_ERROR_REQUEST | Timer output disabled due to DSMIF9 Error1. |
POE3_STATE_NO_DISABLE_REQUEST | Timer output is not disabled by POE3. |
POE3_STATE_POE0_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE0# pin. |
POE3_STATE_POE4_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE4# pin. |
POE3_STATE_POE8_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE8# pin. |
POE3_STATE_POE10_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE10# pin. |
POE3_STATE_POE11_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE11# pin. |
POE3_STATE_SOFTWARE_STOP_DISABLE_REQUEST | Timer output disabled due to poe3_api_t::outputDisable() |
POE3_STATE_OSCILLATION_STOP_DISABLE_REQUEST | Timer output disabled due to main oscillator stop. |
POE3_STATE_DSMIF0_0_ERROR_REQUEST | Timer output disabled due to DSMIF0 Error0. |
POE3_STATE_DSMIF1_0_ERROR_REQUEST | Timer output disabled due to DSMIF1 Error0. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_1_ERROR_REQUEST | Timer output disabled due to output short circuit 1. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_2_ERROR_REQUEST | Timer output disabled due to output short circuit 2. |
POE3_STATE_DSMIF0_1_ERROR_REQUEST | Timer output disabled due to DSMIF0 Error1. |
POE3_STATE_DSMIF1_1_ERROR_REQUEST | Timer output disabled due to DSMIF1 Error1. |
POE3_STATE_NO_DISABLE_REQUEST | Timer output is not disabled by POE3. |
POE3_STATE_POE0_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE0# pin. |
POE3_STATE_POE4_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE4# pin. |
POE3_STATE_POE8_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE8# pin. |
POE3_STATE_POE10_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE10# pin. |
POE3_STATE_POE11_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE11# pin. |
POE3_STATE_SOFTWARE_STOP_DISABLE_REQUEST | Timer output disabled due to poe3_api_t::outputDisable() |
POE3_STATE_OSCILLATION_STOP_DISABLE_REQUEST | Timer output disabled due to main oscillator stop. |
POE3_STATE_DSMIF0_ERROR_REQUEST | Timer output disabled due to DSMIF0 error. |
POE3_STATE_DSMIF1_ERROR_REQUEST | Timer output disabled due to DSMIF1 error. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_1_ERROR_REQUEST | Timer output disabled due to output short circuit 1. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_2_ERROR_REQUEST | Timer output disabled due to output short circuit 2. |
POE3_STATE_NO_DISABLE_REQUEST | Timer output is not disabled by POE3. |
POE3_STATE_POE0_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE0# pin. |
POE3_STATE_POE4_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE4# pin. |
POE3_STATE_POE8_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE8# pin. |
POE3_STATE_POE10_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE10# pin. |
POE3_STATE_POE11_HIGH_IMPEDANCE_REQUEST | Timer output disabled due to POE11# pin. |
POE3_STATE_SOFTWARE_STOP_DISABLE_REQUEST | Timer output disabled due to poe3_api_t::outputDisable() |
POE3_STATE_OSCILLATION_STOP_DISABLE_REQUEST | Timer output disabled due to main oscillator stop. |
POE3_STATE_DSMIF0_ERROR_REQUEST | Timer output disabled due to DSMIF0 error. |
POE3_STATE_DSMIF1_ERROR_REQUEST | Timer output disabled due to DSMIF1 error. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_1_ERROR_REQUEST | Timer output disabled due to output short circuit 1. |
POE3_STATE_OUTPUT_SHORT_CIRCUIT_2_ERROR_REQUEST | Timer output disabled due to output short circuit 2. |
enum poe3_active_level_t |
Active level for short circuit detection.
enum poe3_pin_select_t |
Timer Control Pin selection