TI中文支持网
TI专业的中文技术问题搜集分享网站

采用motorware 例程,里面在哪里设置死区时间?

如题,采用instaspinFoc,用的是motorware的例程,但是不知道在哪里设置死区时间。

Eric Ma:

采用instaspinFoc,用的是motorware的例程,但是不知道在哪里设置死区时间

ERIC:

逻辑就是,设置死区时间,就是要去PWM初始化的地方去看,在hal.c里面的PWM函数

void HAL_setupPwms(HAL_Handle handle, const uint_least16_t systemFreq_MHz, const float_t pwmPeriod_usec, const uint_least16_t numPwmTicksPerIsrTick)

// setup the Dead-Band Rising Edge Delay Register (DBRED) PWM_setDeadBandRisingEdgeDelay(obj->pwmHandle[cnt],HAL_PWM_DBRED_CNT);

// setup the Dead-Band Falling Edge Delay Register (DBFED) PWM_setDeadBandFallingEdgeDelay(obj->pwmHandle[cnt],HAL_PWM_DBFED_CNT);

如题,采用instaspinFoc,用的是motorware的例程,但是不知道在哪里设置死区时间。

Linda:

回复 Eric Ma:

您好!

在hal.h文件的以下位置可以设置死区时间的值:

//! \brief Defines the PWM deadband falling edge delay count (system clocks)//!#define HAL_PWM_DBFED_CNT (uint16_t)(2.0 * (float_t)USER_SYSTEM_FREQ_MHz) // 2 usec

//! \brief Defines the PWM deadband rising edge delay count (system clocks)//!#define HAL_PWM_DBRED_CNT (uint16_t)(2.0 * (float_t)USER_SYSTEM_FREQ_MHz) // 2 usec

赞(0)
未经允许不得转载:TI中文支持网 » 采用motorware 例程,里面在哪里设置死区时间?
分享到: 更多 (0)