AD8400/8402/8403

Опубликовано stm32 - сб, 03/20/2021 - 10:11

Всем привет!

В этой статье хочу остановиться на одной микросхеме которая я стал совсем недавно использовать в своих проектах - цифровой потенциометр AD8400. Тема использования цифрового варианта вместо механического не нова и используется давно и в промышленных масштабах. Я как-то обходил ее стороной т.к. механический вариант это достаточно надежно если его не использовать очень! часто. И когда встал вопрос о постоянных закупках механический потенциометров то мое внимание было обращено в сторону цифры и для реализации была выбрана микросхема известной фирма Analog Devices (AD)  AD8400 (AD8402/AD8403) - это цифровой потенциометр с интерфейсом SPI.  Одним ее основным достоинством или недостатком можно считать то, что после выключения питания микросхема обнуляется т.е. не запоминает значение установленного переменного сопротивления!!  Если это важно то следует обратить внимание на другие микросхемы подобного типа. 

Микросхема представляет собой 256 позиционный переменный резистор который содержит в себе (1, 2 или 4 цифровых потенциометра) см. ниже

 

f1_5

Может быть номиналом 1 КОм, 10 КОм, 10 КОм, 50 КОм, 100 КОм.  

Работает на частоте 10 МГц, Имеет в своем корпусе трехпроводный интерфейс связи SPI. 

При этом удобный диапазон напряжения питания 2,7 - 5 V.

Сложного в микросхеме ни чего нет. Как мы видим с права переменные резисторы, слева управление. В этой статье я остановлюсь на микросхеме AD8400 которая имеет один цифровой потенциометр. Эта самая простая версия и отличается от AD8402/AD8403 количеством ножек. 

Вот она

f1_6

где

A1, B1, W1 - ножки цифрового потенциометра;

VDD, GND - питание микросхемы;

CS - выбор микросхемы;

SDI - вход данных для трехпроводного SPI;

CLK - вход сигнала сдвига трехпроводного SPI;

 

Связь с микросхемой осуществляется по совместимому с SPI интерфейсу (трехпроводная схема). 

Ниже показано как это осуществляется в микросхеме.

f1_7

Чтобы задать необходимое нам значение на переменном резисторе 

1. Чтобы микросхема начала принимать данные - задействовать пин CS (см. ниже картинка передачи данных)

2. Два пина 

CLK - сдвигает данные (clock)

SDI - сами данные

f1_14

Посылка представляет 10 бит 

Формат передачи 

f1_8где 

A1- A0 - адрес микросхемы 

Если используем микросхему 

AD8400 - 00

AD8402 - 01

D7 - D0 - данные 

Передача осуществляется по диаграмме ниже

f1_10

f1_12

f1_11

Для того чтобы установить необходимую величину сопротивления - просто пересчитываем ее исходя из номинала микросхемы

Для 10 Ком в документации приведен пример 

 

f1_15

При подаче на шину данных значения

255 - получим полную шкалу в 10 Ком

128 - получим половину шкалы 5 Ком.

Описанного выше вполне достаточно для того чтобы использовать микросхему в своем проекте.  Остальные данные есть в полном описании AD8400

Если есть вопросы  - пишите по адресу stm32@stm32res.ru или Website feedback

 

Яндекс.Метрика