QEOV2 driver APIs. More...
Data Structures | |
| struct | qeo_wave_limit_config_t |
| struct | qeo_wave_mode_t |
| struct | qeo_abz_mode_t |
| struct | qeo_z_output_mode_t |
| struct | qeo_pwm_phase_output_table_t |
| struct | qeo_pwm_safety_output_table_t |
| struct | qeo_pwm_mode_t |
Functions | |
| static void | qeo_wave_set_resolution_lines (QEOV2_Type *base, uint32_t lines) |
| QEO set resolution lines for wave mode. More... | |
| static void | qeo_wave_set_output_type (QEOV2_Type *base, qeo_wave_type_t type) |
| QEO set output type for wave mode. More... | |
| static void | qeo_wave_set_saddle_type (QEOV2_Type *base, bool standard) |
| QEO set saddle type for wave mode. More... | |
| static void | qeo_wave_set_phase_shift (QEOV2_Type *base, uint8_t index, double angle) |
| QEO set phase shift for wave mode. More... | |
| static void | qeo_wave_enable_vd_vq_inject (QEOV2_Type *base, bool from_sw) |
| QEO enable vd vq inject and select vq vq source for wave mode. More... | |
| static void | qeo_wave_disable_vd_vq_inject (QEOV2_Type *base) |
| QEO disable vd vq inject for wave mode. More... | |
| static void | qeo_wave_config_vd_vq_value (QEOV2_Type *base, int32_t vd_val, int32_t vq_val) |
| QEO config vd vq value when vd vq from register. More... | |
| static void | qeo_wave_load_vd_vq (QEOV2_Type *base) |
| QEO load vd vq inject value when vd vq from register. More... | |
| static void | qeo_wave_enable_amplitude (QEOV2_Type *base, uint8_t index, double amp) |
| QEO enable amplitude for wave mode. More... | |
| static void | qeo_wave_disable_amplitude (QEOV2_Type *base, uint8_t index) |
| QEO disable amplitude for wave mode. More... | |
| static void | qeo_wave_set_mid_point_shift (QEOV2_Type *base, uint8_t index, double shift) |
| QEO set mid point shift for wave mode. More... | |
| static void | qeo_wave_set_max_limit (QEOV2_Type *base, uint8_t index, uint32_t limit0, uint32_t limit1) |
| QEO set max limmit for wave mode. More... | |
| static void | qeo_wave_set_min_limit (QEOV2_Type *base, uint8_t index, uint32_t limit0, uint32_t limit1) |
| QEO set min limmit for wave mode. More... | |
| static void | qeo_wave_set_deadzone_shift (QEOV2_Type *base, uint8_t index, int32_t shift) |
| QEO set deadzone shift for wave mode. More... | |
| static void | qeo_wave_set_pwm_cycle (QEOV2_Type *base, uint32_t cycle) |
| QEO wave set pwm cycle. More... | |
| static uint32_t | qeo_get_wave_output_val (QEOV2_Type *base, uint8_t index) |
| QEO get wave output value. More... | |
| void | qeo_wave_get_default_mode_config (QEOV2_Type *base, qeo_wave_mode_t *config) |
| QEO wave get defalut mode config. More... | |
| void | qeo_wave_config_mode (QEOV2_Type *base, qeo_wave_mode_t *config) |
| QEO wave config mode. More... | |
| static void | qeo_abz_set_resolution_lines (QEOV2_Type *base, uint32_t lines) |
| QEO set resolution lines for ABZ mode. More... | |
| static void | qeo_abz_set_phase_shift (QEOV2_Type *base, uint8_t index, double angle) |
| QEO set phase shift for three phase output mode. More... | |
| static void | qeo_abz_set_offset (QEOV2_Type *base, double physical_angle) |
| QEO set offset for output signal in ABZ mode. More... | |
| hpm_stat_t | qeo_abz_set_max_frequency (QEOV2_Type *base, uint32_t src_freq, uint32_t freq) |
| QEO set max frequency for ABZ mode. More... | |
| hpm_stat_t | qeo_abz_set_wdog_frequency (QEOV2_Type *base, uint32_t src_freq, uint32_t freq) |
| QEO set wdog frequency for ABZ mode. More... | |
| static void | qeo_abz_disable_wdog (QEOV2_Type *base) |
| QEO disable wdog for ABZ mode. More... | |
| static void | qeo_abz_config_reverse_edge (QEOV2_Type *base, bool speed_pulse_negedge) |
| QEO config reverse edge for ABZ mode. More... | |
| void | qeo_abz_get_default_mode_config (QEOV2_Type *base, qeo_abz_mode_t *config) |
| QEO ABZ get default mode config. More... | |
| void | qeo_abz_config_mode (QEOV2_Type *base, qeo_abz_mode_t *config) |
| QEO ABZ config mode. More... | |
| static void | qeo_abz_enable_output (QEOV2_Type *base) |
| QEO ABZ mode enable output. More... | |
| static void | qeo_abz_disable_output (QEOV2_Type *base) |
| QEO ABZ mode disable output. More... | |
| static void | qeo_abz_enable_position_sync (QEOV2_Type *base, bool sync_identical_pos) |
| QEO ABZ mode enable and configure position sync mode. More... | |
| void | qeo_abz_get_default_z_output_mode (QEOV2_Type *base, qeo_z_output_mode_t *mode) |
| QEO ABZ mode get default zero pulse output mode. More... | |
| void | qeo_abz_config_z_output_mode (QEOV2_Type *base, qeo_z_output_mode_t *mode) |
| QEO ABZ mode configure zero pulse output mode. More... | |
| static void | qeo_pwm_set_resolution_lines (QEOV2_Type *base, uint32_t lines) |
| QEO set resolution lines for PWM mode. More... | |
| static void | qeo_pwm_set_phase_shift (QEOV2_Type *base, uint8_t index, double angle) |
| QEO set phase shift for PWM mode. More... | |
| static void | qeo_pwm_enable_output (QEOV2_Type *base) |
| QEO PWM mode enable output. More... | |
| static void | qeo_pwm_disable_output (QEOV2_Type *base) |
| QEO PWM mode disable output. More... | |
| static bool | qeo_pwm_check_hardware_trig_safety (QEOV2_Type *base) |
| QEO PWM check if it is triggered by hardware to enter safety mode. More... | |
| static void | qeo_pwm_select_phase_table (QEOV2_Type *base, bool positive) |
| QEO PWM select phase table. More... | |
| static void | qeo_pwm_software_enter_safety (QEOV2_Type *base) |
| QEO PWM enter safety mode by software. More... | |
| static void | qeo_pwm_software_exit_safety (QEOV2_Type *base) |
| QEO PWM exit safety mode by software. More... | |
| void | qeo_pwm_get_default_mode_config (QEOV2_Type *base, qeo_pwm_mode_t *config) |
| QEO PWM get default mode config. More... | |
| void | qeo_pwm_config_mode (QEOV2_Type *base, qeo_pwm_mode_t *config) |
| QEO PWM config mode. More... | |
| void | qeo_pwm_get_default_safety_table_config (QEOV2_Type *base, qeo_pwm_safety_output_table_t *table) |
| QEO PWM get default safety table. More... | |
| void | qeo_pwm_get_default_phase_table_config (QEOV2_Type *base, qeo_pwm_phase_output_table_t *table) |
| QEO PWM get default phase table. More... | |
| void | qeo_pwm_config_safety_table (QEOV2_Type *base, qeo_pwm_safety_output_table_t *table) |
| QEO PWM config safety table. More... | |
| void | qeo_pwm_config_phase_table (QEOV2_Type *base, uint8_t index, qeo_pwm_phase_output_table_t *table) |
| QEO PWM onfig phase table. More... | |
| static void | qeo_enable_software_position_inject (QEOV2_Type *base) |
| QEO enable software position inject. More... | |
| static void | qeo_software_position_inject (QEOV2_Type *base, uint32_t position) |
| QEO software inject position. More... | |
| static void | qeo_disable_software_position_inject (QEOV2_Type *base) |
| QEO disable software position inject, QEO will using position from hardware. More... | |
| static bool | qeo_check_calculate_finish (QEOV2_Type *base) |
| QEO check calculate finish status. More... | |
QEOV2 driver APIs.
| enum qeo_abz_type_t |
#include <drivers/inc/hpm_qeov2_drv.h>
#include <drivers/inc/hpm_qeov2_drv.h>
| Enumerator | |
|---|---|
| qeo_pwm_output_force_0 | |
| qeo_pwm_output_force_1 | |
| qeo_pwm_output_not_force | |
| qeo_pwm_output_force_0 | |
| qeo_pwm_output_force_1 | |
| qeo_pwm_output_not_force | |
#include <drivers/inc/hpm_qeov2_drv.h>
| Enumerator | |
|---|---|
| qeo_pwm_safety_output_0 | |
| qeo_pwm_safety_output_1 | |
| qeo_pwm_safety_output_highz | |
| qeo_pwm_safety_output_0 | |
| qeo_pwm_safety_output_1 | |
| qeo_pwm_safety_output_highz | |
| enum qeo_saddle_type_t |
#include <drivers/inc/hpm_qeov2_drv.h>
| Enumerator | |
|---|---|
| qeo_saddle_standard | |
| qeo_saddle_triple | |
| enum qeo_wave_limit_t |
#include <drivers/inc/hpm_qeov2_drv.h>
| enum qeo_wave_type_t |
#include <drivers/inc/hpm_qeov2_drv.h>
| Enumerator | |
|---|---|
| qeo_wave_cosine | |
| qeo_wave_saddle | |
| qeo_wave_abs_cosine | |
| qeo_wave_saw | |
| qeo_wave_cosine | |
| qeo_wave_saddle | |
| qeo_wave_abs_cosine | |
| qeo_wave_saw | |
| enum qeo_z_pulse_type_t |
#include <drivers/inc/hpm_qeov2_drv.h>
| Enumerator | |
|---|---|
| qeo_z_as_zero_signal_mode0 | |
| qeo_z_as_zero_signal_mode1 | |
| qeo_z_as_no_output_signal | |
| qeo_z_as_third_phase_signal | |
| void qeo_abz_config_mode | ( | QEOV2_Type * | base, |
| qeo_abz_mode_t * | config | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO ABZ config mode.
| [in] | base | QEO base address |
| [in] | config | qeo_abz_mode_t |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO config reverse edge for ABZ mode.
| [in] | base | QEO base address |
| [in] | speed_pulse_negedge | true for reverse edge point speed pulse's negedge false for reverse edge point between speed pulse's posedge and negedge, min period dedicated by the num line_width |
| void qeo_abz_config_z_output_mode | ( | QEOV2_Type * | base, |
| qeo_z_output_mode_t * | mode | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO ABZ mode configure zero pulse output mode.
| [in] | base | QEO base address |
| [in] | mode | qeo_z_output_mode_t |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO ABZ mode disable output.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO disable wdog for ABZ mode.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO ABZ mode enable output.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO ABZ mode enable and configure position sync mode.
| [in] | base | QEO base address |
| [in] | sync_identical_pos | true: sync identical posistion; false: sync step of position |
| void qeo_abz_get_default_mode_config | ( | QEOV2_Type * | base, |
| qeo_abz_mode_t * | config | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO ABZ get default mode config.
| [in] | base | QEO base address |
| [in] | config | qeo_abz_mode_t |
| void qeo_abz_get_default_z_output_mode | ( | QEOV2_Type * | base, |
| qeo_z_output_mode_t * | mode | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO ABZ mode get default zero pulse output mode.
| [in] | base | QEO base address |
| [out] | mode | qeo_z_output_mode_t |
| hpm_stat_t qeo_abz_set_max_frequency | ( | QEOV2_Type * | base, |
| uint32_t | src_freq, | ||
| uint32_t | freq | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set max frequency for ABZ mode.
| [in] | base | QEO base address |
| [in] | src_freq | QEO(MOTO system) frequency |
| [in] | freq | abz signal frequency (A pulse frequency) |
| status_success | or status_invalid_argument |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set offset for output signal in ABZ mode.
| [in] | base | QEO base address |
| [in] | physical_angle | physical angle |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set phase shift for three phase output mode.
| [in] | base | QEO base address |
| [in] | index | ABZ index(0/1/2) |
| [in] | angle | left shift angle |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set resolution lines for ABZ mode.
| [in] | base | QEO base address |
| [in] | lines | resolution lines |
| hpm_stat_t qeo_abz_set_wdog_frequency | ( | QEOV2_Type * | base, |
| uint32_t | src_freq, | ||
| uint32_t | freq | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set wdog frequency for ABZ mode.
| [in] | base | QEO base address |
| [in] | src_freq | QEO(MOTO system) frequency |
| [in] | freq | wdog frequency |
| status_success | or status_invalid_argument |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO check calculate finish status.
| [in] | base | QEO base address |
| true | or false |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO disable software position inject, QEO will using position from hardware.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO enable software position inject.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO get wave output value.
| [in] | base | QEO base address |
| [in] | index | wave index(0/1/2) |
| wave | output value |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM check if it is triggered by hardware to enter safety mode.
| [in] | base | QEO base address |
| true | or false |
| void qeo_pwm_config_mode | ( | QEOV2_Type * | base, |
| qeo_pwm_mode_t * | config | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM config mode.
| [in] | base | QEO base address |
| [in] | config | qeo_pwm_mode_t |
| void qeo_pwm_config_phase_table | ( | QEOV2_Type * | base, |
| uint8_t | index, | ||
| qeo_pwm_phase_output_table_t * | table | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM onfig phase table.
| [in] | base | QEO base address |
| [in] | index | phase table index |
| [in] | table | qeo_pwm_phase_output_table_t |
| void qeo_pwm_config_safety_table | ( | QEOV2_Type * | base, |
| qeo_pwm_safety_output_table_t * | table | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM config safety table.
| [in] | base | QEO base address |
| [in] | table | qeo_pwm_safety_output_table_t |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM mode disable output.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM mode enable output.
| [in] | base | QEO base address |
| void qeo_pwm_get_default_mode_config | ( | QEOV2_Type * | base, |
| qeo_pwm_mode_t * | config | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM get default mode config.
| [in] | base | QEO base address |
| [in] | config | qeo_pwm_mode_t |
| void qeo_pwm_get_default_phase_table_config | ( | QEOV2_Type * | base, |
| qeo_pwm_phase_output_table_t * | table | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM get default phase table.
| [in] | base | QEO base address |
| [in] | table | qeo_pwm_phase_output_table_t |
| void qeo_pwm_get_default_safety_table_config | ( | QEOV2_Type * | base, |
| qeo_pwm_safety_output_table_t * | table | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM get default safety table.
| [in] | base | QEO base address |
| [in] | table | qeo_pwm_safety_output_table_t |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM select phase table.
| [in] | base | QEO base address |
| [in] | positive | true for using positive phase table, false for using negative phase table |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set phase shift for PWM mode.
| [in] | base | QEO base address |
| [in] | index | PWM index(0/1/2/3) |
| [in] | angle | left shift angle |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set resolution lines for PWM mode.
| [in] | base | QEO base address |
| [in] | lines | resolution lines |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM enter safety mode by software.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO PWM exit safety mode by software.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO software inject position.
| [in] | base | QEO base address |
| [in] | position | position value |
| void qeo_wave_config_mode | ( | QEOV2_Type * | base, |
| qeo_wave_mode_t * | config | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO wave config mode.
| [in] | base | QEO base address |
| [in] | config | qeo_wave_mode_t |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO config vd vq value when vd vq from register.
| [in] | base | QEO base address |
| [in] | vd_val | vd value |
| [in] | vq_val | vq value |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO disable amplitude for wave mode.
| [in] | base | QEO base address |
| [in] | index | wave index(0/1/2) |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO disable vd vq inject for wave mode.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO enable amplitude for wave mode.
| [in] | base | QEO base address |
| [in] | index | wave index(0/1/2) |
| [in] | amp | amplitude value |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO enable vd vq inject and select vq vq source for wave mode.
| [in] | base | QEO base address |
| [in] | from_sw | false for vd vq data from clc module, true for vd vq from software inject register |
| void qeo_wave_get_default_mode_config | ( | QEOV2_Type * | base, |
| qeo_wave_mode_t * | config | ||
| ) |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO wave get defalut mode config.
| [in] | base | QEO base address |
| [in] | config | qeo_wave_mode_t |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO load vd vq inject value when vd vq from register.
| [in] | base | QEO base address |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set deadzone shift for wave mode.
| [in] | base | QEO base address |
| [in] | index | wave index(0/1/2) |
| [in] | shift | deadzone shift value |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set max limmit for wave mode.
| [in] | base | QEO base address |
| [in] | index | wave index(0/1/2) |
| [in] | limit0 | limit0 value |
| [in] | limit1 | limit1 value |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set mid point shift for wave mode.
| [in] | base | QEO base address |
| [in] | index | wave index(0/1/2) |
| [in] | shift | mid point shift value |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set min limmit for wave mode.
| [in] | base | QEO base address |
| [in] | index | wave index(0/1/2) |
| [in] | limit0 | limit0 value |
| [in] | limit1 | limit1 value |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set output type for wave mode.
| [in] | base | QEO base address |
| [in] | type | qeo_wave_type_t |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set phase shift for wave mode.
| [in] | base | QEO base address |
| [in] | index | wave index(0/1/2) |
| [in] | angle | left shift angle |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO wave set pwm cycle.
| [in] | base | QEO base address |
| [in] | cycle | pwm period cycle |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set resolution lines for wave mode.
| [in] | base | QEO base address |
| [in] | lines | resolution lines |
|
inlinestatic |
#include <drivers/inc/hpm_qeov2_drv.h>
QEO set saddle type for wave mode.
| [in] | base | QEO base address |
| [in] | standard | true for standard saddle, false for triangular wave stacking |