1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-13 19:40:31 +03:00

Fixed DMA resource conflicts for target BEEROTORF4. (#8540)

Fixed DMA resource conflicts for target BEEROTORF4.
This commit is contained in:
Michael Keller 2019-07-09 07:57:39 +12:00
parent 68f0ab9caa
commit b405daa83e
3 changed files with 126 additions and 125 deletions

View file

@ -30,14 +30,14 @@
const timerHardware_t timerHardware[USABLE_TIMER_CHANNEL_COUNT] = { const timerHardware_t timerHardware[USABLE_TIMER_CHANNEL_COUNT] = {
DEF_TIM(TIM9, CH2, PA3, TIM_USE_PPM, 0, 0), // PPM IN DEF_TIM(TIM9, CH2, PA3, TIM_USE_PPM, 0, 0), // PPM IN
DEF_TIM(TIM1, CH2N, PB0, TIM_USE_MOTOR, 0, 0), // M1 - DMAR: DMA2_ST5 DEF_TIM(TIM1, CH2N, PB0, TIM_USE_MOTOR, 0, 0), // M1 - DMA2_ST6
DEF_TIM(TIM1, CH3N, PB1, TIM_USE_MOTOR, 0, 0), // M2 - DEF_TIM(TIM8, CH3N, PB1, TIM_USE_MOTOR, 0, 1), // M2 - DMA2_ST4
DEF_TIM(TIM2, CH2, PA1, TIM_USE_MOTOR, 0, 0), // M3 - DMAR: DMA1_ST7 DEF_TIM(TIM2, CH2, PA1, TIM_USE_MOTOR, 0, 0), // M3 - DMA1_ST6
DEF_TIM(TIM2, CH1, PA0, TIM_USE_MOTOR, 0, 0), // M4 - DEF_TIM(TIM5, CH1, PA0, TIM_USE_MOTOR, 0, 0), // M4 - DMA1_ST2
DEF_TIM(TIM8, CH1, PC6, TIM_USE_MOTOR, 0, 0), // M5 - DMAR: DMA2_ST1 DEF_TIM(TIM3, CH1, PC6, TIM_USE_MOTOR, 0, 0), // M5 - DMA1_ST4 (conflicts with SDCard, switch off SDCard DMA if used for DShot)
DEF_TIM(TIM8, CH2, PC7, TIM_USE_MOTOR, 0, 0), // M6 - DEF_TIM(TIM8, CH2, PC7, TIM_USE_MOTOR, 0, 0), // M6 - DMA2_ST2
DEF_TIM(TIM3, CH2, PB5, TIM_USE_MOTOR, 0, 0), // M7 - DMAR: DMA1_ST2 DEF_TIM(TIM3, CH2, PB5, TIM_USE_MOTOR, 0, 0), // M7 - DMA1_ST5 (doesn't work for DShot)
DEF_TIM(TIM4, CH4, PB9, TIM_USE_MOTOR, 0, 0), // M8 - DMAR: DMA1_ST6 DEF_TIM(TIM4, CH4, PB9, TIM_USE_MOTOR, 0, 0), // M8 - no DMA
DEF_TIM(TIM4, CH3, PB8, TIM_USE_LED | TIM_USE_TRANSPONDER, 0, 0), // LED_STRIP / TRANSPONDER - DMA1_ST7 (can be used for DShot, conflicts with OSD TX) DEF_TIM(TIM4, CH3, PB8, TIM_USE_LED | TIM_USE_TRANSPONDER, 0, 0), // LED_STRIP / TRANSPONDER - DMA1_ST7 (can be used for DShot, conflicts with OSD TX)
}; };

View file

@ -29,7 +29,8 @@
#define BEEPER_PIN PB3 #define BEEPER_PIN PB3
#define BEEPER_INVERTED #define BEEPER_INVERTED
#define ENABLE_DSHOT_DMAR true // Tim_UP 1 (motors 1 & 2) conflicts with Tim 4 Ch 3 (LED_STRIP)
#define ENABLE_DSHOT_DMAR false
// ICM20689 interrupt // ICM20689 interrupt
#define USE_EXTI #define USE_EXTI
@ -154,4 +155,4 @@
#define TARGET_IO_PORTD (BIT(2)) #define TARGET_IO_PORTD (BIT(2))
#define USABLE_TIMER_CHANNEL_COUNT 10 #define USABLE_TIMER_CHANNEL_COUNT 10
#define USED_TIMERS ( TIM_N(1) | TIM_N(2) | TIM_N(3) | TIM_N(4) | TIM_N(8) | TIM_N(9) ) #define USED_TIMERS ( TIM_N(1) | TIM_N(2) | TIM_N(3) | TIM_N(4) | TIM_N(5) | TIM_N(8) | TIM_N(9) )

View file

@ -1,115 +1,115 @@
# Betaflight / STM32F405 (S405) 4.1.0 May 26 2019 / 13:44:05 (00969f3ba) MSP API: 1.42 # Betaflight / STM32F405 (S405) 4.1.0 May 26 2019 / 13:44:05 (00969f3ba) MSP API: 1.42
board_name BEEROTORF4 board_name BEEROTORF4
manufacturer_id RCTI manufacturer_id RCTI
# resources # resources
resource BEEPER 1 B03 resource BEEPER 1 B03
resource MOTOR 1 B00 resource MOTOR 1 B00
resource MOTOR 2 B01 resource MOTOR 2 B01
resource MOTOR 3 A01 resource MOTOR 3 A01
resource MOTOR 4 A00 resource MOTOR 4 A00
resource MOTOR 5 C06 resource MOTOR 5 C06
resource MOTOR 6 C07 resource MOTOR 6 C07
resource MOTOR 7 B05 resource MOTOR 7 B05
resource MOTOR 8 B09 resource MOTOR 8 B09
resource PPM 1 A03 resource PPM 1 A03
resource LED_STRIP 1 B08 resource LED_STRIP 1 B08
resource SERIAL_TX 1 A09 resource SERIAL_TX 1 A09
resource SERIAL_TX 2 A02 resource SERIAL_TX 2 A02
resource SERIAL_TX 3 B10 resource SERIAL_TX 3 B10
resource SERIAL_RX 1 A10 resource SERIAL_RX 1 A10
resource SERIAL_RX 2 A03 resource SERIAL_RX 2 A03
resource SERIAL_RX 3 B11 resource SERIAL_RX 3 B11
resource INVERTER 2 C15 resource INVERTER 2 C15
resource INVERTER 3 C14 resource INVERTER 3 C14
resource I2C_SCL 1 B06 resource I2C_SCL 1 B06
resource I2C_SDA 1 B07 resource I2C_SDA 1 B07
resource LED 1 B04 resource LED 1 B04
resource SPI_SCK 1 A05 resource SPI_SCK 1 A05
resource SPI_SCK 2 B13 resource SPI_SCK 2 B13
resource SPI_SCK 3 C10 resource SPI_SCK 3 C10
resource SPI_MISO 1 A06 resource SPI_MISO 1 A06
resource SPI_MISO 2 B14 resource SPI_MISO 2 B14
resource SPI_MISO 3 C11 resource SPI_MISO 3 C11
resource SPI_MOSI 1 A07 resource SPI_MOSI 1 A07
resource SPI_MOSI 2 B15 resource SPI_MOSI 2 B15
resource SPI_MOSI 3 C12 resource SPI_MOSI 3 C12
resource ESCSERIAL 1 A03 resource ESCSERIAL 1 A03
resource ADC_BATT 1 C00 resource ADC_BATT 1 C00
resource ADC_RSSI 1 C02 resource ADC_RSSI 1 C02
resource ADC_CURR 1 C01 resource ADC_CURR 1 C01
resource SDCARD_CS 1 B12 resource SDCARD_CS 1 B12
resource SDCARD_DETECT 1 C03 resource SDCARD_DETECT 1 C03
resource OSD_CS 1 A15 resource OSD_CS 1 A15
resource GYRO_EXTI 1 A08 resource GYRO_EXTI 1 A08
resource GYRO_CS 1 A04 resource GYRO_CS 1 A04
resource USB_DETECT 1 C05 resource USB_DETECT 1 C05
# timer # timer
timer A03 AF3 timer A03 AF3
# pin A03: TIM9 CH2 (AF3) # pin A03: TIM9 CH2 (AF3)
timer B00 AF1 timer B00 AF1
# pin B00: TIM1 CH2N (AF1) # pin B00: TIM1 CH2N (AF1)
timer B01 AF1 timer B01 AF3
# pin B01: TIM1 CH3N (AF1) # pin B01: TIM8 CH3N (AF3)
timer A01 AF1 timer A01 AF1
# pin A01: TIM2 CH2 (AF1) # pin A01: TIM2 CH2 (AF1)
timer A00 AF1 timer A00 AF2
# pin A00: TIM2 CH1 (AF1) # pin A00: TIM5 CH1 (AF2)
timer C06 AF3 timer C06 AF2
# pin C06: TIM8 CH1 (AF3) # pin C06: TIM3 CH1 (AF2)
timer C07 AF3 timer C07 AF3
# pin C07: TIM8 CH2 (AF3) # pin C07: TIM8 CH2 (AF3)
timer B05 AF2 timer B05 AF2
# pin B05: TIM3 CH2 (AF2) # pin B05: TIM3 CH2 (AF2)
timer B09 AF2 timer B09 AF2
# pin B09: TIM4 CH4 (AF2) # pin B09: TIM4 CH4 (AF2)
timer B08 AF2 timer B08 AF2
# pin B08: TIM4 CH3 (AF2) # pin B08: TIM4 CH3 (AF2)
# dma # dma
dma SPI_TX 2 0 dma SPI_TX 2 0
# SPI_TX 2: DMA1 Stream 4 Channel 0 # SPI_TX 2: DMA1 Stream 4 Channel 0
dma SPI_TX 3 0 dma SPI_TX 3 0
# SPI_TX 3: DMA1 Stream 5 Channel 0 # SPI_TX 3: DMA1 Stream 5 Channel 0
dma SPI_RX 3 0 dma SPI_RX 3 0
# SPI_RX 3: DMA1 Stream 0 Channel 0 # SPI_RX 3: DMA1 Stream 0 Channel 0
dma ADC 1 0 dma ADC 1 0
# ADC 1: DMA2 Stream 0 Channel 0 # ADC 1: DMA2 Stream 0 Channel 0
dma pin B00 0 dma pin B00 0
# pin B00: DMA2 Stream 6 Channel 0 # pin B00: DMA2 Stream 6 Channel 0
dma pin B01 0 dma pin B01 1
# pin B01: DMA2 Stream 6 Channel 0 # pin B01: DMA2 Stream 4 Channel 7
dma pin A01 0 dma pin A01 0
# pin A01: DMA1 Stream 6 Channel 3 # pin A01: DMA1 Stream 6 Channel 3
dma pin A00 0 dma pin A00 0
# pin A00: DMA1 Stream 5 Channel 3 # pin A00: DMA1 Stream 2 Channel 6
dma pin C06 0 dma pin C06 0
# pin C06: DMA2 Stream 2 Channel 0 # pin C06: DMA1 Stream 4 Channel 5
dma pin C07 0 dma pin C07 0
# pin C07: DMA2 Stream 2 Channel 0 # pin C07: DMA2 Stream 2 Channel 0
dma pin B05 0 dma pin B05 0
# pin B05: DMA1 Stream 5 Channel 5 # pin B05: DMA1 Stream 5 Channel 5
dma pin B08 0 dma pin B08 0
# pin B08: DMA1 Stream 7 Channel 2 # pin B08: DMA1 Stream 7 Channel 2
# master # master
set baro_bustype = I2C set baro_bustype = I2C
set baro_i2c_device = 1 set baro_i2c_device = 1
set blackbox_device = SDCARD set blackbox_device = SDCARD
set dshot_burst = ON set dshot_burst = OFF
set current_meter = ADC set current_meter = ADC
set battery_meter = ADC set battery_meter = ADC
set beeper_inversion = ON set beeper_inversion = ON
set beeper_od = OFF set beeper_od = OFF
set sdcard_detect_inverted = ON set sdcard_detect_inverted = ON
set sdcard_mode = SPI set sdcard_mode = SPI
set sdcard_spi_bus = 2 set sdcard_spi_bus = 2
set system_hse_mhz = 8 set system_hse_mhz = 8
set max7456_spi_bus = 3 set max7456_spi_bus = 3
set dashboard_i2c_bus = 1 set dashboard_i2c_bus = 1
set gyro_1_bustype = SPI set gyro_1_bustype = SPI
set gyro_1_spibus = 1 set gyro_1_spibus = 1
set gyro_1_sensor_align = CW270 set gyro_1_sensor_align = CW270
set gyro_2_spibus = 1 set gyro_2_spibus = 1