// библиотека для работы I²C #include // библиотека для работы с модулем GPIO Expander (I²C IO) #include // создаём объект adio класса GpioExpander по адресу 42 GpioExpander adio(42); void setup() { // включаем I²C. Для Arduino Due - Wire1.begin(); Wire.begin(); // Инициализируем объект adio. Для Arduino Due - adio.begin(&Wire1); adio.begin(); // настраиваем пин 8 на модуле GPIO Expander в режим выхода adio.pinMode(8, OUTPUT); // настраиваем пин 8 на модуле GPIO Expander в режим входа adio.pinMode(1, INPUT); } void loop() { // считываем аналоговое значение с 1 пина на модуле GPIO Expander int sensorValue = adio.analogRead(1); // преобразуем диапазон значений с потенциометра (0-4096) // в диапазон значений для ШИМ-сигнала (0-255) int brigtness = map(sensorValue, 0, 4096, 255, 0); // устанавливаем светодиоду яркость // в соответствии от положения ручки потенциометра adio.analogWrite(8, brigtness); // ждём 100 мс delay(100); }