Try to fix internal module.

This commit is contained in:
Richard Li
2021-07-22 12:43:57 +08:00
parent 078f9d1338
commit 383985f73c
2 changed files with 51 additions and 26 deletions
+12 -6
View File
@@ -4,6 +4,8 @@ option(FLYSKY_HALL_STICKS "sticks for FlySky hall sticks" ON)
option(FLYSKY_HALL_STICKS_REVERSE "Reverse sticks for FlySky hall sticks" OFF)
option(MULTIMODULE "DIY Multiprotocol TX Module (https://github.com/pascallanger/DIY-Multiprotocol-TX-Module)" ON)
option(AFHDS2 "Support for AFHDS2" ON)
option(PXX1 "PXX1 protocol support" ON)
option(PXX2 "PXX2 protocol support" OFF)
set(PWR_BUTTON "PRESS" CACHE STRING "Pwr button type (PRESS/SWITCH)")
set(CPU_TYPE STM32F4)
@@ -14,8 +16,8 @@ set(STORAGE_FORMAT BIN)
set(HAPTIC YES)
set(GUI_DIR colorlcd)
set(BITMAPS_DIR 480x272)
set(HARDWARE_EXTERNAL_MODULE YES)
set(AUX_SERIAL ON)
#set(HARDWARE_EXTERNAL_MODULE YES)
#set(AUX_SERIAL ON)
# set(NAVIGATION_TYPE touch)
set(TARGET_DIR nv14)
add_definitions(-DHARDWARE_TRAINER_JACK)
@@ -38,7 +40,8 @@ set(PCB_RF_BAUD 921600 CACHE STRING "INTERNAL_MODULE_BAUDRATE: ${RF_BAUD_RATE}")
set_property(CACHE PCB_RF_BAUD PROPERTY STRINGS ${RF_BAUD_RATE})
set(FLAVOUR nv14)
add_definitions(-DPCBNV14 -DPCBFLYSKY -DINTERNAL_MODULE_BAUDRATE=${PCB_RF_BAUD})
#add_definitions(-DPCBNV14 -DPCBFLYSKY -DINTERNAL_MODULE_BAUDRATE=${PCB_RF_BAUD})
add_definitions(-DPCBNV14 -DPCBFLYSKY -DINTERNAL_MODULE_SERIAL -DAFHDS2_BAUDRATE=${PCB_RF_BAUD})
add_definitions(-DBATTERY_CHARGE) # -DSOFTWARE_VOLUME
set(TARGET_SRC
@@ -79,8 +82,9 @@ add_definitions(-DPWR_BUTTON_${PWR_BUTTON})
add_definitions(-DCROSSFIRE_NATIVE)
add_definitions(-DFLYSKY_HALL_STICKS_REVERSE)
add_definitions(-DFLYSKY_HALL_STICKS)
add_definitions(-DAFHDS2)
add_definitions(-DHARDWARE_EXTERNAL_MODULE)
add_definitions(-DAUX_SERIAL)
#add_definitions(-DAUX_SERIAL)
#add_definitions(-DFLYSKY_AUTO_POWER_DOWN)
if(STICKS_DEAD_ZONE)
@@ -105,7 +109,7 @@ if(DISK_CACHE)
add_definitions(-DDISK_CACHE)
endif()
set(AUX_SERIAL_DRIVER ../common/arm/stm32/aux_serial_driver.cpp)
#set(AUX_SERIAL_DRIVER ../common/arm/stm32/aux_serial_driver.cpp)
set(SRC
${SRC}
@@ -116,7 +120,9 @@ set(GVAR_SCREEN model_gvars.cpp)
set(TARGET_SRC
${TARGET_SRC}
extmodule_driver.cpp
# extmodule_driver.cpp
extmodule_helper.cpp
../horus/extmodule_driver.cpp
trainer_driver.cpp
../common/arm/stm32/intmodule_serial_driver.cpp
)
+39 -20
View File
@@ -394,9 +394,10 @@
#define INTMODULE_RCC_AHB1Periph (RCC_AHB1Periph_GPIOF | RCC_AHB1Periph_GPIOH | RCC_AHB1Periph_DMA1)
#define INTMODULE_PWR_GPIO GPIOH
#define INTMODULE_PWR_GPIO_PIN GPIO_Pin_9 // PH.09
#define INTMODULE_TX_GPIO GPIOF
#define INTMODULE_GPIO GPIOF
//#define INTMODULE_TX_GPIO GPIOF
#define INTMODULE_TX_GPIO_PIN GPIO_Pin_7 // PF.07
#define INTMODULE_RX_GPIO GPIOF
//#define INTMODULE_RX_GPIO GPIOF
#define INTMODULE_RX_GPIO_PIN GPIO_Pin_6 // PF.06
#define INTMODULE_GPIO_PinSource_TX GPIO_PinSource7
#define INTMODULE_GPIO_PinSource_RX GPIO_PinSource6
@@ -404,28 +405,28 @@
#define INTMODULE_GPIO_AF GPIO_AF_UART7
#define INTMODULE_USART_IRQn UART7_IRQn
#define INTMODULE_USART_IRQHandler UART7_IRQHandler
#define INTMODULE_RX_DMA_STREAM DMA1_Stream3
#define INTMODULE_DMA_STREAM DMA1_Stream1
#define INTMODULE_DMA_STREAM_IRQ DMA1_Stream1_IRQn
#define INTMODULE_DMA_STREAM_IRQHandler DMA2_Stream7_IRQHandler
#define INTMODULE_DMA_FLAG_TC DMA_IT_TCIF1
#define INTMODULE_DMA_CHANNEL DMA_Channel_5
/*#define INTMODULE_RX_DMA_STREAM DMA1_Stream3
#define INTMODULE_RX_DMA_Stream_IRQn DMA1_Stream3_IRQn
#define INTMODULE_RX_DMA_Stream_IRQHandler DMA1_Stream3_IRQHandler
#define INTMODULE_TX_DMA_STREAM DMA1_Stream1
#define INTMODULE_TX_DMA_Stream_IRQn DMA1_Stream1_IRQn
#define INTMODULE_TX_DMA_Stream_IRQHandler DMA1_Stream1_IRQHandler
#define INTMODULE_TX_DMA_FLAG_TC DMA_IT_TCIF1
//TX new implementation
#define INTMODULE_DMA_STREAM DMA1_Stream1
#define INTMODULE_DMA_CHANNEL DMA_Channel_5
#define INTMODULE_GPIO INTMODULE_TX_GPIO
//#define INTMODULE_DMA_STREAM_IRQ INTMODULE_RX_DMA_Stream_IRQHandler
#define INTMODULE_DMA_STREAM_IRQ INTMODULE_TX_DMA_Stream_IRQn
#define INTMODULE_RCC_APB1Periph (RCC_APB1Periph_UART7 | RCC_APB1Periph_TIM3)
#define INTMODULE_TX_DMA_FLAG_TC DMA_IT_TCIF1*/
#define INTMODULE_RCC_APB1Periph (RCC_APB1Periph_UART7 | RCC_APB1Periph_TIM3)
#define INTMODULE_RCC_APB2Periph 0
#define INTMODULE_TIMER TIM3
#define INTMODULE_TIMER_IRQn TIM3_IRQn
#define INTMODULE_TIMER_IRQHandler TIM3_IRQHandler
#define INTMODULE_TIMER_FREQ (PERI1_FREQUENCY * TIMER_MULT_APB1)
// External Module
#define EXTMODULE
#define EXTMODULE_PULSES
@@ -449,9 +450,14 @@
#define EXTMODULE_RX_GPIO_AF_USART GPIO_AF_USART6
#define EXTMODULE_TIMER TIM8
#define EXTMODULE_TIMER_IRQn TIM8_CC_IRQn
#define EXTMODULE_TIMER_CC_IRQn TIM8_CC_IRQn
#define EXTMODULE_TIMER_IRQHandler TIM8_CC_IRQHandler
#define EXTMODULE_TIMER_FREQ (PERI2_FREQUENCY * TIMER_MULT_APB2)
#define EXTMODULE_TIMER_TX_GPIO_AF GPIO_AF_TIM8
//USART
#define EXTMODULE_USART_GPIO GPIOC
#define EXTMODULE_USART_GPIO_AF GPIO_AF_USART6
#define EXTMODULE_USART_TX_DMA_CHANNEL DMA_Channel_5
#define EXTMODULE_USART_TX_DMA_STREAM DMA2_Stream7
#define EXTMODULE_USART_TX_DMA_IRQn DMA2_Stream7_IRQn
@@ -460,26 +466,39 @@
#define EXTMODULE_USART_RX_DMA_CHANNEL DMA_Channel_5
#define EXTMODULE_USART_RX_DMA_STREAM DMA2_Stream2
#define EXTMODULE_USART_RX_DMA_IRQn DMA2_Stream5_IRQn
#define EXTMODULE_USART_RX_DMA_IRQHandler DMA2_Stream5_IRQHandler
#define EXTMODULE_USART_RX_DMA_FLAG_TC DMA_IT_TCIF5
#define EXTMODULE_USART_RX_DMA_IRQn DMA2_Stream2_IRQn
#define EXTMODULE_USART_RX_DMA_IRQHandler DMA2_Stream2_IRQHandler
#define EXTMODULE_USART_RX_DMA_FLAG_TC DMA_IT_TCIF2
#define EXTMODULE_USART_IRQHandler USART6_IRQHandler
#define EXTMODULE_USART_IRQn USART6_IRQn
#define EXTMODULE_TIMER_DMA_SIZE (DMA_SxCR_PSIZE_0 | DMA_SxCR_MSIZE_0)
//TIMER
#define EXTMODULE_DMA_CHANNEL DMA_Channel_7
#define EXTMODULE_DMA_STREAM DMA2_Stream1
#define EXTMODULE_DMA_IRQn DMA2_Stream1_IRQn
#define EXTMODULE_DMA_IRQHandler DMA2_Stream1_IRQHandler
#define EXTMODULE_DMA_FLAG_TC DMA_IT_TCIF1
#define EXTMODULE_USART USART6
#define EXTMODULE_TX_INVERT_GPIO GPIOE
#define EXTMODULE_TX_INVERT_GPIO_PIN GPIO_Pin_3 // PE.03
#define EXTMODULE_RX_INVERT_GPIO GPIOI
#define EXTMODULE_RX_INVERT_GPIO_PIN GPIO_Pin_15 // PI.15
#define EXTMODULE_TIMER_DMA_CHANNEL DMA_Channel_7
#define EXTMODULE_TIMER_DMA_STREAM DMA2_Stream1
#define EXTMODULE_TIMER_DMA_STREAM_IRQn DMA2_Stream1_IRQn
#define EXTMODULE_TIMER_DMA_IRQHandler DMA2_Stream1_IRQHandler
#define EXTMODULE_TIMER_DMA_FLAG_TC DMA_IT_TCIF1
//#define EXTMODULE_USART USART6
#define EXTMODULE_TX_INVERT_GPIO GPIOE
#define EXTMODULE_TX_INVERT_GPIO_PIN GPIO_Pin_3 // PE.03
#define EXTMODULE_RX_INVERT_GPIO GPIOI
#define EXTMODULE_RX_INVERT_GPIO_PIN GPIO_Pin_15 // PI.15
#define EXTMODULE_TX_NORMAL() EXTMODULE_TX_INVERT_GPIO->BSRRH = EXTMODULE_TX_INVERT_GPIO_PIN
#define EXTMODULE_TX_INVERTED() EXTMODULE_TX_INVERT_GPIO->BSRRL = EXTMODULE_TX_INVERT_GPIO_PIN
#define EXTMODULE_RX_NORMAL() EXTMODULE_TX_INVERT_GPIO->BSRRH = EXTMODULE_RX_INVERT_GPIO_PIN
#define EXTMODULE_RX_INVERTED() EXTMODULE_TX_INVERT_GPIO->BSRRL = EXTMODULE_RX_INVERT_GPIO_PIN
// Heartbeat (not used)
#define HEARTBEAT_RCC_AHB1Periph RCC_AHB1Periph_GPIOD