Skip to content

Commit

Permalink
fix: missing timer init
Browse files Browse the repository at this point in the history
  • Loading branch information
3djc committed May 19, 2024
1 parent 1afc883 commit d2730b0
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 8 deletions.
38 changes: 34 additions & 4 deletions radio/src/targets/common/arm/stm32/stm32_timer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,18 @@ void stm32_timer_enable_clock(TIM_TypeDef *TIMx)
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM4);
} else if (TIMx == TIM5) {
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM5);
} else if (TIMx == TIM6) {
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM6);
} else if (TIMx == TIM7) {
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM7);
} else if (TIMx == TIM8) {
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_TIM8);
} else if (TIMx == TIM9) {
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_TIM9);
} else if (TIMx == TIM10) {
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_TIM10);
} else if (TIMx == TIM11) {
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_TIM11);
} else if (TIMx == TIM12) {
LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM12);
} else if (TIMx == TIM13) {
Expand All @@ -56,15 +66,25 @@ void stm32_timer_disable_clock(TIM_TypeDef *TIMx)
LL_APB1_GRP1_DisableClock(LL_APB1_GRP1_PERIPH_TIM4);
} else if (TIMx == TIM5) {
LL_APB1_GRP1_DisableClock(LL_APB1_GRP1_PERIPH_TIM5);
} else if (TIMx == TIM6) {
LL_APB1_GRP1_DisableClock(LL_APB1_GRP1_PERIPH_TIM6);
} else if (TIMx == TIM7) {
LL_APB1_GRP1_DisableClock(LL_APB1_GRP1_PERIPH_TIM7);
} else if (TIMx == TIM8) {
LL_APB2_GRP1_DisableClock(LL_APB2_GRP1_PERIPH_TIM8);
} else if (TIMx == TIM9) {
LL_APB2_GRP1_DisableClock(LL_APB2_GRP1_PERIPH_TIM9);
} else if (TIMx == TIM10) {
LL_APB2_GRP1_DisableClock(LL_APB2_GRP1_PERIPH_TIM10);
} else if (TIMx == TIM11) {
LL_APB2_GRP1_DisableClock(LL_APB2_GRP1_PERIPH_TIM11);
} else if (TIMx == TIM12) {
LL_APB1_GRP1_DisableClock(LL_APB1_GRP1_PERIPH_TIM12);
} else if (TIMx == TIM13) {
LL_APB1_GRP1_DisableClock(LL_APB1_GRP1_PERIPH_TIM13);
} else if (TIMx == TIM14) {
LL_APB1_GRP1_DisableClock(LL_APB1_GRP1_PERIPH_TIM14);
}
}
}

bool stm32_timer_is_clock_enabled(TIM_TypeDef *TIMx)
Expand All @@ -79,14 +99,24 @@ bool stm32_timer_is_clock_enabled(TIM_TypeDef *TIMx)
return LL_APB1_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM4) != 0;
} else if (TIMx == TIM5) {
return LL_APB1_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM5) != 0;
} else if (TIMx == TIM6) {
return LL_APB1_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM6) != 0;
} else if (TIMx == TIM7) {
return LL_APB1_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM7) != 0;
} else if (TIMx == TIM8) {
return LL_APB2_GRP1_IsEnabledClock(LL_APB2_GRP1_PERIPH_TIM8) != 0;
} else if (TIMx == TIM9) {
return LL_APB2_GRP1_IsEnabledClock(LL_APB2_GRP1_PERIPH_TIM9) != 0;
} else if (TIMx == TIM10) {
return LL_APB2_GRP1_IsEnabledClock(LL_APB2_GRP1_PERIPH_TIM10) != 0;
} else if (TIMx == TIM11) {
return LL_APB2_GRP1_IsEnabledClock(LL_APB2_GRP1_PERIPH_TIM11) != 0;
} else if (TIMx == TIM12) {
return LL_APB2_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM12) != 0;
return LL_APB1_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM12) != 0;
} else if (TIMx == TIM13) {
return LL_APB2_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM13) != 0;
return LL_APB1_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM13) != 0;
} else if (TIMx == TIM14) {
return LL_APB2_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM14) != 0;
return LL_APB1_GRP1_IsEnabledClock(LL_APB1_GRP1_PERIPH_TIM14) != 0;
}

// not supported
Expand Down
2 changes: 1 addition & 1 deletion radio/src/targets/horus/board.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ void boardInit()


#if defined(DEBUG)
DBGMCU_APB1PeriphConfig(DBGMCU_IWDG_STOP|DBGMCU_TIM1_STOP|DBGMCU_TIM2_STOP|DBGMCU_TIM3_STOP|DBGMCU_TIM4_STOP|DBGMCU_TIM5_STOP|DBGMCU_TIM6_STOP|DBGMCU_TIM7_STOP|DBGMCU_TIM8_STOP|DBGMCU_TIM9_STOP|DBGMCU_TIM10_STOP|DBGMCU_TIM11_STOP|DBGMCU_TIM12_STOP|DBGMCU_TIM13_STOP|DBGMCU_TIM14_STOP, ENABLE);
// DBGMCU_APB1PeriphConfig(DBGMCU_IWDG_STOP|DBGMCU_TIM1_STOP|DBGMCU_TIM2_STOP|DBGMCU_TIM3_STOP|DBGMCU_TIM4_STOP|DBGMCU_TIM5_STOP|DBGMCU_TIM6_STOP|DBGMCU_TIM7_STOP|DBGMCU_TIM8_STOP|DBGMCU_TIM9_STOP|DBGMCU_TIM10_STOP|DBGMCU_TIM11_STOP|DBGMCU_TIM12_STOP|DBGMCU_TIM13_STOP|DBGMCU_TIM14_STOP, ENABLE);
#endif

ledInit();
Expand Down
5 changes: 2 additions & 3 deletions radio/src/targets/taranis/hal.h
Original file line number Diff line number Diff line change
Expand Up @@ -2581,15 +2581,14 @@
#define HAPTIC_PWM
#define HAPTIC_GPIO GPIO_PIN(GPIOB, 3) // PB.03
#define HAPTIC_GPIO_AF GPIO_AF1
#define HAPTIC_TIMER TIM2
#define HAPTIC_TIMER TIM2 // Timer 2 Channel1
#define HAPTIC_TIMER_FREQ (PERI1_FREQUENCY * TIMER_MULT_APB1)
#define HAPTIC_COUNTER_REGISTER HAPTIC_TIMER->CCR2
#define HAPTIC_CCMR1 TIM_CCMR1_OC2M_1 | TIM_CCMR1_OC2M_2
#define HAPTIC_CCER TIM_CCER_CC2E
#define BACKLIGHT_BDTR TIM_BDTR_MOE
#elif defined(RADIO_X9DP2019) || defined(RADIO_X7ACCESS)
#define HAPTIC_PWM
#define HAPTIC_GPIO_PinSource GPIO_PinSource10
#define HAPTIC_GPIO GPIO_PIN(GPIOA, 10) // PA.10
#define HAPTIC_GPIO_AF GPIO_AF1
#define HAPTIC_TIMER TIM1 // Timer1 Channel3
Expand All @@ -2601,7 +2600,7 @@
#define HAPTIC_PWM
#define HAPTIC_GPIO GPIO_PIN(GPIOB, 8) // PB.08
#define HAPTIC_GPIO_AF GPIO_AF3
#define HAPTIC_TIMER TIM10
#define HAPTIC_TIMER TIM10 // Timer 10 Channel1
#define HAPTIC_TIMER_FREQ (PERI2_FREQUENCY * TIMER_MULT_APB2)
#define HAPTIC_COUNTER_REGISTER HAPTIC_TIMER->CCR1
#define HAPTIC_CCMR1 TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_2
Expand Down

0 comments on commit d2730b0

Please sign in to comment.