AD7705 — 2-х канальный 16 битный сигма-дельта АЦП

Модуль AD7705 представляет собой 2-х канальный сигма- дельта 16 битный АЦП, гарантирующий отсутствие потери кодов. Выбранный входной сигнал поступает на усилитель с программируемым коэффициентом усиления, а с его выхода на аналоговый модулятор. Сигнал с выхода модулятора поступает на внутренний цифровой фильтр. Предыдущее значение фильтра может быть перенесено из внутреннего управляющего регистра, что позволяет регулировать порог отсечки фильтра и частоту обновления.

Модуль AD7705 работает от однополярного источника питания с напряжением от 4.75 В до 5.25 В, модуль содержит встроенный источник опорного напряжения LM285. AD7705 имеет два канала с полностью дифференциальными входами. Входы первого канала AN1+ AN1- и AN2+ AN2- для второго канала. При измерении однополярного напряжения входы AN1- и AN2- необходимо подключить к общему проводу (GND). При этом на входы AN1+ и AN2+ можно подавать напряжение только положительной полярности.

При использовании дифференциального входа, входы AN+ и AN- обеих каналов не должны соединяться с общим проводом (GND) при этом входное напряжение может быть в пределах от -2,5 до +2,5 В. При измерении однополярного напряжения входы AN- обеих каналов должны быть соединены с общим проводом (GND), а входное напряжение положительной полярности подается на входы AN+ и не должно превышать +5 В. Режим работы входов задается в функции setSetup(). При не соблюдении данных правил, АЦП может выйти из строя.

AD7705 работает с интерфейсом SPI. При помощи этого интерфейса могут быть выбраны коэффициент усиления, полярность сигнала и частота дискретизации. AD7705 содержит внутреннюю калибровку и системную градуировку для устранения ошибки усиления и смещения.

Основные параметры AD7705:

  • AD7705: двухканальный АЦП с дифференциальными входами
  • 16 битное разрешение
  • Коэффициент нелинейности 0.003 %
  • Программируемый коэффициент усиления от 1 до 128
  • Трехпроводный последовательный SPI, QSPI, MICROWIRE и DSP совместимый интерфейс
  • Однополярное питание от 4.75 В до 5.25 В

При использовании платформы Arduino можно легко запустить и настроить модуль AD7705. Библиотека https://github.com/liman324/AD7705.git позволяет запустить модуль, настроить коэффициент усиления, выбрать полярность входного сигнала и частоту дискретизации. Оба входа работают независимо друг от друга, каждому входу можно задать разные режимы работы.

При использовании библиотеки необходимо учитывать порядок применения функций записи параметров и чтения цифрового значения измеренного напряжения. Сначала необходимо задать параметры первого канала при помощи функции setSetup() , а затем считать цифровое измеренное значение входа CH1 при помощи функции read_unipolar()  или read_bipolar() при использовании дифференциального входа. Аналогично записываются и считываются параметры для канала CH2.

купить микросхемы Stmicroelectronics

#include <SPI.h>
#include <AD7705.h> // https://github.com/liman324/AD7705.git
AD7705 ad(8,7);// DRDY,RESET
// SS    10 // CS
// MOSI  11 // DIN
// MISO  12 // DOUT
// SCK   13 // SCLK
 
long data;
 
void setup() {
  Serial.begin(9600);
  ad.conf();
  delay(500);
}
 
void loop() {
  // CH1 = 1/CH2 = 2
  // GAIN = 1,2,4,8,16,32,64,128
  // RATE = 20,25,100,200 Hz
  // UNIPOLAR = 0/BIPOLAR = 1 
 
  ad.setSetup(1,1,25,0);
  data = ad.read_unipolar();
  Serial.print("CH1 ");Serial.print(data);
 
  ad.setSetup(2,1,25,0);
  data = ad.read_unipolar();
  Serial.print("  CH2 ");Serial.println(data);
 
  delay(1000);// задержка не обязательна!
}
 
/****CH1,GAIN1,25Hz,bipolar*****
 ad.setSetup(1,1,25,1);
 data = ad.read_bipolar();
 // long data = -32768...32767 = -2.5...+2.5 V
 */
 
/****CH1,GAIN1,25Hz,unipolar*****
 ad.setSetup(1,1,25,0);
 data = ad.read_unipolar();
 // long data = 0...65535  = 0...+5 V
 */

AD7705_7706.pdf

Добавить комментарий

Войти с помощью: