Микросхемы АЦП
Внешний АЦП ставят, когда встроенного в микроконтроллер не хватает: нужна большая разрядность, дифференциальный вход, усиление слабого сигнала или больше каналов. Здесь — карточки популярных микросхем и строки даташита, по которым их сравнивают.
Аналого-цифровой преобразователь превращает напряжение в число. Встроенные АЦП микроконтроллеров разобраны в статьях об атласе МК и в калькуляторе АЦП AVR, а здесь — отдельные микросхемы, которые подключают по I²C или SPI.
Карточки
| Микросхема | Разрядность | Скорость | Интерфейс | Особенность |
|---|---|---|---|---|
| ADS1115, MCP3008 | 16 и 10 бит | до 860 и до 200 000 выборок/с | I²C и SPI | у ADS1115 усилитель и дифференциальный вход, у MCP3008 восемь каналов |
| MCP4725, DAC7571 — ЦАП | 12 бит | установление 6–10 мкс | I²C | обратная задача — выдать напряжение; у MCP4725 значение хранится в EEPROM |
Что смотреть в даташите АЦП
| Строка даташита | Что означает |
|---|---|
| Resolution | разрядность — число кодов; шаг кода — младший разряд |
| Data rate, throughput | выборок в секунду |
| Full-scale range, VREF | диапазон входа и от чего он задан: внешнее опорное или внутреннее с усилителем |
| INL, DNL | нелинейность в долях младшего разряда |
| Offset error, gain error | ошибки смещения нуля и наклона, их дрейф с температурой |
| Noise, effective resolution | шум и число полезных разрядов при данной скорости |
| Input impedance, sample capacitor | как вход нагружает источник и сколько времени нужно на заряд — см. время выборки АЦП |
Шум можно снизить передискретизацией и усреднением ценой скорости. Если входов не хватает, перед АЦП ставят аналоговый мультиплексор.
Готовятся к публикации
HX711 для тензодатчиков
Частые вопросы
Зачем внешний АЦП, если в микроконтроллере уже есть?
Встроенный АЦП обычно 10–12-битный, с опорным от питания или встроенным источником и без усилителя. Внешний даёт больше разрядов — у ADS1115 16 бит, — дифференциальный вход для мостовых датчиков и шунтов, программируемое усиление для милливольтовых сигналов или просто дополнительные каналы, как MCP3008.
Что важнее — разрядность или шум?
Шум. Разрядность — сколько кодов выдаёт АЦП, а шум определяет, сколько из них реально полезны. TI для ADS1115 приводит таблицы шума и эффективной разрядности: на малых скоростях размах шума не превышает одного младшего разряда, а на 860 выборках в секунду он в 2–4,6 раза больше в зависимости от диапазона. Поэтому в даташите смотрят таблицу шума, а не только число бит.
От чего зависит точность внешнего АЦП?
От опорного напряжения, ошибок смещения и усиления, шума и того, как сигнал подан на вход. У MCP3008 опорное подаётся снаружи, и код пропорционален отношению входа к нему; у ADS1115 опорное внутреннее. Сопротивление источника влияет на заряд выборочной ёмкости — Microchip прямо пишет, что большое сопротивление источника увеличивает ошибки.
Смотрите также
- ADS1115 и MCP300816 бит I²C с усилителем против 10 бит SPI на 8 каналов: выводы, диапазоны, точность
- MCP4725 и DAC757112-битные ЦАП I²C в SOT-23-6: адреса, запись, EEPROM, точность, отключение
- Младший разряд (LSB)Шаг квантования АЦП VREF / 2^N и ошибка ±½ LSB
- Время выборки АЦПЗаряд конденсатора выборки и сопротивление источника
- ПередискретизацияOversampling: дополнительные биты АЦП усреднением
- АЦП AVR: ADPS и кодЧастота АЦП, время преобразования, код по напряжению, ADMUX и ADCSRA