[an error occurred while processing this directive]
|
1. Зачем использовать Free Running Mode, если АЦП должен запускаться синхронно с событием? Переключи на Single, а повторные преобразования запускай точно в те моменты, которые соответствуют новым фазам измерения.
2. Выборка-хранение (короткая или длинная) происходит при каждом преобразовании в строго определенный отрезок времени, и важно, чтобы в течении этого отрезка измеряемое напряжение было установившимся. Чем точнее привязка старта АЦП к очередной фазе измерения - тем достовернее результат. Раз скважность у тебя меняется, то момент очередного преобразования ты должен выбрать так, чтобы оно всегда происходило на одном и том же участке импульса ШИМ, а не когда попало, как у тебя происходит при Free Running - ведь в этом случае прерыванием от таймера ты запускаешь серию измерений с одинаковым интервалом, а не набор измерений в нужные моменты. Привяжи старты АЦП к фазам ШИМ.
3. В удлиненной выборке есть и свои плюсы, это дополнительное осреднение измеряемого сигнала за период выборки. Возможно, Noise Reduction Mode (без Idle) значительно улучшит картину.
4. Просмотри осциллограммы сигналов, предварительно выведя на какую-нибудь ногу короткий импульс синхронизации в момент начала обработки прерывания АЦП. Это покажет степень стационарности сигналов на разных фазах измерений, и по результатам можно будет внести коррективы в идеологию синхронизации АЦП с событиями ШИМ.
5. Номинал шунтирующего резистора ты выбрал, видимо, исходя из только тебе известных соображений, поэтому ничего сказать о нем не могу. Добавлю только, что не помешает зашунтировать его конденсатором для подавления быстрых переходных процессов - номинал выбери из соображений требуемого времени установления при конкретном значении ПОСЛЕДОВАТЕЛЬНОГО резистора, который у тебя, конечно, присутствует.
E-mail: info@telesys.ru