Набор конденсаторов переключается в положение «Хранение», и все конденсаторы, начиная с конденсатора, имеющего наибольшую емкость, по очереди подключаются к линии Vref. Выходной сигнал компаратора определяет состояние соответствующего бита регистра последовательного приближения (SAR). Подробно этот процесс показан на Рис. 14.10. После четырех таких операций «установка — проверка — сброс» результат из SAR передается в регистр данных АЦП. При этом сбрасывается флаг , свидетельствуя об окончании процесса преобразования, и устанавливается флаг прерывания ADIF. И в завершение аналоговый вход снова подключается к конденсаторам (состояние «Выборка»), в результате чего они заряжаются для следующего преобразования, которое можно будет выполнить после небольшой паузы.
Суммарное время преобразования приблизительно равно шести периодам сигнала tAD, подаваемого на тактовый вход сдвигового регистра секвенсора (контроллера последовательности) — по одному периоду на каждый бит плюс один для каждого из интервалов выборки и хранения. В 10-битном модуле время преобразования приблизительно равно 12 периодам тактового сигнала АЦП. Если же говорить конкретно о микроконтроллерах PIC, то минимальный период тактового сигнала составляет примерно 1.6 мкс (~= 600 кГц) для всех устройств, кроме самых старых моделей PIC16C71/711, в которых это значение равно 2 мкс. Нижняя граница периода не нормируется, однако из-за постепенного стекания заряда из конденсаторов следует избегать тактовых частот с периодом tAD более 20 мкс (50 кГц). Из Рис. 14.11 видно, что в качестве тактового сигнала АЦП может использоваться сигнал от одного из четырех источников. Первые три сигнала получают из системного тактового сигнала, прошедшего через предделитель, а четвертый формируется встроенным RС-генератором, период tAD которого составляет около 4 мкс.
Процесс преобразования, при котором каждая последующая доля Vref добавляется и при необходимости исключается из начального значения, показан на Рис. 14.10. Как мы уже видели на Рис. 14.8, в конце этапа выборки верхние обкладки конденсаторов заряжаются до уровня — Vin. В качестве примера предположим, что Vin = 0.4285∙Vref.
Рис. 14.9.Упрощенная схема 4-битного АЦП последовательного приближения
1. Процесс начинается с подключения источника опорного напряжения Vref к нижней обкладке конденсатора самой большой емкости, что определяется защелкой SAR8 (Рис. 14.9). Это вызывает инжекцию заряда величиной ΔQ = Ctotal∙Vref, который будет одинаков как для конденсатора C1 емкостью 8 единиц, так и для остальных конденсаторов, суммарная емкость которых также равна восьми единицам (Рис. 14.10). Таким образом, напряжение на узле N возрастает на Vref/2 до уровня —0.4285 + 0.5 = +0.0715∙Vref. В общем случае ΔVN = VrefCk/Ctotal. В результате на выходе компаратора появляется лог. 0 и защелка SAR8 соответственно сбрасывается, приводя напряжение на конденсаторах к значениям, которые были перед началом данного этапа.
Рис. 14.10. Реализация метода последовательного приближения
2. SAR4 подключает источник Vref к следующему конденсатору наибольшей емкости, в результате чего напряжение на узле N возрастает на Vref/4 (т. е. на 4/16) — В итоге на инвертирующем входе компаратора появляется напряжение —0.4285 + 0.25 = —0.1785∙Vref, что приводит к появлению на выходе компаратора лог. 1. Защелка SAR4 остается установленной, при этом напряжение узла остается равным —0.1785∙Vref.
3. SAR2 подключает источник Vref к следующему конденсатору наибольшей емкости, в результате чего напряжение на узле N возрастает на Vref/8 (т. е. нa 2/16). Итоговое напряжение -0.1785 + 0.125 = -0.0535∙Vref приводит к появлению на выходе компаратора лог. 1. Защелка SAR2 остается установленной, при этом напряжение узла остается равным —0.0535∙Vref.
4. SAR1 подключает источник Vref к конденсатору наименьшей емкости, в результате чего напряжение на узле N возрастает на Vref/16 (т. е. на 1/16) — Итоговое напряжение -0.0535 + 0.0635 = +0.009∙Vref приводит к появлению на выходе компаратора лог. 0 и сбросу защелки SAR1.
Таким образом, в регистре SAR окажется код Ь’0110’ или 0.375 В, представляющий 4-битное число, наиболее близко соответствующее напряжению Vin = 0.4825∙Vref. Остаток, равный 0.0535∙Vref, представляет собой погрешность квантования.