Evgeny_CD, Архитектор (14.05.2021 23:54, просмотров: 209) ответил lloyd на Ну детектировать "тишину" на линии с DMA-контроллером. У TM4C1294
есть флаг прерывания RXIDLE, но с включенным DMA этот флаг не
взводится. Поэтому или периодически долбить порт, или реализовать
на прерываниях, или подцепить RX-линию на таймер, который после
стоп-бита насчитает до нуля и скажет, что фрейм закончился
Скорее всего idle на приеме не потребуется детектировать. Приём
заголовка пакета запускает протокольный таймер, приём конца
останавливает таймер. И далее либо пакет принялся за выделенный
слот, либо случилась ошибка (таймер сработал), ждём новый
заголовок.