ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
26 ноября
879278 Топик полностью
AlexBi_ (28.10.2018 00:06, просмотров: 1) ответил AVF на да вообще не вопрос, на ошибку повесить прерывание, если надо быстро, если нет, проверить при очередном контроле. Обнаружение пауз - проверять через нужное кол-во мс, т.е. для modbus 3.5мс, я обычно ставлю раз в 10мс, потому как не все мастера
Что бы понять в каком байте ошибка придется проводить манипуляции с ДМА, нарушающие всю его работу. А если нужна возможность работы когда в каждом байте ошибка, то польза от ДМА может совсем потеряться. И с обнаружением пауз проблема. Будем проверять каждые 3.5мс (для примера) что есть в ДМА? Как это поможет получить прерывание через 3.5мс после приема последнего байта? Или придется соглашаться с точностью определения паузы +-3.5мс? В свей практике, я ДМА применял только там, где прерываниями не получалось (в основном для SPI). УАРТы обрабатывал в прерываниях, из-за контроля ошибок и обнаружения пауз.