2 * This file is part of Cleanflight.
4 * Cleanflight is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * Cleanflight is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with Cleanflight. If not, see <http://www.gnu.org/licenses/>.
21 #include "drivers/io.h"
23 #include "drivers/timer.h"
24 #include "drivers/timer_def.h"
25 #include "drivers/dma.h"
27 const timerHardware_t timerHardware
[USABLE_TIMER_CHANNEL_COUNT
] = {
29 DEF_TIM(TIM1
, CH2N
,PB14
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
| TIMER_OUTPUT_INVERTED
),
30 DEF_TIM(TIM8
, CH2N
,PB0
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
| TIMER_OUTPUT_INVERTED
),
31 DEF_TIM(TIM15
,CH1N
,PB15
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
| TIMER_OUTPUT_INVERTED
),
32 DEF_TIM(TIM1
, CH1
, PA8
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
),
33 DEF_TIM(TIM3
, CH1
, PA6
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
),
34 DEF_TIM(TIM17
,CH1
, PA7
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
),
35 DEF_TIM(TIM2
, CH2
, PB3
, TIM_USE_PWM
| TIM_USE_PPM
, TIMER_INPUT_ENABLED
),
36 DEF_TIM(TIM2
, CH1
, PA15
, TIM_USE_PWM
, TIMER_INPUT_ENABLED
),
37 DEF_TIM(TIM2
, CH3
, PA2
, TIM_USE_PWM
, TIMER_INPUT_ENABLED
),
38 DEF_TIM(TIM2
, CH4
, PB11
, TIM_USE_PWM
, TIMER_INPUT_ENABLED
),
39 //DEF_TIM(TIM16,CH1N,PA13, TIM_USE_PWM, TIMER_INPUT_ENABLED), // KISSCC bidirectional softserial needs to be added
41 DEF_TIM(TIM1
, CH2N
,PB14
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
),
42 DEF_TIM(TIM8
, CH2N
,PB0
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
),
43 DEF_TIM(TIM15
,CH1N
,PB15
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
),
44 DEF_TIM(TIM1
, CH1
, PA8
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
| TIMER_OUTPUT_INVERTED
),
45 DEF_TIM(TIM3
, CH1
, PA6
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
| TIMER_OUTPUT_INVERTED
),
46 DEF_TIM(TIM17
,CH1
, PA7
, TIM_USE_MOTOR
, TIMER_OUTPUT_ENABLED
| TIMER_OUTPUT_INVERTED
),
47 DEF_TIM(TIM2
, CH2
, PB3
, TIM_USE_PWM
| TIM_USE_PPM
, TIMER_INPUT_ENABLED
),
48 DEF_TIM(TIM2
, CH1
, PA15
, TIM_USE_PWM
, TIMER_INPUT_ENABLED
),
49 DEF_TIM(TIM2
, CH3
, PA2
, TIM_USE_PWM
, TIMER_INPUT_ENABLED
),
50 DEF_TIM(TIM2
, CH4
, PB11
, TIM_USE_PWM
, TIMER_INPUT_ENABLED
),