4 #include "drivers/io.h"
5 #include "drivers/pwm_mapping.h"
6 #include "drivers/timer.h"
8 const timerHardware_t timerHardware
[] = {
9 DEF_TIM(TIM3
, CH4
, PC9
, TIM_USE_PPM
| TIM_USE_PWM
, 0, 0), // S1_IN
10 DEF_TIM(TIM3
, CH3
, PC8
, TIM_USE_PWM
, 0, 0), // S2_IN
11 DEF_TIM(TIM3
, CH1
, PC6
, TIM_USE_PWM
, 0, 0), // S3_IN
12 DEF_TIM(TIM3
, CH2
, PC7
, TIM_USE_PWM
, 0, 0), // S4_IN
13 DEF_TIM(TIM4
, CH4
, PD15
, TIM_USE_PWM
, 0, 0), // S5_IN
14 DEF_TIM(TIM4
, CH3
, PD14
, TIM_USE_PWM
, 0, 0), // S6_IN
15 DEF_TIM(TIM4
, CH2
, PD13
, TIM_USE_PWM
, 0, 0), // S7_IN
16 DEF_TIM(TIM4
, CH1
, PD12
, TIM_USE_PWM
, 0, 0), // S8_IN
18 DEF_TIM(TIM2
, CH1
, PA0
, TIM_USE_MC_MOTOR
| TIM_USE_FW_MOTOR
, 0, 0), // S1_OUT
19 DEF_TIM(TIM2
, CH2
, PA1
, TIM_USE_MC_MOTOR
| TIM_USE_FW_MOTOR
, 0, 0), // S2_OUT
20 DEF_TIM(TIM5
, CH3
, PA2
, TIM_USE_MC_MOTOR
| TIM_USE_FW_SERVO
, 0, 0), // S3_OUT
21 DEF_TIM(TIM5
, CH4
, PA3
, TIM_USE_MC_MOTOR
| TIM_USE_FW_SERVO
, 0, 0), // S4_OUT
22 DEF_TIM(TIM1
, CH1
, PE9
, TIM_USE_MC_MOTOR
| TIM_USE_FW_SERVO
, 0, 0), // S5_OUT
23 DEF_TIM(TIM1
, CH2
, PE11
, TIM_USE_MC_MOTOR
| TIM_USE_FW_SERVO
, 0, 0), // S6_OUT
24 DEF_TIM(TIM1
, CH3
, PE13
, TIM_USE_MC_MOTOR
| TIM_USE_FW_SERVO
, 0, 0), // S7_OUT
25 DEF_TIM(TIM1
, CH4
, PE14
, TIM_USE_MC_MOTOR
| TIM_USE_FW_SERVO
, 0, 0), // S8_OUT
27 DEF_TIM(TIM9
, CH2
, PE6
, TIM_USE_ANY
, 0, 0), // sonar echo if needed
30 const int timerHardwareCount
= sizeof(timerHardware
) / sizeof(timerHardware
[0]);