HAL STM32 Прерывание приема Uart: сброс проблемы с буфером приема - PullRequest
0 голосов
/ 22 января 2020

Я работаю с mcu STM32F407VGT6, ide STM32CubeIDE. Сейчас я изучаю некоторые основные операции c и меня немного смущает, как работает UART в режиме прерывания при получении данных. Я объясню, что я не понимаю: mcu получает некоторые данные из терминала, после этого mcu что-то делает с этими данными, и, наконец, я хочу «сбросить» приемный буфер. Буфер не заполнен наполовину или полностью заполнен, это нормально для моего puropse. Итак, представьте, что буфер заполнен менее чем на 1/5.

`

while(1){
     if(HAL_UART_Receive_IT(&huart3, rxBuff, strlen(rxBuff)) != HAL_OK)
     {
            Error_Handler();
     }
     HAL_Delay(3000);
     temp = rxBuff[0];    
     if(HAL_UART_Receive_IT(&huart3, rxBuff, strlen(rxBuff)) != HAL_OK)
     {
            Error_Handler();
     }
}

`

...