diff --git a/radio/src/targets/common/arm/stm32/extmodule_serial_driver.cpp b/radio/src/targets/common/arm/stm32/extmodule_serial_driver.cpp index a36d47fb2..50cec65dd 100644 --- a/radio/src/targets/common/arm/stm32/extmodule_serial_driver.cpp +++ b/radio/src/targets/common/arm/stm32/extmodule_serial_driver.cpp @@ -19,7 +19,7 @@ * GNU General Public License for more details. */ -#include "hal/serial_driver.h" +#include "extmodule_serial_driver.h" #include "board.h" #if defined(EXTMODULE_USART) @@ -93,6 +93,16 @@ void extmoduleInvertedSerialStart(uint32_t baudrate) extmoduleSerialStart(¶ms); } +#if defined(PXX1) +void extmodulePxx1SerialStart() +{ + EXTERNAL_MODULE_ON(); + etx_serial_init params(extmoduleSerialParams); + params.baudrate = EXTMODULE_PXX1_SERIAL_BAUDRATE; + ExtmoduleSerialDriver.init(¶ms); +} +#endif + void extmoduleSerialStop() { DMA_DeInit(EXTMODULE_USART_TX_DMA_STREAM); diff --git a/radio/src/targets/common/arm/stm32/extmodule_serial_driver.h b/radio/src/targets/common/arm/stm32/extmodule_serial_driver.h index 48a887216..b0e6a0492 100644 --- a/radio/src/targets/common/arm/stm32/extmodule_serial_driver.h +++ b/radio/src/targets/common/arm/stm32/extmodule_serial_driver.h @@ -33,4 +33,8 @@ void extmoduleFifoError(); // void extmoduleSendBuffer(const uint8_t * data, uint8_t size); // void extmoduleSendNextFrame(); +#if defined(PXX1) +void extmodulePxx1SerialStart(); +#endif + extern etx_serial_driver_t ExtmoduleSerialDriver; diff --git a/radio/src/targets/taranis/extmodule_driver.cpp b/radio/src/targets/taranis/extmodule_driver.cpp index de4acc273..5500ec125 100644 --- a/radio/src/targets/taranis/extmodule_driver.cpp +++ b/radio/src/targets/taranis/extmodule_driver.cpp @@ -154,14 +154,6 @@ void extmoduleSerialStart() NVIC_SetPriority(EXTMODULE_TIMER_CC_IRQn, 7); } - -#if defined(PXX1) && defined(EXTMODULE_USART) -void extmodulePxx1SerialStart() -{ - extmoduleInvertedSerialStart(EXTMODULE_PXX1_SERIAL_BAUDRATE); -} -#endif - static void extmoduleSendNextFramePpm(const void* pulses, uint16_t length, uint16_t trailing_pulse) { diff --git a/radio/src/targets/taranis/hal.h b/radio/src/targets/taranis/hal.h index 6549c2d4a..66eda1555 100644 --- a/radio/src/targets/taranis/hal.h +++ b/radio/src/targets/taranis/hal.h @@ -1544,6 +1544,7 @@ #define EXTMODULE_USART_IRQHandler USART6_IRQHandler #define EXTMODULE_USART_TX_DMA_CHANNEL DMA_Channel_5 #define EXTMODULE_USART_TX_DMA_STREAM DMA2_Stream6 + #define EXTMODULE_USART_TX_DMA_FLAG_TC DMA_FLAG_TCIF6 #define EXTMODULE_USART_RX_DMA_CHANNEL DMA_Channel_5 #define EXTMODULE_USART_RX_DMA_STREAM DMA2_Stream1 #else