UART - старая, все более устаревшая технология 1970-х годов, поэтому обработка ошибок оставляет желать лучшего. На самом фундаментальном уровне UART будет запускать любое чтение по падающему фронту, который является стартовым битом.
Так что, если есть шум, который интерпретируется как падающий фронт стартового бита, UART будет затем пробовать 8 бит данных с временем выборки в соответствии с его предварительно сконфигурированной скоростью (обычно он составляет 16 раз быстрее, чем установленный бод). Он будет выбирать независимо от любых имеющихся краев. После этого он будет синхронизироваться в бит потенциальной четности, а затем 1 или 2 стоповых бита.
В точке, где считывается стоповый бит, UART проверяет правильность бит четности (если присутствует), если нет, вы получите ошибки четности. И затем он проверяет бит остановки, который должен быть высоким, иначе вы получите ошибку кадрирования.
Эти проверки ошибок составляют примерно пятьдесят/пятьдесят качеств. Ошибки в два бита или больше могут вызвать множество проблем. «Четность», в частности, является слабым методом обнаружения ошибок. Профессионалы прекратили использовать его около 30 лет назад. В целом, вероятность обнаружения ошибки аппаратными средствами очень плохая, по дизайну.
Вот почему все протоколы, основанные на UART, должны иметь множество контрольных сумм, байт синхронизации и другие такие накладные расходы для работы.UART очень уязвим для EMI, до такой степени, что вы не можете надежно использовать шины UART вне монтажной платы, без использования дифференциальных сигналов (например, RS-422).
нет единого универсального дизайна uart, который каждый использует, и не существует стандарта, который соответствует требованиям для обработки ошибок. Поэтому нет ответа на вашу проблему ... «это зависит» ... –