X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fstm32l0%2Fao_serial_stm.c;h=ac745d9709387d7aec07b45ba3cc0d5019487822;hb=3ed101d634968666cd3ee2d8c49737970caf406b;hp=a75804e9bd395209633e0aff0c9348d87131a3f0;hpb=9dea51ca2174d86d5ab4a8a27179519b34869a36;p=fw%2Faltos diff --git a/src/stm32l0/ao_serial_stm.c b/src/stm32l0/ao_serial_stm.c index a75804e9..ac745d97 100644 --- a/src/stm32l0/ao_serial_stm.c +++ b/src/stm32l0/ao_serial_stm.c @@ -158,7 +158,7 @@ ao_usart_drain(struct ao_stm_usart *usart) } #endif -static const uint32_t ao_usart_speeds[] = { +const uint32_t ao_usart_speeds[] = { [AO_SERIAL_SPEED_4800] = 4800, [AO_SERIAL_SPEED_9600] = 9600, [AO_SERIAL_SPEED_19200] = 19200, @@ -380,10 +380,24 @@ ao_serial_set_sw_rts_cts(struct ao_stm_usart *usart, void ao_serial_shutdown(void) { +# if SERIAL_2_PA2_PA3 + stm_moder_set(&stm_gpioa, 2, STM_MODER_INPUT); + stm_moder_set(&stm_gpioa, 3, STM_MODER_INPUT); +# elif SERIAL_2_PA9_PA10 + stm_moder_set(&stm_gpioa, 9, STM_MODER_INPUT); + stm_moder_set(&stm_gpioa, 10, STM_MODER_INPUT); +# elif SERIAL_2_PA14_PA15 + stm_moder_set(&stm_gpioa, 14, STM_MODER_INPUT); + stm_moder_set(&stm_gpioa, 15, STM_MODER_INPUT); +# elif SERIAL_2_PB6_PB7 + stm_moder_set(&stm_gpiob, 6, STM_MODER_INPUT); + stm_moder_set(&stm_gpiob, 7, STM_MODER_INPUT); +#endif #if HAS_SERIAL_1 stm_rcc.apb2enr &= ~(1 << STM_RCC_APB2ENR_USART1EN); #endif #if HAS_SERIAL_2 + stm_nvic_set_disable(STM_ISR_USART2_POS); stm_rcc.apb1enr &= ~(1 << STM_RCC_APB1ENR_USART2EN); #endif }