Экспериментатор (29.01.2018 11:15, просмотров: 1) ответил Nikolay_Po на Тема проверки ошибок UART так и не раскрыта. Не знаю, как у STM32, но у Microchip и Atmel UARTы виснут при ошибке стопового бита (framing error) до сброса ошибки
За всех не скажу, но PIC24 ведет себя согласно документации. При ошибке переполнения буфера, прекращается прием новых данных. Данные в буфере должны быть прочитаны прежде, чем будет стерта эта ошибка, иначе они пропадут. Я там другой интересный баг видел - при работе с аппаратным CTS, RTS в паре с FTDI иногда в потоке пропадает по одному байту. Либо передатчик не сразу останавливается, либо вывод микроконтроллера с запозданием переводится. Глубоко копать времени не было, пришлось плюнуть на аппаратную реализацию, оснанавливаю прием заранее, пока в кольцевом буфере еще несколько свободных байт есть. Так работает четко, проверял на передаче файлов по 100kByte.