Здравствуйте!
Суть проблемы следующая. Разрабатываю устройство для многоканальной оцифровки сигналов звуковых частот. В качестве АЦП использую (пока для эксперементов) CS5368 - 8-ми канальный звуковой АЦП фирмы Cirrus Logic. Приемником оцифрованных данных является процессор AT91SAM7X256 (на отладочной плате AS-SAMX-256). Интерфейс передачи данных TDM (использую SSC контроллер вышеупомянутого контроллера). АЦП распаян на самодельной платке, обвязка АЦП согласно даташита. На вход подаю звуковой тракт звуковоспроизводящего устройства. Входной буфер аналогового сигнала (преобразование сигнала в диференциальный) выполнен согласно даташита на макетной плате. В контроллере находится программа, которая передает полученные от АЦП данные в компьютер. На стороне компьютера звук может сохраняться в WAV файл или воспроизводиться в реальном времени.
Так вот, оцифрованный звук - "хрипит". Сначала грешил на аналоговый буфер (преобразовывающий сигнал в диференциальный), так как собран на макетке с "первым попавшимся" ОУ и с длинноногими резисторами/кондерами. Но проверка показала, что звук на выходе аналогового буфера "правильный". Проверял путем подключения к Line-In входу звуковой платы - звук чистый, без хрипов и прочих искажений.
А теперь, конкретные примеры:
1. На вход в АЦП подается синусоида с частотой 500 Гц. После оцифровки получаю следующую картину:
2. Тот же сигнал только с другим масштабом отображения:
3. Еще пример
Далее фрагменты сигнала частотой 500 Гц с разной амплитудой
4. 500 Гц с "малой" амплитудой
5. 500 Гц с чуть большей амплитудой
6. 500 Гц - еще больше
7. Фрагменты 4, 5, 6 "вырваны" из сигнала, который после оцифровки имеет такую огибающую:
8. При подаче на вход АЦП этот сигнал (500 Гц) имеет следующую огибающую:
В общем, - уже целую неделю бъюсь над проблемой, не могу понять в чем причина.
Направьте на путь истинный, кто знает !