|
|
@ -5,6 +5,7 @@ void DRV8710::initialize(config_t* cfg) { // |
|
|
|
m_cfg = *cfg; |
|
|
|
cfg->pwm_cfg.calltrace = cfg->enableTrace; |
|
|
|
m_pwmCtrl.initialize(&cfg->pwm_cfg); |
|
|
|
m_pwmCtrl.settrace(cfg->enableTrace); |
|
|
|
|
|
|
|
ZASSERT(cfg->nsleep != PinNull); |
|
|
|
ZASSERT(cfg->nfault != PinNull); |
|
|
@ -24,6 +25,8 @@ void DRV8710::moveForward(int32_t duty) { |
|
|
|
if (duty > 100) duty = 100; |
|
|
|
if (duty < 0) duty = 0; |
|
|
|
|
|
|
|
if (m_cfg.shaft) duty = 100 - duty; |
|
|
|
|
|
|
|
set_direcetion(true); |
|
|
|
m_pwmCtrl.startPWM(m_cfg.in1_chnannel_index, duty); |
|
|
|
} |
|
|
@ -31,6 +34,8 @@ void DRV8710::moveBackward(int32_t duty) { |
|
|
|
if (duty > 100) duty = 100; |
|
|
|
if (duty < 0) duty = 0; |
|
|
|
|
|
|
|
if (!m_cfg.shaft) duty = 100 - duty; |
|
|
|
|
|
|
|
set_direcetion(false); |
|
|
|
m_pwmCtrl.startPWM(m_cfg.in1_chnannel_index, duty); |
|
|
|
} |
|
|
@ -46,9 +51,7 @@ void DRV8710::move(int32_t duty) { |
|
|
|
} |
|
|
|
|
|
|
|
void DRV8710::set_direcetion(bool direcetion) { |
|
|
|
if (m_cfg.shaft) { |
|
|
|
direcetion = !direcetion; |
|
|
|
} |
|
|
|
if (m_cfg.shaft) direcetion = !direcetion; |
|
|
|
m_in2.setState(direcetion); |
|
|
|
} |
|
|
|
|
|
|
|