Питание интерфейса (VDDIO, VLOGIC)
У многих датчиков два вывода питания: основной VDD и VDDIO для интерфейса. Второй задаёт логические уровни I²C или SPI, и датчик с ядром на 3,3 В можно подключить к микроконтроллеру на 1,8 В без преобразователя уровней. Разбираем, как это устроено у BMP280 и MPU-6050 и где здесь ловушки.
Обновлено Редакция GAW
Содержание
VDDIO (у MPU-6050 — VLOGIC, у других микросхем VIO или VCCIO) — отдельный вывод питания цифрового интерфейса микросхемы. От него питаются входные и выходные каскады I²C, SPI и других выводов, поэтому именно VDDIO задаёт логические уровни. Ядро и аналоговая часть питаются от основного VDD.
Зачем два питания
Датчику для точной работы может требоваться одно напряжение, а микроконтроллер работает от другого. Например, у Bosch BMP280:
| Вывод | Диапазон | Что питает |
|---|---|---|
| VDD | 1,71–3,6 В | аналоговая и цифровая часть |
| VDDIO | 1,2–3,6 В | цифровой интерфейс |
Подав на VDDIO напряжение микроконтроллера, получают совместимые уровни без преобразователя уровней. У MPU-6050 VLOGIC может быть 1,8 В ±5 % или равен VDD (2,375–3,46 В), а MPU-6000 с единственным выводом питания такой возможности не имеет. Подробнее — на страницах BMP280 и MPU-6050.
Ограничения
- Уровни на входах. Напряжение на выводах интерфейса BMP280 не должно выходить за пределы от −0,3 В до VDDIO + 0,3 В. Это не толерантный к 5 В вход: подтяжки I²C подключают к шине VDDIO, а не к более высокому питанию.
- Обратное питание. Если VDDIO выключено, а на интерфейсе высокий уровень, через защитные диоды течёт инжектированный ток. Bosch предупреждает, что это может необратимо повредить датчик.
- Порядок включения. У MPU-6050 VLOGIC никогда не должен превышать VDD; у BMP280 порядок свободный, а при поданном VDDIO и выключенном VDD выводы интерфейса в высокоимпедансном состоянии, и шиной можно пользоваться. См. последовательность включения питания.
На модулях
На готовом модуле вывод VDDIO может быть соединён с VDD прямо на плате, а между датчиком и разъёмом могут стоять свой стабилизатор и преобразователи уровней. Тогда уровни интерфейса определяет схема модуля, и её проверяют по принципиальной схеме или измерением, а не по даташиту датчика.
Частые вопросы
Можно ли подключить BMP280 к микроконтроллеру на 1,8 В?
Да, через VDDIO. Подайте на VDD питание датчика (от 1,71 до 3,6 В), а на VDDIO — те же 1,8 В, что у микроконтроллера: VDDIO допускает от 1,2 до 3,6 В. Логические уровни интерфейса будут от VDDIO, и преобразователь уровней не нужен. Подтяжки I²C подключают к той же шине 1,8 В.
Что будет, если подать сигнал на интерфейс при выключенном VDDIO?
Ток пойдёт через защитные диоды выводов во внутреннюю шину питания. Bosch для BMP280 прямо предупреждает: высокий уровень на выводах SDI, SDO, SCK или CSB при выключенном VDDIO может необратимо повредить датчик. Поэтому VDDIO выключают вместе с шиной или раньше снимают сигналы.
Можно ли просто соединить VDDIO с VDD?
Можно, если уровни интерфейса совпадают с питанием датчика. У MPU-6050 VLOGIC допускается равным VDD. Но VLOGIC никогда не должен быть больше VDD — это требование InvenSense к порядку включения.
Источники
- Bosch Sensortec. BMP280 Digital Pressure Sensor, Data sheet BST-BMP280-DS001-26, Revision 1.26 (October 2021) — разд. 1: VDD 1,71–3,6 В, VDDIO 1,2–3,6 В (тип. 1,8 В); разд. 2, предельные режимы: VDD и VDDIO от −0,3 до 4,25 В, любой вывод интерфейса от −0,3 до VDDIO + 0,3 В; разд. 3.2: VDD питает аналоговую и цифровую часть, VDDIO — отдельное питание цифрового интерфейса; ограничений на порядок и скорость нарастания нет; высокий уровень на SDI, SDO, SCK или CSB при выключенном VDDIO может необратимо повредить датчик током через защитные диоды; при поданном VDDIO и выключенном VDD выводы интерфейса в высокоимпедансном состоянии, шину можно использовать
- InvenSense. MPU-6000 and MPU-6050 Product Specification, PS-MPU-6000A-00, Revision 3.4 (08/19/2013) — разд. 3.1: MPU-6050 имеет вывод VLOGIC, задающий логические уровни I²C, в дополнение к аналоговому питанию VDD 2,375–3,46 В; VLOGIC — 1,8 В ±5 % или VDD; таблица отличий: VLOGIC 1,71 В…VDD; у MPU-6000 один вывод питания; разд. 7.4: VLOGIC ≤ VDD всегда, нарастание VLOGIC ≤ 3 мс, VDD ≤ 100 мс, монотонно
Нашли ошибку?
Смотрите также
- Преобразователь уровнейМикросхема, согласующая логические сигналы разных напряжений
- Последовательность включения питанияПорядок и скорость нарастания нескольких питающих напряжений при включении и выключении
- Наведённый токТок через защитные диоды вывода при перенапряжении
- Вывод FT (5 V tolerant)Вход на 3,3 В, выдерживающий 5 В, и его условия
- BMP280Барометр I²C и SPI: питание, адреса, точность, шум, режимы, отличие от BME280
- MPU-60506 осей по I²C: выводы, адрес, регистры, пересчёт кодов, код Arduino