From 90abf510756c2d4a56f9fd1d799c4829e8d006dd Mon Sep 17 00:00:00 2001 From: Guriy Date: Thu, 2 Jul 2026 16:15:37 +0300 Subject: [PATCH] save --- Src/main.c | 12 +---------- Src/stm32f7xx_it.c | 54 +++------------------------------------------- 2 files changed, 4 insertions(+), 62 deletions(-) diff --git a/Src/main.c b/Src/main.c index 4814065..4bc97a2 100644 --- a/Src/main.c +++ b/Src/main.c @@ -222,7 +222,7 @@ int main(void) if ((HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin)==GPIO_PIN_SET)&&(u_rx_flg == 0)) { /* USB только что подключили: выкинуть весь мусор, накопленный в USART, - пока RX болтался без драйвера, — ДО включения прерываний */ + — ДО включения прерываний */ LL_USART_ClearFlag_ORE(USART1); LL_USART_ClearFlag_FE(USART1); LL_USART_ClearFlag_NE(USART1); @@ -240,16 +240,6 @@ int main(void) } - // if ((HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin)==GPIO_PIN_SET)&&(u_rx_flg == 0)) - // { - // //NVIC_DisableIRQ(USART1_IRQn); - // LL_USART_EnableIT_PE(USART1); - // LL_USART_EnableIT_RXNE(USART1); - // LL_USART_EnableIT_ERROR(USART1); - // NVIC_SetPriority(USART1_IRQn, 0); - // NVIC_EnableIRQ(USART1_IRQn);//In other case you have FE error flag... - // u_rx_flg = 1; - // } // else // { // //NVIC_DisableIRQ(USART1_IRQn); diff --git a/Src/stm32f7xx_it.c b/Src/stm32f7xx_it.c index 55300bc..80bacf7 100644 --- a/Src/stm32f7xx_it.c +++ b/Src/stm32f7xx_it.c @@ -277,54 +277,8 @@ void USART1_IRQHandler(void) { /* USER CODE BEGIN USART1_IRQn 0 */ - //---- - // volatile uint8_t temp; - // if(LL_USART_IsActiveFlag_RXNE(USART1) && LL_USART_IsEnabledIT_RXNE(USART1)) - // { - // UART_RxCpltCallback(); - // } - // else - // { - // if(LL_USART_IsActiveFlag_ORE(USART1)) - // { - // //temp = USART1->RDR; - // LL_USART_ClearFlag_ORE(USART1); - // temp+= LL_USART_ReceiveData8(USART1); - // } - // else if(LL_USART_IsActiveFlag_FE(USART1)) - // { - // //(void) USART1->RDR; - // //LL_USART_ClearFlag_FE(USART1); - // temp+= LL_USART_ReceiveData8(USART1); - // } - // else if(LL_USART_IsActiveFlag_NE(USART1)) - // { - // //(void) USART1->RDR; - // LL_USART_ClearFlag_NE(USART1); - // temp+= LL_USART_ReceiveData8(USART1); - // } - // else if(LL_USART_IsActiveFlag_PE(USART1)) - // { - // //(void) USART1->RDR; - // LL_USART_ClearFlag_PE(USART1); - // temp+= LL_USART_ReceiveData8(USART1); - // } - // else - // { - // if(LL_USART_IsActiveFlag_TC(USART6) && LL_USART_IsEnabledIT_TC(USART6)) - // { - // LL_USART_ClearFlag_TC(USART1); - // //test_counter += 1; - // //if(UART_transmission_busy == 1){ - // LL_USART_DisableIT_TC(USART1); - // //UART_transmission_busy = 0; - // } - // } - // } - //---- - - /* Любая ошибка приёма: снять ВСЕ флаги, выбросить битый байт, в парсер не пускать */ + /* снять ВСЕ флаги, выбросить битый байт, в парсер не пускать */ if (LL_USART_IsActiveFlag_ORE(USART1) || LL_USART_IsActiveFlag_FE(USART1) || LL_USART_IsActiveFlag_NE(USART1) || @@ -334,10 +288,9 @@ void USART1_IRQHandler(void) LL_USART_ClearFlag_FE(USART1); LL_USART_ClearFlag_NE(USART1); LL_USART_ClearFlag_PE(USART1); - LL_USART_RequestRxDataFlush(USART1); // RXFRQ: сбросить RXNE, выкинуть байт из RDR + LL_USART_RequestRxDataFlush(USART1); // сбросить RXNE, выкинуть байт из RDR UART_rec_incr = 0; // сбросить недособранную команду от глитча - flg_tmt = 0; - //temp = temp; // подавить warning + flg_tmt = 0; return; } @@ -351,7 +304,6 @@ void USART1_IRQHandler(void) LL_USART_ClearFlag_TC(USART1); LL_USART_DisableIT_TC(USART1); } - //--- /* USER CODE END USART1_IRQn 0 */ /* USER CODE BEGIN USART1_IRQn 1 */