summaryrefslogtreecommitdiff
path: root/ports/stm32/timer.c
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2018-02-13 15:37:35 +1100
committerDamien George <damien.p.george@gmail.com>2018-02-13 15:37:35 +1100
commit3eb0694b97c6a8f0e93b874549aac40d8b78b0e5 (patch)
treecfc6ba54808c86c54ffed0deb2b31cbb6b46ef49 /ports/stm32/timer.c
parent8e1cb58a23372594f5a2b5baba91f8e570b7da21 (diff)
stm32: Update HAL macro and constant names to use newer versions.
Newer versions of the HAL use names which are cleaner and more self-consistent amongst the HAL itself. This patch switches to use those names in most places so it is easier to update the HAL in the future.
Diffstat (limited to 'ports/stm32/timer.c')
-rw-r--r--ports/stm32/timer.c64
1 files changed, 32 insertions, 32 deletions
diff --git a/ports/stm32/timer.c b/ports/stm32/timer.c
index 96a6baa02..0744c2f59 100644
--- a/ports/stm32/timer.c
+++ b/ports/stm32/timer.c
@@ -166,7 +166,7 @@ void timer_deinit(void) {
// This function inits but does not start the timer
void timer_tim5_init(void) {
// TIM5 clock enable
- __TIM5_CLK_ENABLE();
+ __HAL_RCC_TIM5_CLK_ENABLE();
// set up and enable interrupt
HAL_NVIC_SetPriority(TIM5_IRQn, IRQ_PRI_TIM5, IRQ_SUBPRI_TIM5);
@@ -188,7 +188,7 @@ void timer_tim5_init(void) {
// This function inits but does not start the timer
TIM_HandleTypeDef *timer_tim6_init(uint freq) {
// TIM6 clock enable
- __TIM6_CLK_ENABLE();
+ __HAL_RCC_TIM6_CLK_ENABLE();
// Timer runs at SystemCoreClock / 2
// Compute the prescaler value so TIM6 triggers at freq-Hz
@@ -302,7 +302,7 @@ STATIC uint32_t compute_prescaler_period_from_freq(pyb_timer_obj_t *self, mp_obj
STATIC uint32_t compute_period(pyb_timer_obj_t *self) {
// In center mode, compare == period corresponds to 100%
// In edge mode, compare == (period + 1) corresponds to 100%
- uint32_t period = (__HAL_TIM_GetAutoreload(&self->tim) & TIMER_CNT_MASK(self));
+ uint32_t period = (__HAL_TIM_GET_AUTORELOAD(&self->tim) & TIMER_CNT_MASK(self));
if (period != 0xffffffff) {
if (self->tim.Init.CounterMode == TIM_COUNTERMODE_UP ||
self->tim.Init.CounterMode == TIM_COUNTERMODE_DOWN) {
@@ -439,7 +439,7 @@ STATIC void pyb_timer_print(const mp_print_t *print, mp_obj_t self_in, mp_print_
mp_printf(print, "Timer(%u)", self->tim_id);
} else {
uint32_t prescaler = self->tim.Instance->PSC & 0xffff;
- uint32_t period = __HAL_TIM_GetAutoreload(&self->tim) & TIMER_CNT_MASK(self);
+ uint32_t period = __HAL_TIM_GET_AUTORELOAD(&self->tim) & TIMER_CNT_MASK(self);
// for efficiency, we compute and print freq as an int (not a float)
uint32_t freq = timer_get_source_freq(self->tim_id) / ((prescaler + 1) * (period + 1));
mp_printf(print, "Timer(%u, freq=%u, prescaler=%u, period=%u, mode=%s, div=%u",
@@ -554,46 +554,46 @@ STATIC mp_obj_t pyb_timer_init_helper(pyb_timer_obj_t *self, size_t n_args, cons
// enable TIM clock
switch (self->tim_id) {
- case 1: __TIM1_CLK_ENABLE(); break;
- case 2: __TIM2_CLK_ENABLE(); break;
- case 3: __TIM3_CLK_ENABLE(); break;
- case 4: __TIM4_CLK_ENABLE(); break;
- case 5: __TIM5_CLK_ENABLE(); break;
+ case 1: __HAL_RCC_TIM1_CLK_ENABLE(); break;
+ case 2: __HAL_RCC_TIM2_CLK_ENABLE(); break;
+ case 3: __HAL_RCC_TIM3_CLK_ENABLE(); break;
+ case 4: __HAL_RCC_TIM4_CLK_ENABLE(); break;
+ case 5: __HAL_RCC_TIM5_CLK_ENABLE(); break;
#if defined(TIM6)
- case 6: __TIM6_CLK_ENABLE(); break;
+ case 6: __HAL_RCC_TIM6_CLK_ENABLE(); break;
#endif
#if defined(TIM7)
- case 7: __TIM7_CLK_ENABLE(); break;
+ case 7: __HAL_RCC_TIM7_CLK_ENABLE(); break;
#endif
#if defined(TIM8)
- case 8: __TIM8_CLK_ENABLE(); break;
+ case 8: __HAL_RCC_TIM8_CLK_ENABLE(); break;
#endif
#if defined(TIM9)
- case 9: __TIM9_CLK_ENABLE(); break;
+ case 9: __HAL_RCC_TIM9_CLK_ENABLE(); break;
#endif
#if defined(TIM10)
- case 10: __TIM10_CLK_ENABLE(); break;
+ case 10: __HAL_RCC_TIM10_CLK_ENABLE(); break;
#endif
#if defined(TIM11)
- case 11: __TIM11_CLK_ENABLE(); break;
+ case 11: __HAL_RCC_TIM11_CLK_ENABLE(); break;
#endif
#if defined(TIM12)
- case 12: __TIM12_CLK_ENABLE(); break;
+ case 12: __HAL_RCC_TIM12_CLK_ENABLE(); break;
#endif
#if defined(TIM13)
- case 13: __TIM13_CLK_ENABLE(); break;
+ case 13: __HAL_RCC_TIM13_CLK_ENABLE(); break;
#endif
#if defined(TIM14)
- case 14: __TIM14_CLK_ENABLE(); break;
+ case 14: __HAL_RCC_TIM14_CLK_ENABLE(); break;
#endif
#if defined(TIM15)
- case 15: __TIM15_CLK_ENABLE(); break;
+ case 15: __HAL_RCC_TIM15_CLK_ENABLE(); break;
#endif
#if defined(TIM16)
- case 16: __TIM16_CLK_ENABLE(); break;
+ case 16: __HAL_RCC_TIM16_CLK_ENABLE(); break;
#endif
#if defined(TIM17)
- case 17: __TIM17_CLK_ENABLE(); break;
+ case 17: __HAL_RCC_TIM17_CLK_ENABLE(); break;
#endif
}
@@ -1062,7 +1062,7 @@ STATIC mp_obj_t pyb_timer_channel(size_t n_args, const mp_obj_t *pos_args, mp_ma
// an interrupt by initializing the timer.
__HAL_TIM_DISABLE_IT(&self->tim, TIM_IT_UPDATE);
HAL_TIM_Encoder_Init(&self->tim, &enc_config);
- __HAL_TIM_SetCounter(&self->tim, 0);
+ __HAL_TIM_SET_COUNTER(&self->tim, 0);
if (self->callback != mp_const_none) {
__HAL_TIM_CLEAR_FLAG(&self->tim, TIM_IT_UPDATE);
__HAL_TIM_ENABLE_IT(&self->tim, TIM_IT_UPDATE);
@@ -1088,7 +1088,7 @@ STATIC mp_obj_t pyb_timer_counter(size_t n_args, const mp_obj_t *args) {
return mp_obj_new_int(self->tim.Instance->CNT);
} else {
// set
- __HAL_TIM_SetCounter(&self->tim, mp_obj_get_int(args[1]));
+ __HAL_TIM_SET_COUNTER(&self->tim, mp_obj_get_int(args[1]));
return mp_const_none;
}
}
@@ -1110,7 +1110,7 @@ STATIC mp_obj_t pyb_timer_freq(size_t n_args, const mp_obj_t *args) {
if (n_args == 1) {
// get
uint32_t prescaler = self->tim.Instance->PSC & 0xffff;
- uint32_t period = __HAL_TIM_GetAutoreload(&self->tim) & TIMER_CNT_MASK(self);
+ uint32_t period = __HAL_TIM_GET_AUTORELOAD(&self->tim) & TIMER_CNT_MASK(self);
uint32_t source_freq = timer_get_source_freq(self->tim_id);
uint32_t divide = ((prescaler + 1) * (period + 1));
#if MICROPY_PY_BUILTINS_FLOAT
@@ -1126,7 +1126,7 @@ STATIC mp_obj_t pyb_timer_freq(size_t n_args, const mp_obj_t *args) {
uint32_t period;
uint32_t prescaler = compute_prescaler_period_from_freq(self, args[1], &period);
self->tim.Instance->PSC = prescaler;
- __HAL_TIM_SetAutoreload(&self->tim, period);
+ __HAL_TIM_SET_AUTORELOAD(&self->tim, period);
return mp_const_none;
}
}
@@ -1153,10 +1153,10 @@ STATIC mp_obj_t pyb_timer_period(size_t n_args, const mp_obj_t *args) {
pyb_timer_obj_t *self = args[0];
if (n_args == 1) {
// get
- return mp_obj_new_int(__HAL_TIM_GetAutoreload(&self->tim) & TIMER_CNT_MASK(self));
+ return mp_obj_new_int(__HAL_TIM_GET_AUTORELOAD(&self->tim) & TIMER_CNT_MASK(self));
} else {
// set
- __HAL_TIM_SetAutoreload(&self->tim, mp_obj_get_int(args[1]) & TIMER_CNT_MASK(self));
+ __HAL_TIM_SET_AUTORELOAD(&self->tim, mp_obj_get_int(args[1]) & TIMER_CNT_MASK(self));
return mp_const_none;
}
}
@@ -1265,10 +1265,10 @@ STATIC mp_obj_t pyb_timer_channel_capture_compare(size_t n_args, const mp_obj_t
pyb_timer_channel_obj_t *self = args[0];
if (n_args == 1) {
// get
- return mp_obj_new_int(__HAL_TIM_GetCompare(&self->timer->tim, TIMER_CHANNEL(self)) & TIMER_CNT_MASK(self->timer));
+ return mp_obj_new_int(__HAL_TIM_GET_COMPARE(&self->timer->tim, TIMER_CHANNEL(self)) & TIMER_CNT_MASK(self->timer));
} else {
// set
- __HAL_TIM_SetCompare(&self->timer->tim, TIMER_CHANNEL(self), mp_obj_get_int(args[1]) & TIMER_CNT_MASK(self->timer));
+ __HAL_TIM_SET_COMPARE(&self->timer->tim, TIMER_CHANNEL(self), mp_obj_get_int(args[1]) & TIMER_CNT_MASK(self->timer));
return mp_const_none;
}
}
@@ -1285,12 +1285,12 @@ STATIC mp_obj_t pyb_timer_channel_pulse_width_percent(size_t n_args, const mp_ob
uint32_t period = compute_period(self->timer);
if (n_args == 1) {
// get
- uint32_t cmp = __HAL_TIM_GetCompare(&self->timer->tim, TIMER_CHANNEL(self)) & TIMER_CNT_MASK(self->timer);
+ uint32_t cmp = __HAL_TIM_GET_COMPARE(&self->timer->tim, TIMER_CHANNEL(self)) & TIMER_CNT_MASK(self->timer);
return compute_percent_from_pwm_value(period, cmp);
} else {
// set
uint32_t cmp = compute_pwm_value_from_percent(period, args[1]);
- __HAL_TIM_SetCompare(&self->timer->tim, TIMER_CHANNEL(self), cmp & TIMER_CNT_MASK(self->timer));
+ __HAL_TIM_SET_COMPARE(&self->timer->tim, TIMER_CHANNEL(self), cmp & TIMER_CNT_MASK(self->timer));
return mp_const_none;
}
}
@@ -1365,7 +1365,7 @@ STATIC void timer_handle_irq_channel(pyb_timer_obj_t *tim, uint8_t channel, mp_o
uint32_t irq_mask = TIMER_IRQ_MASK(channel);
if (__HAL_TIM_GET_FLAG(&tim->tim, irq_mask) != RESET) {
- if (__HAL_TIM_GET_ITSTATUS(&tim->tim, irq_mask) != RESET) {
+ if (__HAL_TIM_GET_IT_SOURCE(&tim->tim, irq_mask) != RESET) {
// clear the interrupt
__HAL_TIM_CLEAR_IT(&tim->tim, irq_mask);