Here is the list of APIs used for Sigma Delta interface
Functions | |
sdfm_handle | SDFM_init (uint8_t pru_id, uint8_t coreId) |
Initialize SDFM instance. More... | |
void | SDFM_configIepCount (sdfm_handle h_sdfm, uint32_t epwm_out_freq) |
Configure iep increment & iep count in one epwm cycle. More... | |
void | SDFM_configEcap (sdfm_handle h_sdfm, uint8_t ecap_divider) |
Configure ecap parameters for generate 20MHz SD clock. More... | |
void | SDFM_setEnableChannel (sdfm_handle h_sdfm, uint8_t channel_number) |
Enable the channel specified by the channel number parameter. More... | |
void | SDFM_setCompFilterOverSamplingRatio (sdfm_handle h_sdfm, uint8_t ch_id, uint16_t osr) |
Configure comparator filter (over current) sampling ratio. More... | |
void | SDFM_enable (sdfm_handle h_sdfm) |
SDFM global enable. More... | |
void | SDFM_setCompFilterThresholds (sdfm_handle h_sdfm, uint8_t ch_id, SDFM_ThresholdParms thresholdParms) |
configuration of SDFM threshold values More... | |
void | SDFM_setSampleTriggerTime (sdfm_handle h_sdfm, float samp_trig_time) |
configuration of single sample trigger time one Epwm cycle More... | |
void | SDFM_enableDoubleSampling (sdfm_handle h_sdfm, float samp_trig_time) |
configuration and enable second normal current sample starting time one Epwm cycle More... | |
void | SDFM_disableDoubleSampling (sdfm_handle h_sdfm) |
Disable double normal current update/sampling. More... | |
void | SDFM_configDataFilter (sdfm_handle h_sdfm, uint8_t ch_id, uint8_t filter) |
configuration of SDFM channel Acc source (sync filter type). Current SDFM firmware implementation support only SYNC3 filter More... | |
void | SDFM_selectClockSource (sdfm_handle h_sdfm, uint8_t ch_id, SDFM_ClkSourceParms clkPrams) |
configuration of SDFM channel clock source & clock inversion More... | |
void | SDFM_enableComparator (sdfm_handle h_sdfm, uint8_t ch) |
This API enables the Comparator for the selected channel. More... | |
void | SDFM_disableComparator (sdfm_handle h_sdfm, uint8_t ch) |
This API disables the Comparator for the selected channel. More... | |
void | SDFM_configComparatorGpioPins (sdfm_handle h_sdfm, uint8_t ch, uint32_t gpio_base_addr, uint32_t pin_number) |
configure GPIO pin number and address for associate Channel Number More... | |
uint32_t | SDFM_getFilterData (sdfm_handle h_sdfm, uint8_t ch) |
get sample data from DMEM More... | |
void | SDFM_setFilterOverSamplingRatio (sdfm_handle h_sdfm, uint16_t nc_osr) |
Configure iep count for normal current sampling. More... | |
uint32_t | SDFM_getFirmwareVersion (sdfm_handle h_sdfm) |
Return Firmware version. More... | |
void | SDFM_configFastDetect (sdfm_handle h_sdfm, uint8_t ch, uint8_t *fdParms) |
This API Configure Fast detect block fields. More... | |
int32_t | SDFM_getFastDetectErrorStatus (sdfm_handle h_sdfm, uint8_t chNum) |
This API returns the fast detect error status for specified SDFM channel number. More... | |
int32_t | SDFM_clearPwmTripStatus (sdfm_handle h_sdfm, uint8_t chNum) |
Clear PWM trip status of the corresponding PWM trip zone block for specified SDFM channel number. More... | |
void | SDFM_enableContinuousNormalCurrent (sdfm_handle h_sdfm) |
This API enables continuous normal current sampling. More... | |
void | SDFM_enableLoadShareMode (sdfm_handle h_sdfm, uint8_t sliceId) |
This API enables load share mode. More... | |
void | SDFM_measureClockPhaseDelay (sdfm_handle h_sdfm, uint16_t clEdg) |
Measure Clock phase compensation. More... | |
float | SDFM_getClockPhaseDelay (sdfm_handle h_sdfm) |
This API returns Clock phase compensation. More... | |
uint8_t | SDFM_getLowThresholdStatus (sdfm_handle h_sdfm, uint8_t chNum) |
This API returns Low threshold Status for specified SDFM channel number. More... | |
uint8_t | SDFM_getHighThresholdStatus (sdfm_handle h_sdfm, uint8_t chNum) |
This API returns high threshold Status for specified SDFM channel number. More... | |
int32_t | SDFM_clearOverCurrentError (sdfm_handle h_sdfm, uint8_t chNum) |
This API clears Overcurrent error bit of corresponding PWM register for specified SDFM channel number. More... | |
void | SDFM_enableZeroCrossDetection (sdfm_handle h_sdfm, uint8_t chNum, uint32_t zcThr) |
This API enables zero cross detection for specified SDFM channel number. More... | |
uint8_t | SDFM_getZeroCrossThresholdStatus (sdfm_handle h_sdfm, uint8_t chNum) |
This API returns Zero cross Status for specified SDFM channel number. More... | |
void | SDFM_disableZeroCrossDetection (sdfm_handle h_sdfm, uint8_t chNum) |
This API disbales zero cross detection for specified SDFM channel number. More... | |
Typedefs | |
typedef SDFM * | sdfm_handle |
Macros | |
#define | NUM_PRU ( 2 ) |
#define | PRU_ID_0 ( 0 ) /* PRU 0 ID */ |
#define | PRU_ID_1 ( 1 ) /* PRU 1 ID */ |
#define | PRUx_DMEM_BASE_ADD (0x00) |
#define | RTUx_DMEM_BASE_ADD (0x200) |
#define | TXPRUx_DMEM_BASE_ADD (0x400) |
#define | NUM_SD_CH ( ICSSG_NUM_SD_CH ) |
#define | SDFM_EVT ( TRIGGER_HOST_SDFM_EVT ) |
#define NUM_PRU ( 2 ) |
#define PRU_ID_0 ( 0 ) /* PRU 0 ID */ |
#define PRU_ID_1 ( 1 ) /* PRU 1 ID */ |
#define PRUx_DMEM_BASE_ADD (0x00) |
#define RTUx_DMEM_BASE_ADD (0x200) |
#define TXPRUx_DMEM_BASE_ADD (0x400) |
#define NUM_SD_CH ( ICSSG_NUM_SD_CH ) |
#define SDFM_EVT ( TRIGGER_HOST_SDFM_EVT ) |
typedef SDFM* sdfm_handle |
sdfm_handle SDFM_init | ( | uint8_t | pru_id, |
uint8_t | coreId | ||
) |
void SDFM_configIepCount | ( | sdfm_handle | h_sdfm, |
uint32_t | epwm_out_freq | ||
) |
Configure iep increment & iep count in one epwm cycle.
[in] | h_sdfm | SDFM handle |
[in] | epwm_out_freq | epwm output frequency |
void SDFM_configEcap | ( | sdfm_handle | h_sdfm, |
uint8_t | ecap_divider | ||
) |
Configure ecap parameters for generate 20MHz SD clock.
[in] | h_sdfm | SDFM handle |
[in] | ecap_divider | ecap divider for sdfm clock |
void SDFM_setEnableChannel | ( | sdfm_handle | h_sdfm, |
uint8_t | channel_number | ||
) |
Enable the channel specified by the channel number parameter.
[in] | h_sdfm | SDFM handle |
[in] | channel_number | channel number |
void SDFM_setCompFilterOverSamplingRatio | ( | sdfm_handle | h_sdfm, |
uint8_t | ch_id, | ||
uint16_t | osr | ||
) |
Configure comparator filter (over current) sampling ratio.
[in] | h_sdfm | SDFM handle |
[in] | ch_id | current ch number |
[in] | osr | comparator filter/Over current sampling ratio |
void SDFM_enable | ( | sdfm_handle | h_sdfm | ) |
void SDFM_setCompFilterThresholds | ( | sdfm_handle | h_sdfm, |
uint8_t | ch_id, | ||
SDFM_ThresholdParms | thresholdParms | ||
) |
void SDFM_setSampleTriggerTime | ( | sdfm_handle | h_sdfm, |
float | samp_trig_time | ||
) |
configuration of single sample trigger time one Epwm cycle
[in] | h_sdfm | SDFM handle |
[in] | samp_trig_time | first sample trigger time in one pwm cycle |
void SDFM_enableDoubleSampling | ( | sdfm_handle | h_sdfm, |
float | samp_trig_time | ||
) |
configuration and enable second normal current sample starting time one Epwm cycle
[in] | h_sdfm | SDFM handle |
[in] | samp_trig_time | second sample trigger time in one PWM cycle |
void SDFM_disableDoubleSampling | ( | sdfm_handle | h_sdfm | ) |
Disable double normal current update/sampling.
[in] | h_sdfm | SDFM handle |
void SDFM_configDataFilter | ( | sdfm_handle | h_sdfm, |
uint8_t | ch_id, | ||
uint8_t | filter | ||
) |
void SDFM_selectClockSource | ( | sdfm_handle | h_sdfm, |
uint8_t | ch_id, | ||
SDFM_ClkSourceParms | clkPrams | ||
) |
void SDFM_enableComparator | ( | sdfm_handle | h_sdfm, |
uint8_t | ch | ||
) |
This API enables the Comparator for the selected channel.
[in] | h_sdfm | SDFM handle |
[in] | ch | current ch number |
void SDFM_disableComparator | ( | sdfm_handle | h_sdfm, |
uint8_t | ch | ||
) |
This API disables the Comparator for the selected channel.
[in] | h_sdfm | SDFM handle |
[in] | ch | current ch number |
void SDFM_configComparatorGpioPins | ( | sdfm_handle | h_sdfm, |
uint8_t | ch, | ||
uint32_t | gpio_base_addr, | ||
uint32_t | pin_number | ||
) |
configure GPIO pin number and address for associate Channel Number
[in] | h_sdfm | SDFM handle |
[in] | ch | current ch number |
[in] | gpio_base_addr | GPIO bas address |
[in] | pin_number | GPIO PIN number |
uint32_t SDFM_getFilterData | ( | sdfm_handle | h_sdfm, |
uint8_t | ch | ||
) |
get sample data from DMEM
[in] | h_sdfm | SDFM handle |
[in] | ch | current ch number |
current | sample value |
void SDFM_setFilterOverSamplingRatio | ( | sdfm_handle | h_sdfm, |
uint16_t | nc_osr | ||
) |
Configure iep count for normal current sampling.
[in] | h_sdfm | SDFM handle |
[in] | nc_osr | Normal current osr value |
uint32_t SDFM_getFirmwareVersion | ( | sdfm_handle | h_sdfm | ) |
Return Firmware version.
[in] | h_sdfm | SDFM handle |
firmwareVersion | release vesrion of firmware |
void SDFM_configFastDetect | ( | sdfm_handle | h_sdfm, |
uint8_t | ch, | ||
uint8_t * | fdParms | ||
) |
This API Configure Fast detect block fields.
[in] | h_sdfm | SDFM handle |
[in] | ch | current ch number |
[in] | fdParms | array of fast detect fields. {window size, zero max count, zero min count, one max count, one min count} |
int32_t SDFM_getFastDetectErrorStatus | ( | sdfm_handle | h_sdfm, |
uint8_t | chNum | ||
) |
int32_t SDFM_clearPwmTripStatus | ( | sdfm_handle | h_sdfm, |
uint8_t | chNum | ||
) |
void SDFM_enableContinuousNormalCurrent | ( | sdfm_handle | h_sdfm | ) |
This API enables continuous normal current sampling.
[in] | h_sdfm | SDFM handle |
void SDFM_enableLoadShareMode | ( | sdfm_handle | h_sdfm, |
uint8_t | sliceId | ||
) |
This API enables load share mode.
[in] | h_sdfm | SDFM handle |
[in] | sliceId | slice ID |
void SDFM_measureClockPhaseDelay | ( | sdfm_handle | h_sdfm, |
uint16_t | clEdg | ||
) |
Measure Clock phase compensation.
[in] | h_sdfm | SDFM handle |
[in] | clEdg | Clock polarity: 1 -> falling edge, 0 -> raising edge |
float SDFM_getClockPhaseDelay | ( | sdfm_handle | h_sdfm | ) |
This API returns Clock phase compensation.
[in] | h_sdfm | SDFM handle |
Phase | delay in nano sec |
uint8_t SDFM_getLowThresholdStatus | ( | sdfm_handle | h_sdfm, |
uint8_t | chNum | ||
) |
uint8_t SDFM_getHighThresholdStatus | ( | sdfm_handle | h_sdfm, |
uint8_t | chNum | ||
) |
int32_t SDFM_clearOverCurrentError | ( | sdfm_handle | h_sdfm, |
uint8_t | chNum | ||
) |
void SDFM_enableZeroCrossDetection | ( | sdfm_handle | h_sdfm, |
uint8_t | chNum, | ||
uint32_t | zcThr | ||
) |
uint8_t SDFM_getZeroCrossThresholdStatus | ( | sdfm_handle | h_sdfm, |
uint8_t | chNum | ||
) |
void SDFM_disableZeroCrossDetection | ( | sdfm_handle | h_sdfm, |
uint8_t | chNum | ||
) |