Как подлключить OLED I2C дисплей и ШИМ контроллер PCA9685 к ардуино через софтовую I2C шину?

daniil.vaino
Offline
Зарегистрирован: 26.08.2017

Как подлключить OLED I2C дисплей и ШИМ контроллер PCA9685 к ардуино через софтовую I2C шину?

Имееться ардуино UNO, где все анаолговые входы уже заняты, в том числе А4 и А5). Хочу подключить к ней несколько I2C устройств по вирутальной шине (типо с помощью такой библиоткеки: https://playground.arduino.cc/Main/SoftwareI2CLibrary)

как то так.

К шине хочу подключить два ШИМ контроллера PCA9685 на 16 каналов:

https://ru.aliexpress.com/item/16-Channel-12-bit-PWM-Servo-Driver-I2C-interface-PCA9685-for-arduino-or-Raspberry-pi-shield/32466332558.html?spm=a2g0s.13010208.99999999.278.jwP75t


 

И дисплей 128X64 OLED I2C:

https://ru.aliexpress.com/item/1pcs-Free-Shipping-White-Blue-White-and-Blue-color-0-96-inch-128X64-OLED-Display-Module/32717950155.html

https://www.addicore.com/OLED-128x64-Monochrome-Blue-p/ad304.htm (вроде такой же, но не китайский)

Как я понял, стандартным способом (как будто они повешены на реальные SDA и SCL с библиотекой Wire) они работать не будут.

Думал, использовать мультиплексеры, чтоб освободить А5 и А4, но у меня их и так стоит 6 штук, 96 аналоговых датчиков, потенциометров и кнопок)

Подскажите в каком направлении копать. Заранее спасибо.

P.S.  С I2C сталкиваюсь в первый раз, так что если что-то не так сказал, камнями не закидывайте. 

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

1. Вместо Uno использовать Mini или Nano - у них на 2 аналоговых входа больше: переместить то, что было на А4 и А5 на А6 и А7, а А4 и А5 использовать про прямому назначению.

2. Использовать внешний АЦП (например, MCP3008), переместить на него то, что было на А4 и А5 ... далее по тексту.