@mirspo

У sda (i2c) 5 вольтовая логика?

Купил у китайских товарищей клон arduino, bme280 и конвертер 5 в 3В. Подключил датчик через конвертер к i2c (scl,sda на ардуине) - не работает:
#, 5v(V), 3v(V), SDA(V), SCL(V), T(C), mmHg, Alt(m), %RH
0, 5.00, 3.33, 3.32, 4.98, 0.01, 162051, -81326.83, 0
1, 5.00, 3.32, 3.32, 4.98, 0.01, 162051, -81326.83, 0
2, 5.00, 3.32, 3.32, 4.98, 0.01, 162051, -81326.83, 0
Подключил SDA напрямую - работает:
# v(V), 3v(V), SDA(V), SCL(V), T(C), mmHg, Alt(m), %RH
0, 5.00, 3.34, 2.92, 4.94, 26.64, 735, 287.20, 37
1, 5.00, 3.33, 2.91, 4.93, 26.63, 735, 286.14, 37
2, 5.00, 3.33, 2.91, 4.93, 26.63, 735, 286.41, 37
Пробовал линию SDA цеплять к 5V через регистр - результат как и в первом случае - не работает.
Выяснил случайно что вольтаж на линии пониженый
Вопрос: Это китай косяк или так и должно быть? Как можно исправить, если на i2c шину нужно еще подключить устройства с 5В логикой?
  • Вопрос задан
  • 1498 просмотров
Решения вопроса 1
У sda (i2c) 5 вольтовая логика?

Да, обычно. I2C содержит две линии, которые соединены с линией питания (+5В) через подтягивающие резисторы.

Тут в 10 разделе упоминается про 3В источники, но только "I2C-устройства с фиксированными входными уровнями 1.5 В и 3 В могут иметь свои собственные питающие напряжения. "

Можно ссылки на все применяемые модули?
Может там bme280 5В совместимый, что за конвертер уровней и т.д.

Если все I2C устройства на 3.3В, то тут написано реально работать с модулем:
playground.arduino.cc/Main/I2CBi-directionalLevelS...
i2c-3v3-sensor-connect.png
резисторы 4.7к, но обещают работу на грани, исходя из текста.
using the 3.3V I2C-bus for a 5V Arduino is living on the edge, hoping that the 3.3V will be recognized as a digital high. Since the I2C-bus is rather slow, the 4k7 pull-up resistors will pull the signal fast enough to 3.3V, and with the help of the internal pull-up resistors the Arduino will work with a 3.3V I2C-bus most of the time.

Ниже в той же теме варианты сопряжения логик, это нужно будет если будут и 5В и 3.3В модули одновременно.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы