Цитата
Всё равно у меня в тылу остался вопрос, предыдущий пост.
Этот?
Цитата
В чём порочность подхода?
Не может ли там быть каким-то образом, что перезапуск дма получился где-то в середине? По идее достаточно одно такого глюка, что бы началась каша.
АЦП выдает 2 значения подряд, а дма уже не в 0, на 1ом будет флаг ТС1, пересброс дма, по сути операция эта очень быстрая, ацп не успеет 2ое значение потерять, 2ое значение ляжет первым, после чего 1ое (новое) значение пойдет на 2ое место, опять готовность дма и всё повторяется. Если буфер не 2, а больше значений, то соотв. сдвижка будет другая. И никуда она не денется и период таймера не повлияет.
Как вариант, можно попробовать ловить флаг не от дма, а от ацп, он его выдаст после оцифровки всей группы каналов. Тут уже глюков быть не должно.
Заодно можно проверить, если от ацп флаг есть, а от дма нету (в течение некоторого адекватного времени, весьма короткого), значит имеет место косяк.