Skip to content

Commit 0afecc4

Browse files
authored
Merge pull request betaflight#1565 from kc10kevin/master_furytargetfixes
FuryF3/F4 Conform Timers
2 parents 547230b + b253b94 commit 0afecc4

File tree

3 files changed

+28
-13
lines changed

3 files changed

+28
-13
lines changed

src/main/target/FURYF3/target.c

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,11 @@
2121
#include "drivers/io.h"
2222

2323
#include "drivers/timer.h"
24+
#include "drivers/timer_def.h"
2425
#include "drivers/dma.h"
2526

2627
const timerHardware_t timerHardware[USABLE_TIMER_CHANNEL_COUNT] = {
27-
28+
/*
2829
{ TIM2, IO_TAG(PB3), TIM_Channel_2, TIM_USE_PPM, 0, GPIO_AF_1, NULL, 0 }, // PPM IN
2930
{ TIM3, IO_TAG(PB0), TIM_Channel_3, TIM_USE_PWM, 0, GPIO_AF_2, NULL, 0 }, // SS1 - PB0 - *TIM3_CH3, TIM1_CH2N, TIM8_CH2N
3031
{ TIM3, IO_TAG(PB1), TIM_Channel_4, TIM_USE_PWM, 0, GPIO_AF_2, NULL, 0 }, // SS1 - PB1 - *TIM3_CH4, TIM1_CH3N, TIM8_CH3N
@@ -35,5 +36,16 @@ const timerHardware_t timerHardware[USABLE_TIMER_CHANNEL_COUNT] = {
3536
{ TIM16, IO_TAG(PB4), TIM_Channel_1, TIM_USE_MOTOR, 1, GPIO_AF_1, DMA1_Channel3, DMA1_CH3_HANDLER }, // PWM7 - S4
3637
3738
{ TIM1, IO_TAG(PA8), TIM_Channel_1, TIM_USE_LED, 1, GPIO_AF_6, DMA1_Channel2, DMA1_CH2_HANDLER }, // GPIO TIMER - LED_STRIP
39+
*/
40+
DEF_TIM(TIM2, CH2, PB3, TIM_USE_PPM, TIMER_INPUT_ENABLED ), // PPM IN
41+
DEF_TIM(TIM3, CH3, PB0, TIM_USE_PWM, TIMER_OUTPUT_ENABLED), // SS1 - PB0 - *TIM3_CH3, TIM1_CH2N, TIM8_CH2N
42+
DEF_TIM(TIM3, CH4, PB1, TIM_USE_PWM, TIMER_OUTPUT_ENABLED), // SS1 - PB1 - *TIM3_CH4, TIM1_CH3N, TIM8_CH3N
43+
44+
DEF_TIM(TIM4, CH2, PB7, TIM_USE_MOTOR, TIMER_OUTPUT_ENABLED), // PWM4 - S1
45+
DEF_TIM(TIM8, CH1, PB6, TIM_USE_MOTOR, TIMER_OUTPUT_ENABLED), // PWM5 - S2
46+
DEF_TIM(TIM17, CH1, PB5, TIM_USE_MOTOR, TIMER_OUTPUT_ENABLED), // PWM6 - S3
47+
DEF_TIM(TIM16, CH1, PB4, TIM_USE_MOTOR, TIMER_OUTPUT_ENABLED), // PWM7 - S4
48+
49+
DEF_TIM(TIM1, CH1, PA8, TIM_USE_LED, TIMER_OUTPUT_ENABLED), // GPIO TIMER - LED_STRIP
3850

3951
};

src/main/target/FURYF4/target.c

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,17 +19,28 @@
1919

2020
#include <platform.h>
2121
#include "drivers/io.h"
22+
2223
#include "drivers/dma.h"
2324
#include "drivers/timer.h"
25+
#include "drivers/timer_def.h"
2426

2527
const timerHardware_t timerHardware[USABLE_TIMER_CHANNEL_COUNT] = {
26-
28+
/*
2729
{ TIM8, IO_TAG(PC9), TIM_Channel_4, TIM_USE_PPM, 0, GPIO_AF_TIM8, NULL, 0, 0 }, // PPM_IN
2830
{ TIM2, IO_TAG(PA3), TIM_Channel_4, TIM_USE_MOTOR, 1, GPIO_AF_TIM2, DMA1_Stream6, DMA_Channel_3, DMA1_ST6_HANDLER }, // S1_OUT
2931
{ TIM3, IO_TAG(PB0), TIM_Channel_3, TIM_USE_MOTOR, 1, GPIO_AF_TIM3, DMA1_Stream7, DMA_Channel_5, DMA1_ST7_HANDLER }, // S2_OUT
3032
{ TIM3, IO_TAG(PB1), TIM_Channel_4, TIM_USE_MOTOR, 1, GPIO_AF_TIM3, DMA1_Stream2, DMA_Channel_5, DMA1_ST2_HANDLER }, // S3_OUT
3133
{ TIM2, IO_TAG(PA2), TIM_Channel_3, TIM_USE_MOTOR, 1, GPIO_AF_TIM2, DMA1_Stream1, DMA_Channel_3, DMA1_ST1_HANDLER }, // S4_OUT
34+
*/
35+
// { TIM5, GPIOA, Pin_0, TIM_Channel_1, TIM5_IRQn, 1, GPIO_Mode_AF, GPIO_PinSource0, GPIO_AF_TIM5 }, // LED Strip
36+
37+
DEF_TIM(TIM8, CH4, PC9, TIM_USE_PPM, TIMER_INPUT_ENABLED, 0 ), // PPM IN
38+
DEF_TIM(TIM2, CH4, PA3, TIM_USE_MOTOR, TIMER_OUTPUT_ENABLED, 1 ), // S1_OUT - DMA1_ST6_CH3
39+
DEF_TIM(TIM3, CH3, PB0, TIM_USE_MOTOR, TIMER_OUTPUT_ENABLED, 0 ), // S2_OUT - DMA1_ST7_CH5
40+
DEF_TIM(TIM3, CH4, PB1, TIM_USE_MOTOR, TIMER_OUTPUT_ENABLED, 0 ), // S3_OUT - DMA1_ST2_CH5
41+
DEF_TIM(TIM2, CH3, PA2, TIM_USE_MOTOR, TIMER_OUTPUT_ENABLED, 0 ), // S4_OUT - DMA1_ST1_CH3
42+
43+
DEF_TIM(TIM5, CH1, PA0, TIM_USE_LED, TIMER_OUTPUT_ENABLED, 0 ), // LED_STRIP - DMA1_ST2_CH6
3244

33-
// { TIM5, GPIOA, Pin_0, TIM_Channel_1, TIM5_IRQn, 1, GPIO_Mode_AF, GPIO_PinSource0, GPIO_AF_TIM5 }, // LED Strip
3445
};
3546

src/main/target/FURYF4/target.h

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -166,14 +166,6 @@
166166
#define SERIALRX_PROVIDER SERIALRX_SBUS
167167

168168
#define LED_STRIP
169-
#define WS2811_PIN PA0
170-
#define WS2811_TIMER TIM5
171-
#define WS2811_DMA_HANDLER_IDENTIFER DMA1_ST2_HANDLER
172-
#define WS2811_DMA_STREAM DMA1_Stream2
173-
#define WS2811_DMA_IT DMA_IT_TCIF2
174-
#define WS2811_DMA_CHANNEL DMA_Channel_6
175-
#define WS2811_TIMER_CHANNEL TIM_Channel_1
176-
#define WS2811_TIMER_GPIO_AF GPIO_AF_TIM5
177169

178170
#define ENABLE_BLACKBOX_LOGGING_ON_SDCARD_BY_DEFAULT
179171

@@ -190,6 +182,6 @@
190182
#define TARGET_IO_PORTC 0xffff
191183
#define TARGET_IO_PORTD (BIT(2))
192184

193-
#define USABLE_TIMER_CHANNEL_COUNT 5
194-
#define USED_TIMERS ( TIM_N(2) | TIM_N(3) | TIM_N(8) )
185+
#define USABLE_TIMER_CHANNEL_COUNT 6
186+
#define USED_TIMERS ( TIM_N(2) | TIM_N(3) | TIM_N(5) | TIM_N(8) )
195187

0 commit comments

Comments
 (0)