diff --git a/radio/src/targets/taranis/extmodule_driver.cpp b/radio/src/targets/taranis/extmodule_driver.cpp index bed9f156a..4497358df 100644 --- a/radio/src/targets/taranis/extmodule_driver.cpp +++ b/radio/src/targets/taranis/extmodule_driver.cpp @@ -121,23 +121,17 @@ void extmoduleInvertedSerialStart(uint32_t baudrate, uint32_t period_half_us) NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); - // TX Pin - GPIO_PinAFConfig(EXTMODULE_TX_GPIO, EXTMODULE_TX_GPIO_PinSource, EXTMODULE_USART_TX_GPIO_AF); + // TX + RX Pins + GPIO_PinAFConfig(EXTMODULE_USART_GPIO, EXTMODULE_TX_GPIO_PinSource, EXTMODULE_USART_GPIO_AF); + GPIO_PinAFConfig(EXTMODULE_USART_GPIO, EXTMODULE_RX_GPIO_PinSource, EXTMODULE_USART_GPIO_AF); GPIO_InitTypeDef GPIO_InitStructure; - GPIO_InitStructure.GPIO_Pin = EXTMODULE_TX_GPIO_PIN; + GPIO_InitStructure.GPIO_Pin = EXTMODULE_TX_GPIO_PIN | EXTMODULE_RX_GPIO_PIN; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; - GPIO_Init(EXTMODULE_TX_GPIO, &GPIO_InitStructure); - -#if 0 - // RX Pin - GPIO_PinAFConfig(EXTMODULE_RX_GPIO, EXTMODULE_RX_GPIO_PinSource, EXTMODULE_TX_GPIO_USART_AF); - GPIO_InitStructure.GPIO_Pin = EXTMODULE_RX_GPIO_PIN; - GPIO_Init(EXTMODULE_RX_GPIO, &GPIO_InitStructure); -#endif + GPIO_Init(EXTMODULE_USART_GPIO, &GPIO_InitStructure); // UART config USART_DeInit(EXTMODULE_USART); diff --git a/radio/src/targets/taranis/hal.h b/radio/src/targets/taranis/hal.h index 1b4351bbe..3cede1e72 100644 --- a/radio/src/targets/taranis/hal.h +++ b/radio/src/targets/taranis/hal.h @@ -755,14 +755,18 @@ // External Module #define EXTMODULE_PULSES + #if defined(PCBXLITE) #define EXTMODULE_RCC_AHB1Periph (RCC_AHB1Periph_GPIOC | RCC_AHB1Periph_GPIOD | RCC_AHB1Periph_DMA2) #define EXTMODULE_RCC_APB2Periph (RCC_APB2Periph_TIM8 | RCC_APB2Periph_USART6) #define EXTMODULE_PWR_GPIO GPIOD #define EXTMODULE_PWR_GPIO_PIN GPIO_Pin_11 // PD.11 #define EXTMODULE_TX_GPIO GPIOC + #define EXTMODULE_USART_GPIO GPIOC #define EXTMODULE_TX_GPIO_PIN GPIO_Pin_6 // PC.06 #define EXTMODULE_TX_GPIO_PinSource GPIO_PinSource6 + #define EXTMODULE_RX_GPIO_PIN GPIO_Pin_6 // PC.07 + #define EXTMODULE_RX_GPIO_PinSource GPIO_PinSource7 #define EXTMODULE_TIMER TIM8 #define EXTMODULE_TIMER_FREQ (PERI2_FREQUENCY * TIMER_MULT_APB2) #define EXTMODULE_TIMER_CC_IRQn TIM8_CC_IRQn @@ -775,7 +779,7 @@ #define EXTMODULE_TIMER_DMA_FLAG_TC DMA_IT_TCIF1 #define EXTMODULE_TIMER_OUTPUT_ENABLE TIM_CCER_CC1E #define EXTMODULE_TIMER_OUTPUT_POLARITY TIM_CCER_CC1P - #define EXTMODULE_USART_TX_GPIO_AF GPIO_AF_USART6 + #define EXTMODULE_USART_GPIO_AF GPIO_AF_USART6 #define EXTMODULE_USART USART6 #define EXTMODULE_USART_IRQn USART6_IRQn #define EXTMODULE_USART_DMA_CHANNEL DMA_Channel_5 @@ -784,6 +788,7 @@ #define EXTMODULE_USART_DMA_STREAM_IRQHandler DMA2_Stream6_IRQHandler #define EXTMODULE_USART_DMA_FLAG_TC DMA_IT_TCIF6 #else + #define EXTMODULE_PULSES #define EXTMODULE_RCC_AHB1Periph (RCC_AHB1Periph_GPIOA | RCC_AHB1Periph_GPIOD | RCC_AHB1Periph_DMA2) #define EXTMODULE_RCC_APB2Periph RCC_APB2Periph_TIM8 #define EXTMODULE_PWR_GPIO GPIOD