Библиотека iarduino_I2C_DSL позволяет работать с Trema модулем - Датчик освещенности, люксметр, I2C-flash, получать значение освещённости в лк, коэффициент пульсаций света в % и определять близость препятствий.
Данная библиотека может использовать как аппаратную, так и программную реализацию шины I2C.
О том как выбрать тип шины I2C рассказано в статье Wiki - расширенные возможности библиотек iarduino для шины I2C.
Подробное описание работы с библиотекой, находится в разделе Wiki - Датчик освещенности, люксметр, I2C-flash (Trema-модуль).
#include <iarduino_I2C_DSL.h> // Подключаем библиотеку iarduino_I2C_DSL для работы с модулем.
iarduino_I2C_DSL ОБЪЕКТ; // Создаём объект для работы с методами библиотеки без указания адреса модуля на шине I2C.
iarduino_I2C_DSL ОБЪЕКТ( АДРЕС ); // Создаём объект для работы с методами библиотеки указывая адрес модуля на шине I2C.
Функция begin( [&ШИНА] ); // Инициализация работы с модулем.
Функция changeAddress( АДРЕС ); // Изменение адреса модуля на шине I2C.
Функция reset(); // Перезагрузка модуля.
Функция getAddress(); // Получение текущего адреса модуля на шине I2C.
Функция getVersion(); // Получение версии прошивки модуля.
Функция getLux(); // Получение освещённости в люксах.
Функция getPulsation(); // Получение коэффициента пульсаций света в %.
Функция getProximity(); // Определение близости препятствий.
Функция getLuxChanged(); // Запрос флага изменившейся освещённости.
Функция setLuxChange( ПОРОГ ); // Порог чувствительности изменения освещённости.
Функция setAveraging( УСРЕДНЕНИЕ ); // Усреднение освещённости и близости.