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