Калькулятор преобразователя ADC / DAC
Рассчитайте размер шага LSB, квантованный код ADC и восстановленное выходное напряжение DAC для любой разрядности и опорного напряжения. Показывает код в десятичном, двоичном и шестнадцатеричном виде, а также ошибку квантования и идеальный SNR.
Ввод
Вывод
| Показатель | Значение |
|---|---|
| No data yet | |
Руководства
Каждый аналогово-цифровой и цифро-аналоговый преобразователь определяется двумя числами: разрядностью в битах и опорным напряжением, относительно которого он измеряет. Этот калькулятор превращает эти два значения во всё остальное, что нужно при масштабировании показаний в прошивке — размер шага LSB, квантованный код, который даёт входное напряжение (в десятичном, двоичном и шестнадцатеричном виде), напряжение, которое DAC восстанавливает из кода, и сколько разрешения вы на самом деле теряете из-за квантования.
Как использовать
- Задайте разрядность в битах — 8, 10, 12 и 16 покрывают большинство ADC микроконтроллеров; 24 и 32 — аудио- и прецизионные сигма-дельта компоненты.
- Введите опорное напряжение (Vref). Это полный диапазон преобразователя, а не шина питания — многие компоненты работают от 3,3 В, но измеряют относительно внутреннего опорного напряжения 2,5 В или 1,2 В.
- Введите аналоговый вход (Vin), чтобы увидеть код, который сформирует ADC для этого напряжения.
- Введите цифровой код, чтобы увидеть напряжение, которое DAC выдаст для этого кода.
Настройки
- Соглашение о полной шкале —
Vref / 2^N— стандартное определение, и именно его используют почти все даташиты ADC: максимальный код находится на один LSB ниже Vref.Vref / (2^N − 1)ставит максимальный код ровно на Vref, что предполагает некоторый код масштабирования DAC и PWM. Неправильный выбор даёт ошибку в один LSB на полной шкале. - Квантование ADC — реальные ADC усекают: любое напряжение в пределах шага отображается на код ниже. Округление до ближайшего моделирует идеальную передаточную характеристику со смещением в половину LSB, которое вы получаете после калибровки на многих компонентах.
Формулы
- Уровни = 2^N, максимальный код = 2^N − 1
- LSB = Vref / 2^N (или Vref / (2^N − 1))
- Код ADC = floor(Vin / LSB), ограниченный от 0 … максимального кода
- Восстановленное напряжение = код × LSB
- Ошибка квантования = Vin − восстановленное напряжение, ограниченная ±½ LSB
- Идеальный SNR (SQNR) = 6.02 × N + 1.76 dB
FAQ
Почему один дополнительный бит даёт всего 6 дБ?
Каждый бит вдвое уменьшает LSB, что вдвое уменьшает шум квантования — коэффициент два по амплитуде это 6,02 дБ. Поэтому идеальный SNR меняется шагами примерно по 6 дБ: 12-битный преобразователь упирается в ~74 дБ, каким бы чистым ни был остальной тракт вашего сигнала.
Мои показания шумят в последних двух битах — это квантование?
Обычно нет. Ошибка квантования детерминирована и ограничена половиной LSB; шум, который гуляет на несколько отсчётов, обычно возникает из-за шума опорного напряжения, просадок земли или несоответствия входного импеданса схеме выборки-хранения ADC. Сравните разброс с величиной ±½ LSB, которую показывает этот калькулятор — если она намного больше, разрешение преобразователя не является вашим ограничением.
Учитывает ли эта модель смещение, ошибку усиления или INL?
Нет — это идеальная математика квантования, то, что нужно для проверок масштабирования в прошивке и сравнения вариантов разрешения и опорного напряжения. Реальные смещение, ошибка усиления, интегральная/дифференциальная нелинейность и шум берутся из даташита компонента и складываются поверх этих чисел.
Связанные инструменты
Для резистивного делителя, который обычно стоит перед входом ADC, используйте Калькулятор делителя напряжения. Если вы управляете аналоговым уровнем через фильтрованный PWM-выход вместо DAC, то Калькулятор частоты и коэффициента заполнения PWM покрывает эту сторону. Чтобы вручную перевести сырой код в другое основание, обратитесь к Конвертеру систем счисления для целых чисел.
Конфиденциальность
Все расчёты выполняются полностью в вашем браузере — ничто из введённых данных не отправляется на сервер.
Use it from code
From 3 credits per callREST API
curl -X POST https://api.iotools.cloud/v1/tool/adc-dac-converter-calculator \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"bits": "12",
"vref": "3.3",
"vin": "1.65",
"code": "2048",
"scale": "pow",
"rounding": "floor"
}'Swap in your own key from your account. The tool's fields are the body — no wrapper.
Ask an AI agent
Use the IOTools `adc-dac-converter-calculator` tool (ADC / DAC Converter Calculator) on this input:
YOUR_INPUT_HEREPaste this at any agent connected to the IOTools MCP server, then add your input.