Для выводов I2C платы коммутации Sparkfun nRF52832 требуются подтягивающие резисторы?
Я пытаюсь использовать кнопки через I2C, используя панель управления nRF52832 Sparkfun. Я следовал инструкциям, приведенным в nrf52832-breakout-board-hook-guide-guide, и изменил контакты I2C Data и CLK на 24 и 25 соответственно. Я подключил эти контакты и GND платы к соответствующим контактам и отсканировал устройства I2C. Но это дало ошибку = 2 (нет устройства I2C) для всех адресов. Должен ли я использовать подтягивающие резисторы? Буду признателен за любую помощь.
1 ответ
Спасибо за ваш ответ. Я думаю, что это зависит от устройства I2C, которое мы используем. Этот модуль имеет внутренние подтягивающие резисторы, но этого может быть недостаточно для некоторых устройств. Итак, я отключил внутренние подтягивания, заменив GPIO_PIN_CNF_PULL_Pullup на GPIO_PIN_CNF_PULL_Disabled для выводов SDA и SCL в библиотеке и использовал внешние.
Да, для связи I2C ДОЛЖНЫ быть предусмотрены подтягивающие резисторы на SCL и SDA. Пожалуйста, смотрите следующие ссылки:-
- Спецификация инфоцентра (см. Самый конец раздела)
- Devzone Вопрос 1
- DevZone Вопрос 2
- DevZone Вопрос 3
Я также рекомендую задавать аналогичные вопросы по электротехнике или непосредственно по скандинавской DevZone, поскольку существует более высокая вероятность того, что ответ будет получен быстрее.
надеюсь, это поможет