Как изменить контакты i2C на Teensy 4.1 на произвольные контакты? (31 и 30)C++

Программы на C++. Форум разработчиков
Anonymous
Как изменить контакты i2C на Teensy 4.1 на произвольные контакты? (31 и 30)

Сообщение Anonymous »

В Teensy 4.1 по умолчанию контакты i2C — 18 и 19. Из-за плохого планирования у нас есть компас, подключенный к нашему Teensy 4.1 через контакты 30 и 31 вместо 18 и 19 на печатной плате (так что это постоянно). При использовании библиотеки Adafruit_BNO055 она не распознает компас, и сканер Wire его также не распознает (что имеет смысл, поскольку компас не подключен через Wire, Wire1 или Wire2). Есть ли способ использовать для этого произвольные контакты?
Спасибо

Код: Выделить всё

Wire1.setSCL(31);
Wire1.setSDA(30);
bno = Adafruit_BNO055(55, 0x28, &Wire1);

/* Initialise the sensor */
if (!bno.begin()) {
/* There was a problem detecting the BNO055 ... check your connections */
Serial.print("Oops, no BNO055 detected ... Check your wiring or I2C ADDR!");
while (1);
}

bno.setExtCrystalUse(true);
Приведенный выше код выводит сообщение «К сожалению, BNO055 не обнаружен... Проверьте проводку или I2C ADDR!»
Как упоминалось ранее, я попробовал сканирование с использованием библиотеки Wire, замена контактов SDA SCL (как показано выше) для библиотеки Wire, но безрезультатно.
Я ожидал, что компас выдаст показания, а не будет распознан.

Подробнее здесь: https://stackoverflow.com/questions/783 ... -31-and-30

Вернуться в «C++»