- Войдите или зарегистрируйтесь, чтобы оставлять комментарии
Всем привет!
В этой статье хочу остановиться на одной микросхеме которая я стал совсем недавно использовать в своих проектах - цифровой потенциометр AD8400. Тема использования цифрового варианта вместо механического не нова и используется давно и в промышленных масштабах. Я как-то обходил ее стороной т.к. механический вариант это достаточно надежно если его не использовать очень! часто. И когда встал вопрос о постоянных закупках механический потенциометров то мое внимание было обращено в сторону цифры и для реализации была выбрана микросхема известной фирма Analog Devices (AD) AD8400 (AD8402/AD8403) - это цифровой потенциометр с интерфейсом SPI. Одним ее основным достоинством или недостатком можно считать то, что после выключения питания микросхема обнуляется т.е. не запоминает значение установленного переменного сопротивления!! Если это важно то следует обратить внимание на другие микросхемы подобного типа.
Микросхема представляет собой 256 позиционный переменный резистор который содержит в себе (1, 2 или 4 цифровых потенциометра) см. ниже
Может быть номиналом 1 КОм, 10 КОм, 10 КОм, 50 КОм, 100 КОм.
Работает на частоте 10 МГц, Имеет в своем корпусе трехпроводный интерфейс связи SPI.
При этом удобный диапазон напряжения питания 2,7 - 5 V.
Сложного в микросхеме ни чего нет. Как мы видим с права переменные резисторы, слева управление. В этой статье я остановлюсь на микросхеме AD8400 которая имеет один цифровой потенциометр. Эта самая простая версия и отличается от AD8402/AD8403 количеством ножек.
Вот она
где
A1, B1, W1 - ножки цифрового потенциометра;
VDD, GND - питание микросхемы;
CS - выбор микросхемы;
SDI - вход данных для трехпроводного SPI;
CLK - вход сигнала сдвига трехпроводного SPI;
Связь с микросхемой осуществляется по совместимому с SPI интерфейсу (трехпроводная схема).
Ниже показано как это осуществляется в микросхеме.
Чтобы задать необходимое нам значение на переменном резисторе
1. Чтобы микросхема начала принимать данные - задействовать пин CS (см. ниже картинка передачи данных)
2. Два пина
CLK - сдвигает данные (clock)
SDI - сами данные
Посылка представляет 10 бит
Формат передачи
где
A1- A0 - адрес микросхемы
Если используем микросхему
AD8400 - 00
AD8402 - 01
D7 - D0 - данные
Передача осуществляется по диаграмме ниже
Для того чтобы установить необходимую величину сопротивления - просто пересчитываем ее исходя из номинала микросхемы
Для 10 Ком в документации приведен пример
При подаче на шину данных значения
255 - получим полную шкалу в 10 Ком
128 - получим половину шкалы 5 Ком.
Описанного выше вполне достаточно для того чтобы использовать микросхему в своем проекте. Остальные данные есть в полном описании AD8400
Если есть вопросы - пишите по адресу stm32@stm32res.ru или Website feedback