[an error occurred while processing this directive]
|
Работаю с AVR-микроконтроллером ATmega8, управляю 24-разр. АЦП AD7714. АЦП и МК гальванически развязаны по управлению через оптроны. Использую встроенный SPI-интерфейс микроконтроллера. Алгоритм такой: читаю с АЦП данные (24-разр. код) 16 раз; потом сортирую их (min,...,max), отбрасываю по четыре замера сверху и снизу, затем рассчитываю среднее из восьми оставшихся. Это значение передаю на ЭВМ. При этом на входе АЦП "нулевой" сигнал (перемычка).
Так вот, все вроде работает нормально, но в абсолютно произвольные моменты времени, без всякой периодичности проскакивают какие-то "левые" значения, причем их всего 2-3, но они одинаковые (такое ощущение, что в старшем или среднем байте откуда-то появляется FF, но это только предположение).
Думал,что это SPI барахлит, написал вручную обмен с АЦП - не помогло...
Может у кого-то есть идеи по этому поводу?
E-mail: info@telesys.ru