ЭФО предлагает со своего склада новую серию преобразователей интерфейсов USB UART компании FTDI FT232RNL-REEL
РадиоЛоцман - Все об электронике

Повышение разрешения периферийного ЦАП

8-битного разрешения периферийного ЦАП (например, в семействе ATtiny) часто оказывается недостаточно. Посмотрим, как можно решить проблему, используя встроенные ресурсы микроконтроллера.

Схема, приведенная на Рисунке 1, демонстрирует способ повышения разрешения периферийного ЦАП. Кроме того, схема уменьшает выходное сопротивление ЦАП и позволяет снизить его смещение (которое у ATtinyX17 довольно существенное).

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Схема, используемая для повышения разрешения периферийного ЦАП, а также для уменьшения выходного сопротивления и смещения ЦАП.
Рисунок 1. Схема, используемая для повышения разрешения периферийного ЦАП,
а также для уменьшения выходного сопротивления и смещения ЦАП.

Этот простой подход полностью статический (не требует дополнительных конденсаторов с их недостатками и восстановлением заряда), сохраняет монотонность исходного ЦАП, но для достижения наилучшей линейности может понадобиться некоторая подстройка.

Для добавления еще одного бита можно использовать любой свободный порт микроконтроллера; на Рисунке 1 этот порт обозначен как PXn (X = A…C, n = 0…7). И таким образом можно добавить более одного бита.

Примечание: Перед использованием порта PXn в качестве дополнительного бита для ЦАП его необходимо сконфигурировать как выход. Также следует помнить об очень полезных инструкциях в AVR ASM, которые позволяют выборочно изменять состояние одного бита.

Бит PXn может быть использован как новый старший значащий бит (MSB) или новый младший значащий бит (LSB) – подробное описание последнего случая приведено ниже.

Чтобы сохранить целостность выходного сигнала, запас по напряжению на выходах DAC0 и PXn должен быть одинаковым. Самый простой способ обеспечить это – выбрать +VDD в качестве опорного напряжения VREF для ЦАП. Разумеется, напряжение +VDD в этом случае должно быть хорошо стабилизировано.

Операционный усилитель должен быть достаточно быстродействующим и точным; при этом общая добавленная ошибка на выходе операционного усилителя составляет:

где 

VOS – напряжение смещения операционного усилителя,
REQ = R1||R3 (приблизительно).

Величина ER должна быть как минимум меньше 1 LSB модифицированного ЦАП.

Минимальное напряжение на выходе DAC0 OUT составляет около 0.2 В (для ATtinyX17). Если такое смещение соответствует требованиям приложения, то резисторы R3 и R4 можно исключить и использовать только одно напряжение питания +E, однако при этом операционный усилитель должен иметь rail-to-rail выход, достаточную точность и способность работы с почти нулевым входным напряжением.

Чтобы уменьшить минимальное значение напряжения eO до нуля, нужно обнулить выход с помощью резисторов R3 и R4, а в DAC0 загрузить нулевой код.

Сопротивления всех резисторов можно рассчитать следующим образом.

R1 ≥ 5.6 кОм (требование из технического описания ATtinyX17).

Пусть исходное разрешение ЦАП составляет N бит. Тогда:

(некоторая окончательная настройка может обеспечить лучший результат).

Поскольку минимальное напряжение на выходе DAC0 OUT составляет примерно 0.2 В,

(если VDD = E = 5 В),

(потенциометр R4 многооборотный).

Резистор R5 позволяет легко масштабировать выходное напряжение ЦАП в соответствии со значениями, ожидаемыми в конкретном приложении.

При написании программного кода могут потребоваться некоторые усилия для синхронизации DAC0 OUT и PXn, хотя есть приложения, допускающие рассинхронизацию, если она не очень велика (менее десятков микросекунд).

Обратите внимание: выход операционного усилителя инвертирован относительно выхода DAC0 OUT (отсюда знак «–» перед eO на Рисунке 1). С этим можно справиться, добавив на выход инвертор (операционный усилитель), или внеся изменения в программный код, что может оказаться более удачным решением.

Не стоит ожидать, что предыдущее максимальное значение скорости преобразования останется неизменным. Каждый следующий добавленный бит вдвое увеличивает сопротивление, а также добавляет некоторую емкость в суммирующий узел.

Таким образом, время установления неизбежно будет увеличиваться с каждым добавленным битом расширения.

Для уменьшения паразитной емкости в инвертирующем узле операционного усилителя резисторы R1, R2, R3 и R5 следует разместить вблизи инвертирующего входа.

Иногда для оптимизации работы ЦАП (частотной коррекции усилителя) параллельно R5 необходимо подключить конденсатор С3 емкостью 10-40 пФ.

EDN

Перевод: AlexAAN по заказу РадиоЛоцман

На английском языке: Extending the resolution of a peripheral DAC

Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя