Если под отладкой останавливаю программу так что при этом часть получаемых моим UART данных оказывается пропущена(видимо прерывания не обработаны)
то после этого программа всё время заходит в это прерывание, будто бы остался не сброшен его флаг, и больше ничего не делает. Очень мешает при отладке.
Вопрос: почему так происходит ? С другими прерываниями такого никогда не наблюдал.
Код
void USART3_IRQHandler(void)
{
USART3->SR=0; // сбросили все флаги прерываний
BLUETOOTH_RECEIVE_BYTE((char*)&(USART3->DR));
return;
}
{
USART3->SR=0; // сбросили все флаги прерываний
BLUETOOTH_RECEIVE_BYTE((char*)&(USART3->DR));
return;
}